From e35e582a95d108bd74a8a9478ef36b6a5d335b2e Mon Sep 17 00:00:00 2001 From: Derek Hulley Date: Mon, 10 Mar 2008 16:37:15 +0000 Subject: [PATCH] Merged V2.2 to HEAD 8205: Benchmark fixes 8212: AR-1663: OnCopyCompletePolicy is only being executed once per transaction, and not once per node being copied. 8250: Test for long strings 8251: Stopped chiba:match function from being generated into xforms constraints in XForms model bindings. see WCM-952. 8260: AVMServiceTest is mostly repeatable without doing a clean bootstrap. 8266: Andy Hind supplied replacement for query used in AVMNode GC. 8267: Fix for AR-1909 - Updated Openoffice bootstrap for installer 8270: Fix for WCM-1070 8271: Fix for WCM-1007 8284: AR-2069: WebService tickets are expired when upload and download sessions they have used are timed out 8287: Fix for WCM-499 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@8484 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- config/alfresco/action-services-context.xml | 2 +- .../alfresco/repo/avm/AVMServiceTestBase.java | 10 +++++-- .../alfresco/repo/avm/hibernate/AVM.hbm.xml | 8 ++++++ .../avm/hibernate/AVMNodeDAOHibernate.java | 2 +- .../repo/copy/CopyServicePolicies.java | 3 ++ .../repo/node/BaseNodeServiceTest.java | 28 +++++++++++++++++++ 6 files changed, 49 insertions(+), 4 deletions(-) diff --git a/config/alfresco/action-services-context.xml b/config/alfresco/action-services-context.xml index ced22775ba..2db58b8536 100644 --- a/config/alfresco/action-services-context.xml +++ b/config/alfresco/action-services-context.xml @@ -519,7 +519,7 @@ admin - 50500 + ${alfresco.rmi.services.port} 44100 diff --git a/source/java/org/alfresco/repo/avm/AVMServiceTestBase.java b/source/java/org/alfresco/repo/avm/AVMServiceTestBase.java index e5c9512296..cc2b1029d0 100644 --- a/source/java/org/alfresco/repo/avm/AVMServiceTestBase.java +++ b/source/java/org/alfresco/repo/avm/AVMServiceTestBase.java @@ -149,8 +149,14 @@ public class AVMServiceTestBase extends TestCase } ); } - fService.createStore("main"); - fLockingService.addWebProject("main"); + if (fService.getStore("main") == null) + { + fService.createStore("main"); + } + if (!fLockingService.getWebProjects().contains("main")) + { + fLockingService.addWebProject("main"); + } fStartTime = System.currentTimeMillis(); } diff --git a/source/java/org/alfresco/repo/avm/hibernate/AVM.hbm.xml b/source/java/org/alfresco/repo/avm/hibernate/AVM.hbm.xml index 3028976710..510e222072 100644 --- a/source/java/org/alfresco/repo/avm/hibernate/AVM.hbm.xml +++ b/source/java/org/alfresco/repo/avm/hibernate/AVM.hbm.xml @@ -354,6 +354,14 @@ and an.isRoot = false ]]> + + + getOrphans(int batchSize) { - Query query = getSession().getNamedQuery("FindOrphans"); + Query query = getSession().getNamedQuery("FindOrphans2"); query.setMaxResults(batchSize); return (List)query.list(); } diff --git a/source/java/org/alfresco/repo/copy/CopyServicePolicies.java b/source/java/org/alfresco/repo/copy/CopyServicePolicies.java index f5ed3ffe1b..aec3d21627 100644 --- a/source/java/org/alfresco/repo/copy/CopyServicePolicies.java +++ b/source/java/org/alfresco/repo/copy/CopyServicePolicies.java @@ -77,5 +77,8 @@ public interface CopyServicePolicies NodeRef destinationRef, boolean copyToNewNode, Map copyMap); + + static Arg ARG_0 = Arg.KEY; + static Arg ARG_1 = Arg.KEY; } } diff --git a/source/java/org/alfresco/repo/node/BaseNodeServiceTest.java b/source/java/org/alfresco/repo/node/BaseNodeServiceTest.java index f30506e07b..9dbb34fadc 100644 --- a/source/java/org/alfresco/repo/node/BaseNodeServiceTest.java +++ b/source/java/org/alfresco/repo/node/BaseNodeServiceTest.java @@ -692,6 +692,34 @@ public abstract class BaseNodeServiceTest extends BaseSpringTest assertEquals("Unexpected number of nodes present", 1, count); } + public void testLargeStrings() throws Exception + { + StringBuilder sb = new StringBuilder(2056); + for (int i = 0; i < 1024; i++) + { + sb.append("\u1234"); + } + String longString = sb.toString(); + int len = longString.length(); + + // Create a normal node + Map properties = new HashMap(5); + // fill properties + fillProperties(TYPE_QNAME_TEST_CONTENT, properties); + fillProperties(ASPECT_QNAME_TEST_TITLED, properties); + + // create node for real + NodeRef nodeRef = nodeService.createNode( + rootNodeRef, + ASSOC_TYPE_QNAME_TEST_CHILDREN, + QName.createQName("MyContent"), + TYPE_QNAME_TEST_CONTENT, + properties).getChildRef(); + + // Modify name using the long string + nodeService.setProperty(nodeRef, ContentModel.PROP_NAME, longString); + } + /** * @see #ASPECT_QNAME_TEST_TITLED */