30342: Dev branch for Site performance issues (including rework of AuthorityService.getAuthorities() to use a 'lazy' set and DM indexing rework)
ALF-9899 Huge share site migration, add group to site and user access site related performance issue.
ALF-9208 Performance issue, during load tests /share/page/user/user-sites is showing to be the most expensive.
ALF-9692 Performance: General performance of Alfresco degrades when there are 1000s of sites present
- ancestor-preloading
- hasAuthority
- huge site test
30370: - Save changed to do with adding childAuthorityCache to AuthorityDAOImpl
- Increase aspectsTransactionalCache size as it blows up
30387: Experimental solution to 'cascading reindex' performance problem
- Now only Lucene container documents for a single subtree are reprocessed on addition / removal of a secondary child association
- No need to delete and re-evaluate ALL the paths to all the nodes in the subtree - just the paths within the subtree
- Lucene deltas now store the IDs of ANCESTORs to mask out as well as documents to reindex
- Merge handles deletion of these efficiently
- Node service cycle checks changed from getPaths to recursive cycleCheck method
- Adding a group to 60,000 sites might not require all paths to all sites to be re-evaluated on every change!
30389: Missed files from last checkin
30390: Optimizations / fixes to Alan's test!
30393: Bug fix - wasn't adding new documents into the index!
30397: Fixed a problem with bulk loading trying to bulk load zero parent associations
Also tweaked reindex calls
30399: Correction - don't cascade below containers during path cascading
30400: Another optimization - no need to trigger node bulk loading during path cascading - pass false for the preload flag
30404: Further optimizations
- On creation of a secondary child association, make a decision on whether it is cheaper to cascade reindex the parent or the child, based on the number of parent associations to the child
- Assumes that if there are more than 5 parent associations, it's cheaper to cascade reindex the parent
- Add a new authority to a zone (containing 60,000 authorities) - cascade reindex the authority, not the zone
- Add a group (in 60,000 sites) to a site - cascade reindex the site, not the group
- Caching of child associations already traversed during cascade reindexing
- Site creation time much reduced!
30407: Logic fix: Use 'delete only nodes' behaviour on DM index filtering and merging, now we are managing container deletions separately
30408: Small correction related to last change.
30409: Correction to deletion reindex behaviour (no need to regenerate masked out containers)
- Site CRUD operations now all sub-second with 60,000 sites!
30410: Stop the heartbeat from trying to load and count all site groups
- Too expensive, as we might have 60,000 sites, each with 4 groups
- Now just counts the groups in the default zone (the UI visible ones)
30411: Increased lucene parameters to allow for 'path explosion'
- 9 million lucene documents in my index after creating 60,000 Share sites (most of them probably paths) resulting in sluggish index write performance
- Set lucene.indexer.mergerTargetIndexCount=8 (142 documents in smallest index)
- Increased lucene.indexer.maxDocsForInMemoryMerge, lucene.indexer.maxDocsForInMemoryIndex
30412: Test fixes
30413: Revert 'parent association batch loading' changes (as it was a bad idea and is no longer necessary!)
- Retain a few caching bug fixes however
30416: Moved UserAuthoritySet (lazy load authority set) from PermissionServiceImpl to AuthorityServiceImpl
30418: - Remove 'new' hasAuthority from authorityService so it is back to where we started.
- SiteServiceHugeTest minor changes
30421: Prevent creation of a duplicate root node on updating the root
- Use the ANCESTOR field rather than ISCONTAINER to detect a node document, as the root node is both a container and a node!
30447: Pulled new indexing behaviour into ADMLuceneIndexerImpl and restored old behaviour to AVMLuceneIndexerImpl to restore normal AVM behaviour
30448: - Cache in PermissionServiceImpl cleared if an authority container has an association added or removed
Supports the generateKey method which includes the username
Supports changes in group structures
- Moved logic to do with ROLE_GUEST from PermissionServiceImpl to AuthorityServiceImpl
30465: - Tidy up tests in SiteServiceTestHuge
30532: - Added getContainingAuthoritiesInZone to AuthorityService
- Dave Changed PeopleService.getContainerGroups to only return groups in the DEFAULT zone
- Fixed RM code to use getAuthoritiesForUser method with just the username again.
30558: Build fixes
- Fixed cycleCheck to throw a CyclicChildRelationshipException
- More tidy up of AVM / ADM indexer split
- Properly control when path generation is cascaded (not required on a full reindex or a tracker transaction)
- Support indexing of a 'fake root' parent. Ouch my head hurts!
30588: Build fixes
- StringIndexOutOfBoundsException in NodeMonitor
- Corrections to 'node only' delete behaviour
- Use the PATH field to detect non-leaf nodes (it's the only stored field with which we can recognize the root)
- Moved DOD5015Test.testVitalRecords() to the end - the only way I could work out how to get the full TestCase to run
30600: More build fixes
- Broadcast ALL node deletions to indexer (even those from cascade deletion of primary associations)
- Allows indexer to wipe out all affected documents from the delta even if some have already been flushed under different parents by an intricate DOD unit test!
- Pause FTS in DOD5015Test to prevent intermittent test failures (FTS can temporarily leave deleted documents in the index until it catches up)
- More tidy up of ADMLuceneIndexerImpl
- flushPending optimized and some unnecessary member variables removed
- correction to cascade deletion behaviour (leave behind containers of unaffected secondary references)
- unused MOVE action removed
- further legacy logic moved into AVMLuceneIndexerImpl
30620: More build fixes
- Cope with a node morphing from a 'leaf' to a container during its lifetime
- Container documents now created lazily in index as and when necessary
- Blank out 'nth sibling' field of synthesized paths
- ADMLuceneTest now passes!
- TaggingServiceImplTest also passes - more special treatment for categories
30627: Multi tenancy fixes
30629: Possible build fix - retrying transaction in ReplicationServiceIntegrationTest.tearDown()
30632: Build fix - lazy container generation after a move
30636: Build fix: authority comparisons are case sensitive, even when that authority corresponds to a user (PermissionServiceTest.testPermissionCase())
30638: Run SiteServiceTestHuge form a cmd line
set SITE_CPATH=%TOMCAT_HOME%/lib/*;%TOMCAT_HOME%/endorsed/*;%TOMCAT_HOME%/webapps/alfresco/WEB-INF/lib/*;\
%TOMCAT_HOME%/webapps/alfresco/WEB-INF/classes;%TOMCAT_HOME%/shared/classes;
java -Xmx2048m -XX:MaxPermSize=512M -classpath %SITE_CPATH% org.alfresco.repo.site.SiteServiceTestHuge ...
Usage: -Daction=usersOnly
-Dfrom=<fromSiteId> -Dto=<toSiteId>
-Dfrom=<fromSiteId> -Dto=<toSiteId> -Daction=sites -Drestart=<restartAtSiteId>
-Dfrom=<fromSiteId> -Dto=<toSiteId> -Daction=groups -Drestart=<restartAtSiteId>
30639: Minor changes to commented out command line code for SiteServiceTestHuge
30643: Round of improvements to MySites dashlet relating to huge DB testing:
- 10,000 site database, user is a member of ~2000 sites
- Improvements to site.lib.ftl and related SiteService methods
- To return MySites dashlet for the user, order of magnitude improvement from 7562ms to 618ms in the profiler (now ~350ms in the browser)
30644: Fixed performance regression - too much opening and closing of the delta reader and writer
30661: More reader opening / closing
30668: Performance improvements to Site Finder and My Sites in user profile page.
- faster to bring back lists and site memberships (used by the Site Finder)
- related further improvements to APIs used by this and My Sites on dashboard
30713: Configuration for MySites dashlet maximum list size
30725: Merged V3.4-BUG-FIX to DEV/ALAN/SITE_PERF
30708: ALF-10040: Added missing ReferenceCountingReadOnlyIndexReaderFactory wrapper to IndexInfo.getMainIndexReferenceCountingReadOnlyIndexReader() to make it consistent with IndexInfo.getMainIndexReferenceCountingReadOnlyIndexReader(String, Set<String>, boolean) and allow SingleFieldSelectors to make it through from LeafScorer to the path caches! Affects ALL Lucene queries that run OUTSIDE of a transaction.
30729: Use getAuthoritiesForUser rather than getContainingAuthorities if possible.
SiteServiceTestHuge: command line version
30733: Performance improves to user dashboard relating to User Calendar
- converted web-tier calendar dashlet to Ajax client-side rendering - faster user experience and also less load on the web-tier
- improvements to query from Andy
- maximum sites/list size to query now configurable (default 100 instead of previously 1000)
30743: Restore site CRUD performance from cold caches
- Introduced NodeService.getAllRootNodes(), returning all nodes in a store with the root aspect, backed by a transactional cache and invalidated at key points
- Means indexing doesn't have to load all parent nodes just to check for 'fake roots'
- Site CRUD performance now back to sub-second with 60,000 nodes
30747: Improvement to previous checkin - prevent cross cluster invalidation of every store root when a single store drops out of the cache
30748: User dashboard finally loading within seconds with 60,000 sites, 60 groups, 100 users (thanks mostly to Kev's UI changes)
- post-process IBatis mapped statements with MySQL dialect to apply fetchSize=Integer.MIN_VALUE to all _Limited statements
- Means we can stream first 10,000 site groups without the MySQL JDBC driver reading all 240,000 into memory
- New NodeService getChildAssocs method with a maxResults argument (makes use of the above)
- Perfected getContainingAuthoritiesInZone implementation, adding a cutoff parameter, allowing only the first 1000 site memberships to be returned quickly and caches to be warmed for ACL evaluations
- New cache of first 10,000 groups in APP.SHARE zone
- Cache sizes tuned for 60,000 site scenario
- Site service warms caches on bootstrap
- PreferencesService applies ASPECT_IGNORE_INHERITED_RULES to person node to prevent the rule service trying to crawl the group hierarchy on a preference save
- WorkflowServiceImpl.getPooledTasks only looks in APP.DEFAULT zone (thus avoiding site group noise)
30749: Fix compilation errors
30761: Minor change to SiteServiceTestHuge
30762: Derek code review: Reworked fetchSize specification for select_ChildAssocsOfParent_Limited statement for MySQL
- Now fetchSize stated explicitly in a MySQL specific config file resolved by the HierarchicalResourceLoader
- No need for any Java-based post processing
30763: Build fix: don't add a user into its own authorities (until specifically asked to)
30767: Build fix
- IBatis / MySQL needs a streaming result statement to be run in an isolation transaction (because it doesn't release PreparedStatements until the end)
30771: Backed out previous change which was fundamentally flawed
- Resolved underlying problem which was that the select_ChildAssocsOfParent_Limited SQL string needs to be unique in order to not cause confusion in the prepared statement cache
30772: Backed out previous change which was fundamentally flawed
- Resolved underlying problem which was that the select_ChildAssocsOfParent_Limited SQL string needs to be unique in order to not cause confusion in the prepared statement cache
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@30797 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
30270: ALF-9492 Can now update task properties through the Workflow JavaScript API. ALF-10087 Fixed failing Multi-tenancy tests.
30306: Fixed ALF-7384: Xam: XamArchiveCleaner can delete files before retention period has passed
- Keep the NOW upper limit to the query
- Add a double-check using Java code to precisely check (down to the ms) that the retention time has passed
30308: Merged V3.4 to V3.4-BUG-FIX
30307: ALF-10186: Fix up all code that expects it can cast a WebScriptRequest directly into a WebScriptServletRequest
30310: ALF-5830 show_audit.ftl template doesn't work any more
- Changes to support new audit api
- Works with high level content auditing
30337: Merge DEV to V3.4-BUG-FIX
30160 : ALF-9257 - Renaming web project cause no trigger of the autodeploy process
30362: ALF-10227 Add space after ''{0}'' in text
30395: Removed deep svn:mergeinfo
30433: Merged DEV/TEMPORARY to V3.4-BUG-FIX
30424: ALF-8941: WCM: Virtual server setting lazyDeployExperimentalOnly ="true" (as per si3 fix) fails to load library under WEB-INF/lib directory (for HTTP filter).
Walk up by hierarchy to the root and deploys a context if it wasn't deployed yet, through invocation of updateAllVirtualWebapps recursively.
30454: Fixed ALF-9158: Assignment of workflow task is not proper - out-of-the-box WCM workflow
30466: Merged DEV/TEMPORARY to V3.4-BUG-FIX
30460: ALF-9424 : Webform(XSD): xf:switch switch group does not work based on "complexContent with Base" element.
Schema2XForms and SchemaUtil were modified to allow correctly process elements with namespace that differ from "http://www.w3.org/2001/XMLSchema"
30476: Merged DEV to V3.4-BUG-FIX
30474: ALF-10021: Get the last node in the resultset outside the timing loop to force prefetch.
30483: Fixed ALF-9417: (pdf2swf) Share preview is blank with some pdf files.
30514: ALF-240: Unfriendly error appears when trying to view details for created discussion for multilingual content
Webdav URLs were not valid for non-ML or ML discussion items, but were only stopping the details page for the ML items from being shown. Utils.generateURL now returns null for such items.
30517: Fixed ALF-5526: Component-Generator for d:noteref and other "system" types always disabled => breaks extensibility
30519: FileFolderService moveFrom method was not supported by MLTranslationInterceptor
30527: ALF-240: added missing exception message.
30531: Fixed ALF-9599: Share forms do not allow edit of non-cm:content nodes
30541: ALF-9424: Missed change, causing compilation error
30552: Tests to accompany fix for ALF-240, ALF-10298: discussion topic webdav URLs causing error page in explorer.
30565: Fixed ALF-10336 "Drag and Drop item in Customize Site Dashboard - text of item reverts to default font style and size during drag operation"
30568: Fixed ALF-10342: ClassCastException on org.alfresco.repo.copy.AbstractCopyBehaviourCallback
30570: ALF-3332: (circa 2008) Pagination inks rewritten incorrectly by opensearch proxy
30574: ALF-9470: OwnableService cache not being updated for archived nodes - modified fix by Pavel
30579: ALF-5607: Cancelling of install. Some directories are not deleted from disk.
- Fixed provided by Bitrock for Mac and Windows
30583: Merged HEAD to V3.4-BUG-FIX (Back ported 2 fixes for included resource handling when running unit tests)
28711: Avoid a NPE on certain kinds missing included resources, and instead give a helpful error along the lines of other include issues
28716: When loading JS includes with a full classpath reference, handle the Eclipse classloader behaving slightly differently on absolute paths compared to the JVM one
30648: Fixed ALF-10401: No simple way to disable auto-versioning behaviour
- Added property: version.store.enableAutoVersioning=true
- When set to 'false', the VersionableAspect will not respond to any events;
even if the aspect is present, it will not create versions.
30657: Merged DEV/TEMPORARY to V3.4-BUG-FIX
30590: ALF-7105: pdfbox returns errors in the logs but one cannot understand what file is affected (PDFBox)
Level log4j.logger.org.apache.pdfbox.pdmodel.font.PDCIDFont=fatal was introduced in log4j.properties.
30669: Fixes: ALF-6470 (Updates FR translation)
30686: ALF-1017: Fixed compilation error in backport
30696: Fix for ALF-8176
30708: ALF-10040: Added missing ReferenceCountingReadOnlyIndexReaderFactory wrapper to IndexInfo.getMainIndexReferenceCountingReadOnlyIndexReader() to make it consistent with IndexInfo.getMainIndexReferenceCountingReadOnlyIndexReader(String, Set<String>, boolean) and allow SingleFieldSelectors to make it through from LeafScorer to the path caches! Affects ALL Lucene queries that run OUTSIDE of a transaction.
30722: Fixed ALF-9465: Share: We can add category in Share, but the selected value will not be shown in U.I.
30724: Merged BRANCHES/DEV/BELARUS/V3.4-BUG-FIX-2011_09_05 to BRANCHES/DEV/V3.4-BUG-FIX:
30603: ALF-10165: Unexpected behaviour when title duplicated between web forms
30754: Fix for ALF-9899 Huge share site migration, add group to site and user access site related performance issue.
- generic performance improvements for PATH queries ending "..../*" - specifically to improve listing calendar items for users in many share sites
30765: Fix for ALF-760 - import loses category association data
30779: Merged V3.4 to V3.4-BUG-FIX
30716: ALF-10452 It's impossible to edit existing user details
- Change for ALF-371 did not handle the simplest case - no change of home folder location
30549: Fixes ALF-9534 - Location API
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@30780 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- generic fix, supprot to request purge, index and reindex for tx, node, acl-tx and acl (partly to make broken indexes)
- expose index fix via JMX
- migrate logging in the SOLR project to slf4j to fit the SOLR logging pattern (config to come)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@29904 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
29716: ALF-4029: FileContentStore does not remove empty folders when deleting URLs
delete() now crawls back up the dir hierarchy deleting directories until a non-empty parent is found.
29767: ALF-9351 No exception with invalid permission definitions
- DTD/Schema validation added
- Corrected permissionDefinitions.xml (contained extra -->) so failed validation
29797: ALF-9916 Audit user actions for site (added st:site to list of types in filter)
29800: ALF-5499 IndexOutOfBoundsException in QuickSort
Need to synchronize access to JSF session beans. Added a filter that will use the HttpSession
(if it exists) as the monitor for a synchronized block so that only one request per session is
processed at any time. Approach taken in preference to adding synchronized blocks/methods or
locks to over 200 session beans in the Alfresco Explorer UI.
29801: ALF-9190: If a user is invited to a site but joins the site independently, they end up with the "Consumer" role, regardless of the role they were invited with
29805: ALF-4029: added utility to make some rough timings.
29819: Merged DEV/TEMPORARY to V3.4-BUG-FIX (reviewed by Erik)
29815: ALF-8414 : Remove button does not show on Flash upload in Share
Changed flash-upload.css styles to correct upload dialog display in IE6/IE7. Changes were tested in all supported browsers.
29826: Fix for ALF-9930
29836: Merged V3.4-TEAM to V3.4-BUG-FIX
27772: Incorrect behavior of enabling Google docs (Really: Forms get submitted twice in certain circumstances)
29839: ALF-9351 No exception with invalid permission definitions
- Added permissionsDefinitions.xml to RM's permissionsModelDAO spring bean def (root cause of build errors)
- Use UTF-8 encoding rather than server default when writing out modified form of model xml
- Use byte[] rather than a temp file (model files should be small)
- Added and then commented out an approach that did not require the need to write out the model xml
(works for schema but not dtd. See notes in javax.xml.validation.SchemaFactory)
- Fixed problem with RM recordsPermissionModel.xml (select -> selected)
29841: Fixed ALF-9826 "Folder is copied without content even if 'Apply rule to subfolders' check-box is checked"
- Added "deep-copy" option for Copy action
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@29863 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
29755: ALF-6742 Javascript error using the manager permissions action in the docLib on a folder that uses no inherit permissions
Dmitry change: Modify permissions.js to store permissions that are not supported in separate array during _showDialog()
method invocation. Then add them into params that are going to setPermissions() method.
Error no longer takes place and dialog appears as expected.
29756: UI coding standards for r29755
29757: ALF-9908 Improvement to log output for high level audit to make it more readable to developers
29767: ALF-9351 No exception with invalid permission definitions
- DTD/Schema validation added
- Corrected permissionDefinitions.xml (contained extra -->) so failed validation
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@29802 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- mostly working with bugs raised or the issues found
- ALF-9627 RSOLR 049: Support for TAG list - simple field facettting
- was not required. Facetting alpha is there (limits not set and need to go into JSON) - added to result set
- ALF-9628 RSOLR 049: HTTPClient pooling and sharing by query
- pooled for query, one reused instance for each tracker (could be shared)
- ALF-9629 RSOLR 049: Support for PARENT field and start of PATH rebuilding other index tracking (group and site search)
- done - also started PATH change and returns other data as not yet finished (QNAME is the most obvious)
- fixed up and tidied query generation for index tokenisation mode form the model and what the query would like
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@29585 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
29414: Fix for ALF-7437: CMIS query doesn't return any result when documents are created with a different lang
and fixes duplicate ALF-8598 : Web QS - Dynamic asset collection failing for non en_US locale
29445: ALF-9023: Cannot search/retrieve special characters of "???".
- avoid requirement to escape unicode characters from classification "number, other" and others e.g. name:??? will generate a query (even ff it does not work due to tokenisation)
29470: ALF-9632 "CMIS query fails if model name contains numbers" fix
- Ensure CMIS query types are ISO9075 encoded
29474: ALF-9668 / ALF-6434: Fix LDAP sync regression
- On an incremental sync when there were no group->group association changes, new groups were getting ignored!
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@29475 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
29333: (RECORD ONLY) Merged HEAD to BRANCHES/DEV/V3.4-BUG-FIX:
29311: Fixed tomcat shutdown problem (ALF-9574)
29337: Merged DEV to V3.4-BUG-FIX
29336: ALF-8554 : matchesEncodedPattern in ISO9075 class fails with some values
Corrected matchesEncodedPattern method and unit test added to demonstrate the problem has gone.
29340: Merged DEV to HEAD
29330: ALF-3681 : Webdav lock issue returned on 3.3g and 4.0a
LockMethod corrected: expiryDate (as lockOwner) should be cached in fileInfo's properties for correct response generation.
29361: Fix for CIFS desktop actions are copied by copying a folder: ALF-8640.
Pseudo file creates are converted to a file open, they are not writeable, writes are dumped.
29380: ALF-6434: Better detection / prevention of cyclic group relationships in LDAP sync
29387: Incremented version.revision for 3.4.5
29388: Merged V3.4 to V3.4-BUG-FIX
29307: Merged V3.4-BUG-FIX to V3.4 (3.4.4) (RECORD ONLY)
29314: ALF-9612: Temporary placeholders for missing installer translations
29385: ALF-9612: New installer translations from Gloria
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@29389 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
29057: ALF-9491: Bitrock 7.2.2
29063: ALF-8766 Concatenated strings in EN webclient file
29066: Merge DEV/DEV/BELARUS/V3.4-BUG-FIX-2011_07_13 to DEV/V3.4-BUG-FIX
29010: ALF-7396: Japanese- Untranslated
29072: HomeFolderProvider work - Changes as a result of Dave Ward's comments
(HomeFolderManager not fully done as there is a spring issue with using NodeService, FileFolderService, fileFolderService, SearchService or searchService)
29074: ALF-7637 - Share displays incorrect folder contents after copy-on-outbound rule against working copy
29075: ALF-8406 - Configuring the datalist display for sub-types does not work
29082: ALF-6847 translation: "Collega" should be reverted to English: "Link" as per term list.
29087: ALF-5717 property names for wcm quickstart website-model had an invalid format or did not end in .description or .title
29093: Merge V3.3 to DEV/V3.4-BUG-FIX (28596)
28596: Remove dependency between subsystems and all the object factories in the parent context!
- Do not allow eager initialization when looking up parent post processors
- Removes circular dependencies from sysAdmin subsystem
29094: Merge HEAD to DEV/V3.4-BUG-FIX ()
28892: Broke circular references between NodeService beans, NodeIndexer, Lucene and back to NodeService.
- NodeIndexer is now bootstrapped to pull out reference to the Lucene beans
29100: Revert Merge V3.3 to DEV/V3.4-BUG-FIX (28596) Caused RepositoryStartupTest to fail
28596: Remove dependency between subsystems and all the object factories in the parent context!
- Do not allow eager initialization when looking up parent post processors
- Removes circular dependencies from sysAdmin subsystem
29102: ALF-9048: Make apply_amps.bat work from its installed location
29103: ALF-8746: Restored Japanese choice format translations
29104: Merged V3.3 to V3.4-BUG-FIX (Reinstated this revision as it is required)
28596: Remove dependency between subsystems and all the object factories in the parent context!
- Do not allow eager initialization when looking up parent post processors
- Removes circular dependencies from sysAdmin subsystem
29105: Use org.springframework.aop.target.LazyInitTargetSource in the NodeService public proxy to break a circular dependency
29106: Make PersonService interact with HomeFolderManager via a lazy proxy to prevent another circular dependency
- Simple HomeFolderManager interface created
- Implementation class renamed to PortableHomeFolderManager
- Removed TODOs from authentication-services-context.xml
29107: Forgot to remove the serviceRegistry dependency from homeFolderManager
29108: ALF-9529: Installer memory consumption and startup time improvements
- Bitrock discover the for loop!
29109: ALF-9530: Postgres installed as Windows service should run as a postgres user, not System
- Fix from Bitrock
29118: Fix for ALF-6737 - It's impossible to view any version of the wiki page if it was renamed with native characters
29119: Fix for ALF-5787 - strings extracted for L10N in Web form creation help text
29124: ALF-9530: Follow up fix from Bitrock
29126: Fix for ALF-8344 - Incorrect message is displayed while recover deleted file
29127: Fix for ALF-9445 - French - Share, translation on Transfer Target configuration
29129: ALF-9476: Make FTPS work on IBM JDK
29133: Fix failing DictionaryRestApiTest
29136: Fix build issues from 29104:
- run as system when creating home folders (PortableHomeFolderManager)
- re-factored onCreateNode out of PortableHomeFolderManager into PersonServiceImpl
- re-factored property PortableHomeFolderManager.enableHomeFolderCreationAsPeopleAreCreated to PersonServiceImpl.homeFolderCreationEager
29137: Fix for ALF-8831 - Internal error occurs in My Tasks Webscripts component
29138: Fix for ALF-8765 - Layout is displaced if translated string occupies more than 1 line
29140: Fix for ALF-8668 - Deleting author account causes Failed to load the forum posts
29142: - PortableHomeFolderManager: Moved code to run as System into PersonServiceImpl so that one must have a valid authority to call the publick makeHomeFolder method. The authority should already be valid if called via PersonServiceImpl.
- Removed unused policyBehaviourFilter property from PersonServiceImpl
29146: ALF-8701: partially translated string in html-upload.get_fr
29147: ALF-8727: DE - changes to Root Category
29149: ALF-8731: DE - Wiki changes (space before full stop)
29152: ALF-9503: Add space after colon in strings in file wdr-messages.properties
29153: Fixed ALF-7899: association.ftl does not render when showTargetLink=true in workflow
29165: ALF-8749: on submit action properties in wcn-workflow-messages.properties
29166: Fix for ALF-6220 - Language pack - .ftl localization
29167: ALF-9550 - Typos in new section of webclient.properties
29169: Fix for ALF-7844 - W3C: Impossible to activate 'Choose from popular tags in this site' link by Enter/Space keys
29170: Merge V3.4-TEAM to V3.4-BUG-FIX (3.4.4)
27471: Fix for ALF-8150 - check for visibility before applying focus to element for IE.
29171: Fixes: ALF-8922, removes date formatting from API (now returns ISO8601) and instead formats it on the client, using L10N strings.
29172: Fix for ALF-2023 - Repository Action - Copy item to specific space doesn not include content. The option to 'deep copy' is now exposed in the UI for Run Action and Rules in Explorer.
29173: Fix for ALF-1446 - Sorting of inline descendants is not observed
29175: ALF-241 - The item is not coppied via 'Paste All' in Shelf when 'Details' page is opened
29177: Fix for ALF-9520 - confusing sample config. Reordered sample config file as suggested.
29178: Fixed ALF-6400: GERMAN: Explorer mouse over hints for TinyMCE are not localized
Fixed ALF-5766: ALL translations errors in Explorer - Calendars are not localizable for content based on webforms
29202: Merge DEV/BELARUS/V3.4-BUG-FIX-2011_04_12 to V3.4-BUG-FIX (3.4.4)
27836: ALF-8524: CLONE - Sharepoint doesn't work with HTTPS
Changes in url links required for HTTPS support.
29203: Restored removal of postgresCreateSymLinksLinuxBuildingFromWindows tag (32 bit Linux) from revision 26582
29211: Fix for ALF-1051 - It is impossible to find link by tag from link details page
29212: Fix for ALF-5301 - TinyMCE is replacing carriage return with white spaces
29250: Latest L10N update for all languages (DE, ES, FR, IT, JA) from Gloria (based on r29172)
29253: L10N Update from Gloria
29270: Fixed ALF-516: Unable to add content/delete tables in webform content when using FireFox
29271: Update from Gloria
29272: Merged BRANCHES/DEV/BELARUS/V3.4-BUG-FIX-2011_07_13 to BRANCHES/DEV/V3.4-BUG-FIX: (with minor modification)
29223: ALF-7619: When document A has an association with a document B editing A's properties fails if user has no permission to edit B
29274: ALF-9517 Incorrect behaviour of versions on Copy action. Version is 0.1 rather than 1.0
29283: Resolve ALF-8273: Valid datetime value cannot be parsed by CMIS AtomPub interface
29284: Update from Gloria
29286: ALF-9596: Merged PATCHES/V3.4.1 to V3.4-BUG-FIX
28150: ALF-8607: Detailed debug logging when out of sync transaction detected by index checker / tracker
28177: ALF-8607: Corrections to debug logging in AbstractReindexComponent
28213: ALF-8607: Further corrections to debug logging in AbstractReindexComponent
- Log attributes from indexes, rather than nodeService properties
28341: ALF-8607: Stop index checker from 'lying'
- isTxnPresentInIndex() call must be made in a new transaction in order to get a database view in sync with the current indexes
28352: ALF-8607: Revisit transaction delineation. Nested transaction only required in checkTxnsImpl()
28403: ALF-8607: Merged PATCHES/V3.3.4 to PATCHES/V3.4.1
27823: ALF-7237: Index tracker needs to perform a cascade reindex on updated nodes in order to cope with node moves
28406: ALF-8607: Improvement to FTS fix. Prevent FTS from restoring documents that have been deleted!
28412: ALF-8607: Invalidate properties and aspects as well as parent assocs when stale cache entry dected during transaction tracking
28427: ALF-8607: Prevent NPE with bad NodeRef in ADMLuceneIndexerImpl.createDocumentsImpl()
28705: ALF-8607: Validate transaction IDs when fetching parent associations
- Compare the cached child node transaction ID against one fetched from the DB
- Stops us from pairing up the cached node for an older or newer transaction with the wrong parent associations
28707: ALF-8607: Merged PATCHES/V3.3.4 to PATCHES/V3.4.1
28588: ALF-7237: Prevent FTS from ever wiping out a document that still exists and ignore duplicates
28708: ALF-8607: Make FTS capable of recovering from cache concurrency issues by using a RetryingTransactionHelper and better exception handling.
- Also avoids skipping the entire batch when the reindexing of a particular document fails.
28710: ALF-8607: Corrected transaction delineation
28753: ALF-8607: Prevent errors caused by AbstractReindexComponent diagnostics trying to parse FTSREF document IDs as NodeRefs (which they aren't!)
28755: ALF-8607: When 'failing over' during FTS indexing, don't bother adding a FTS status document so we don't get stuck in a loop with a problematic document
28815: ALF-8607: Do two way validation of cached / fetched nodes and their parent associations to avoid skew
- Should resolve problem of tracking moves to the archive store and moves in general
28862: ALF-8607: Lucene indexers now support 'read through' behaviour for FTS and Index tracking batches
- Small discrete read only transactions used to read each reindexed node from the database / cache
- Avoids cache 'drift' and 'skew' after long running indexing transactions
28863: ALF-8607: Missing file
28869: ALF-8607: isTxnPresentInIndex() needs to 'read through' so index tracker and checker don't pollute the cache
28872: ALF-8607: Optimization to prevent constant writing to AVM indexes whilst 'ticking over'.
28950: ALF-8607: Improved logic in AbstractReindexComponent.isTxnPresentInIndex() so that we can reliably cope with multi-store transactions (e.g. archive store + spaces store)
- Due to FTS, the txn ID may have 'drifted in' to one store but not the other so we must validate all stores in the txn
29098: ALF-8607: Use getNodeRefStatus as a cache validation point for reindexing 'read through' transactions
- Guarantees that FTS reindexed node will see correct state (well if we had consistent read behaviour it would!)
- Removes stale nodeRef -> ID mappings (e.g. when original node moved to archive store and substituted with deleted node)
- Inexplicably seems to produce a ~30x speedup in performance tests on MySQL! Appears to remove a contention point. More investigation required to find out what!
29287: ALF-9598: Merged PATCHES/V3.4.1 to V3.4-BUG-FIX
28653: ALF-9189: More efficient usage of IndexReaders to avoid huge memory churn with large indexes
- A single reading thread could block out all other reading threads because a write lock is obtained whilst constructing a set of FilterIndexReaderByStringId readers and all deletions across all indexes have to be evaluated. We now cache a FilterIndexReaderByStringId for each 'layer' of the index so that we get some reuse. We also defer evaluation of deletions to AFTER the write lock is returned and in some cases never have to evaluate the deletions at all.
- When merging deletions we now make use of a cached index reader for locating the documents, and only resort to a new reader if deletions have to be performed. Hopefully this will mean that the reader for the largest indexes, containing the least recently used stuff, will get left alone most of the time.
28690: ALF-9189: Corrections to previous fix
- Forgot to remove non-lazy reader initialization
- Fixed NPE
- Reinstated correct looping behaviour - each processed delta must be considered as one of the indexes to search for the next processed delta
29099: ALF-9189: Avoid having to allocate a byte array full of number ones for all occurrences of a term to 'fake' norms.
- Severe Lucene memory hog during FTS
29262: ALF-9189: Fixed memory leak during index tracking / reindexing and further memory leak regression
- Fixed up Lucene refcounting again - remember to propagate through decrefs on ReferenceCounting readers
- Refined ALF-9189 fix to guarantee mainreader clean up
- Remember to flush the delta during reindexing / tracking
- Some extra trace diagnostics to help
29288: ALF-9600: Merged PATCHES/V3.4.1 to V3.4-BUG_FIX
28876: ALF-9041: Merged HEAD to PATCHES/V3.4.1
28850: Latest SpringSurf libs
- Fix to SSO connector passing empty username
29289: ALF-8241: assemble-tomcat populates endorsed directory with xalan.jar and serializer.jar and Bitrock installer installs these too
29291: Merged DEV/SWIFT to V3.4-BUG-FIX (3.4.4) - already merged to HEAD as part of a larger merge
26104: RM: Remove incomplete and unnecessary unit test
29302: Fix for ALF-8885 - Unable to paste item due to system error:null
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@29325 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- ALF-8806 RINF 41: Lucene Removal: Fix CopyService
- ALF-9028: RINF 41: Fix Aspect cm:copiedFrom
- ALF-9029 RINF 49: Lucene Removal: CheckOutCheckInService API
- ALF-9032: RINF 49: fixes to cm:workingcopy aspect
28996: Dev branch for De-Lucene work pending patches
29004: Evaluator runs in read-only txn
29006: Additional PermissionCheckedCollection.create method
- Use an existing collection's permission check data (cut-off, etc) to wrap a new collection
29007:
CopyService and CheckOutCheckInService refactors to remove Lucene
CopyService:
Removed cm:source property from cm:copiedfrom aspect and replaced with a cm:original association.
Added CQ-based APIs to query for copies
Added APIs to support bi-directional walking of copy association
Fixed sundry uses of cm:copiedfrom esp. all uses related to cm:workingcopy
CheckOutCheckInService:
Check-out now creates a source aspect cm:checkedOut with 1:1 relationship to cm:workingcopy via cm:workingcopylink
Removed explicit use of cm:workingcopy aspect and replaced it with calls to COCI API
29083: Audit tests fail when indexing is turned off.
Also removed a getReader() call during rule evaluation, leading to a 'sub-action' read being recorded.
29113: NodeDAO.getNodesWithAspects supports paging
29135: Removed unused patch queries
29139: Basic patch (still terminates with error) to upgrade cm:copiedfrom and cm:workingcopy
29157: Tested patch for cm:copiedfrom and cm:workingcopy aspects
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@29159 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
28993: HomeFolderProviderSynchronizer: Provider used for LDAP to continue to use username as home folder name directly under .../app:company_home/app:user_homes
Property spaces.user_homes.regex.pattern now set to "" rather than "^(..)" which would have given a single level hash structure.
28970: Merge DEV/ALAN/HOME_FOLDER to DEV/V3.4-BUG-FIX
28947: - Introduction of version 2 HomeFolderProvider2 and re-factor of version 1
so that the code used to create the folders is now in the HomeFolderManager.
- Re-factor homeFolderProviderSynchronizer to handle HomeFolderProvider2.
- Addition of AbstractHomeFolderProvider.V2Adaptor to allow external providers
that extend AbstractHomeFolderPathProvider to be handled by
homeFolderProviderSynchronizer.
28860: Minor change to class comment and removed unused imports
28858: ALF-4727 Hashed home folder provider added and used by default for LDAP sync users - based on Romain Guinot work.
ALF-7797 HomeFolderProviderSynchronizer added to move existing users (normally those added by LDAP sync) into location preferred by home folder provider.
- HomeFolderProviderSynchronizer bug fixes
- tenant accounts supported for first time
- addition of a phase to create parent folders before moving home folder to avoid a race condition
- check for conditions that would result in FileExistExceptions as we don't want a the transaction to be discarded as this results in retries.
- HomeFolderProviderSynchronizerTest integration test including tenant services
- HomeFolderManager now sets the HOME_FOLDER_PROVIDER if it uses a default when HOME_FOLDER_PROVIDER is not set.
- AbstractHomeFolderProvider clears cache when path reset as it will be invalid.
- UIDBasedHomeFolderProvider.createNewParent creates its own mutable List as the one passed in may not be mutable.
28580: Save code changes - added comments to do with LDAP syn overriding the HFP value and related to this added a global property to keep empty parent folders.
28347: HomeFolderProviderSynchronizer
- issue to do with new run of sync having created a user via UI that has a home folder as one of the parent folders.
- issue to do with catching exception when creating temporary folder - transaction is gone
- give up if error in any phase
28298: Addition of HomeFolderPathProvider (based on Romain's work) and addition of HomeFolderProviderSynchronizer.
28956: Merged DEV to V3.4-BUG-FIX
ALF-9428: Multitenancy users not preserved after upgrade from 3.2.2.7 to 3.4.2
- Provide correct RunAs context in FixUserQNamesPatch batching.
28941: ALF-9361 : CLONE -sync Flat IMAP client with Alfresco is slow and inaccurate
28916: ALF-9421 The AlfrescoJavaScript action now includes company home in the JavaScript scope.
28879: Fixed ALF-9296: Alfresco Dashboard: Impossible to approve/reject task from My Tasks dashlet on My Alfresco
28875: Fixed ALF-6329: SPANISH - Share, translation on Transfer Target configuration
28864: Message:
ALF-9430: RuntimeExec waitForCompletion logic is obscure
- Only a single flag 'isCompleted'
- Set flag in try-finally
- Added notify()
However, the wait() code doesn't, in practice, get called because the waitForCompletion is synchronized with the run()
and is called a while after the reading thread is triggered. So the logic is less obscure and safer for the finally.
28800: File for rev 28799: ALF-9240
28799: Merged DEV to V3.4-BUG-FIX
28797: ALF-9240: Issue with adding an aspect with large multivalued list
Added unit test to stress, but could not reproduce
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@28995 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
ScriptGroup i.e. the "groups" root object now has a getGroups method that behaves similarly to People.getPeople wherein depending on the filter provided determines whether consistent results are returned. Any filter that can be done with a canned query i.e. startsWith queries or "*" will go to the the AuthorityService.getAuthorities method otherwise the lucene based AuthorityService.findAuthorities is used.
The UI also no longer sends a leading *, it it still supported but the user must add it themselves.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@28983 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
SiteService.listSites calls have been partially reimplemented to use GetChildrenCannedQueries.
For queries that search with a filter on sitePreset name, the searches are now CannedQueries.
This is because those queries were formerly using string equality comparisons to filter results, which GCCQ supports.
For queries that search with a filter on site cm:name, it is less simple. Searches such as "foo" are converted to (cm:name, "*foo*") comparisons in Lucene. Such 'contains' comparisons are not supported by GCCQ. These searches still use Lucene pending agreement on which approach to take to reimplementation here. Consistency with user & group searches is required.
This check-in injects the necessary getChildrenCannedQuery beans into the SiteService.
It adds a new method listSites() which returns PagingResults<SiteInfo>. This is used where possible within the old listSites() lucene-based method and is exposed in the public Service for use by third parties.
Also added MethodSecurityInterceptor-based SiteService_security bean to the public-services-security-context.xml
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@28791 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- The public service interceptors prevent unauthenticated access,
while the internal services ('little' services) should not apply any permission checks
- Added explicit Authority-related test to check
- ALF-9033, ALF-9129 (RINF 50), ALF-9322, ALF-7167 (RINF 11)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@28737 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- ALF-9322: RINF 11: AbstractCannedQueryPermissions enhancements
- Pulled in logic around hasMore() so that subclasses just have to obey
- Added in cut-off size estimates
- ALF-9337: RINF 11: Consolidate interceptor wrappers
- Permissions respect PermissionCheckedValue
- Added last-in-chain "afterAclMarking" to "afterInvocationManager": marks collections as checked
- Added 'mixin' interfaces to handle input and output for permission checking of collections
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@28734 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
28650: Merged DEV/TEMPORARY to V3.4-BUG-FIX
28637: ALF-5601: WCM Reviewer should be able to modify 'Launch Date' of the review item.
Set "wcmwf:launchDate" to read-only on "submitpendingTask".
28697: Fix for ALF-2711 - Fix to handle incorrect (negative size!) content length headers sent by Adobe Flash when uploading files over 2GB.
28702: Merged DEV to V3.4-BUG-FIX
28693: ALF-9314: Unable to add to multi-valued properties via AVM Console
The node property value of Collection type must be set within square braces
as a comma separated values without spaces. E.g. [aaa,bbb,ccc]
28718: Merged PATCHES/V3.4.2 to V3.4-BUG-FIX
28569: ALF-9253 / ALF-9166: 'A valid SecureContext was not provided in the RequestContext' exception on startup following upgrade to 3.4.1
28618: ALF-8385 / ALF-9364: Merged DEV/TEMPORARY to PATCHES/V3.4.2
28565: ALF-5887 Addition of RenameUser command line toolContext
- PersonServiceImpl should not disable normal behaviour when handling duplicate Person NodeRefs as the userAuthorityCache does not get updated correctly
- Tool (base class for Import, Export and RenameUser command line tools) should not automatically login if setLogin(false) has been called.
28719: Merged V3.4 to V3.4-BUG-FIX
28648: ALF-9103: Remove obsolete (and mis-spelled) use-old-dm-alcs-context.xml.sample
28701: Corrected library for - Fix for ALF-7860 - Regression: Close button doesn't work in Node Browser
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@28721 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- does not in fact test the SimpleAuthorityService and effectively a subset of AuthorityServiceTest
- fixed by removing it !! ... likely not used since r2746 (sic) when groups were merged in as a non-ent only feature (Alf 1.2'ish ?)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@28691 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
28466: Fix for ALF-6541. maintainAspectRatio does not default to true as documented.
Fixed the javadoc to reflect reality.
Merged BRANCHES/DEV/SWIFT to HEAD:
28482 Implementation of ALF-8969 Lucene removal: Blog webscripts.
** Checking this in on Swift branch, as I have the work there. Will merge to HEAD.
The blog webscript controllers have been ported from JavaScript to Java.
A new foundation service, the BlogService has been added and the impls of the webscript controllers delegate into that service, thus encapsulating business logic within the service.
The API for this service is based on the requirements of the existing webscripts, but is for the most part a 'sensible' API. One controller (blogposts.get.js) had very domain-specific requirements (get all of my drafts and all published posts) and it is implemented as a deprecated public method on the service.
The API is not complete, but represents a good starting point for any future feature development.
The various Lucene queries have been replaced with calls to the nodeservice (as an impl detail within the BlogService) which get all blog post nodes and then post-filter them based on property values, aspect/property presence etc. This will be refactored into a CannedQuery in a subsequent check-in.
I've written new test cases aimed at this API & have extended the REST API tests.
Merged BRANCHES/DEV/SWIFT to HEAD:
r28483 Prevent NPEs in some circumstances. Related to ALF-8969.
Merged BRANCHES/DEV/SWIFT to HEAD:
r28484 Fixing activity reports for Blog posting. Following on from previous chagnes related to ALF-8969.
Merged BRANCHES/DEV/SWIFT to HEAD:
r28597 ALF-8969. Introduction of brute force Canned Queries for BlogService query methods.
This will be merged to HEAD after a chat with Jan/Derek.
Introduced 'brute force' Canned Queries for the various BlogService query methods.
These use the underlying nodeService to retrieve result sets.
They must use the small-n nodeService in order to get full result sets.
Therefore I have had to add some AFTER_ACL_ENTRY checks to the BlogService_security bean for the query methods.
Added various CannedQuery classes for the BlogService queries. They currently split into two:
1. a GetBlogPostsCannedQuery which goes some way towards providing configurable query support, albeit driven by the needs of the Blog Service REST API.
2. a DraftsAndPublishedBlogPostsCannedQuery, which is a very specific CQ aimed at a very specific scenario in the REST API.
Changed the BlogService API to return a BlogPostInfo (simple POJO) rather than the less extensible NodeRef.
This affected the webscript implementations.
Added BlogPostInfo as an acceptable return type for security-based filtering in ACLEntryAfterInvocationProvider.
Merged BRANCHES/DEV/SWIFT to HEAD:
r28598 Repackaged the CannedQuery-related classes to a dedicated subpackage. ALF-8969.
Merged BRANCHES/DEV/SWIFT to HEAD:
r28602 Replacement of some JS controllers with Java-based ports. Part of ALF-8969.
Merged BRANCHES/DEV/SWIFT to HEAD:
r28603 Disabling two test cases pending a refactoring. Related to ALF-8969.
Merged BRANCHES/DEV/SWIFT to HEAD:
r28604 Fixing a compilation error.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@28606 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- Clean up javadocs (remove uncommented parameters and fix method comments)
- ALF-8996: Administrator users can disable themselves
- Administrator users cannot be disabled (the repo ignores the request)
- Administrator users cannot expire, be locked; they remain active no matter what
- UI attempts to disable admin but the request just does nothing (UI could gray it out, I suppose)
- (ALF-8805) ALF-9056: RINF 40: Fix XPath query to use selectNodes
- Final (Team-introduced) Lucene query in PersonServiceImpl
- Cleanup and better tests
- Unit test template retrieval for user notification (not easy via UI)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@28528 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- Properties have to be encrypted and decrypted in code using MetadataEncryptor ('metadataEncryptor')
- No conversion, encryption or decryption is done by Alfresco
- Unencrypted values cannot be persisted and get thrown out
- ALF-8646: RINF 38: Text data encryption
- ALF-8956: RINF 38: Encryption key password specified by installer
- ALF-9055: RINF 38: Support encryption against existing data
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@28480 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- This will allow a keystore to be checked in (.keystore) and specified by installer
- Algorithm parameters embedded in SealedObject but also supported by other Cipher methods
ALF-8646: RINF 38: Text data encryption
ALF-8956: RINF 38: Encryption key password specified by installer
ALF-9055: RINF 38: Support encryption against existing data
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@28438 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
28029: Added more tests for PublishingEventHelper and PublishingQueueImpl. Also added WebPublishingTestSuite.
28034: Support for ALF-8792: RSOLR 036: SOLR APIs to support index integrity checking
- ACL and ACLTX support
28036: WCM QS ML UI tweaks for marking something as the initial translation
28038: ALF-8548: WPUB: F165: Foundation API: Cancel a scheduled publishing event
- Code and initial test cases
28051: Fix for ALF-8836: No permission checks for SolrJSONResultSet
28057: WCM QS ML support for claiming intermediate non-translated folders when translating documents, with tests
28058: ML-WQS: Slight refactoring to remove RootNavInterceptor.
This functionality has been brought into the ApplicationDataInterceptor.
The effective root section is now made available to templates and components in the model.
28059: ALF-8499. SVC 10: Action Forms.
This checkin adds an ActionFormProcessor which supports the generation and persistence of Forms based on
Alfresco spring-injected action beans. The form processor produces a form field for each defined action parameter
as well as the ubiquitous executeAsynchronously boolean for action execution.
There is no styling of configuration of these forms and therefore NodeRef parameters will allow selection of any
cm:cmobject nodes and action constraints like ac-aspects will return every aspect defined in the system.
To expose these forms in the product, we would need to add form configuration for the built-in actions in order to manage and control such data.
28064: Fix for ALF-8857: Fix SOLR query caching to respect locale for ordering
28067: ALF-8846 : Intermittent: DMDeploymentTargetTest
added more debug logging and throw an explicit exception on trying to create a duplicate directory.
28068: Publishing: Tidy-up (javadoc and removal of a few unnecessary operations) prior to sprint 1 demo.
28069: Implemented EnvironmentImpl.checkStatus() method. Also created an AbstractWebPublishingIntegrationTest
and extended many of the web publishing tests from htis class.
28076: Publishing: More javadoc
28078: RINF 11: Canned queries
- minor: rename CannedQuery "query" to "queryAndFilter" and update/fix related JavaDoc (ALF-8827)
- update PagingRequest - precursor to merge with (Script) PagingDetails (ALF-8855)
28079: RINF 40: Lucene Removal: PersonService API (ALF-8805) - W.I.P.
- add GetChildren CQ support for (initially string) property filtering, including unit tests
- update GetChildren CQ to allow up to three filter and/or sort props
- add GetChildren CQ unit test for existing DB-based filtering of child types
- fix GetChildren CQ sorting, for spoofed referenceable props (including missing name)
28083: Fix for ALF-8858: Fix cache bugs (TX and ACLTX docs not tracked)
28097: Fix hard-coded checks for aspect counts following sys:localized changes
28126: Build/test fix (GetChildrenCannedQueryTest.testPropertyStringFiltering)
28147: RINF 40: Lucene Removal: PersonService API
- initial impl w/ unit tests
- note: separate task required to update JavaScript API (People.getPeople)
28157: RINF 40: Lucene Removal: PersonService API (ALF-8805)
- fix People.getPeople - put back FTS option (pending ALF-8924)
28162: Added PublishWebContentJbpmTest to test the Jbpm publish web content process definiion.
28178: Build fix. Removing a trailing comma that my ant build objects to.
28180: Preventing a NPE within TikaCharsetFinder. Was observed as part of tests for ALF-3757.
28182: RSOLR 037: Integrate CMIS Dictionary into SOLR engine
28183: ALF-8846 - fix DMDeploymentTarget(Test)
- make system auth explicit
- minor: fixup debug logging
28187: Fix for ALF-7308. The imgpreview thumbnail ... scale up small images...
I've exposed an ImageMagick configuration option ('>') as a new ImageRenderingEngine parameter, "allowEnlargement".
It's not mandatory, defaults to true, and is set to false for doclib and imgpreview thumbnails.
The net result is that doclib and imgpreview thumbnails of small graphics files (e.g. icons) will never have sizes exceeding their original size.
28191: RINF 09: Update FileFolderService (ALF-7168)
- minor: clean-up debug/trace logging
28192: Fix MT for GetChildren CQ
- FileFolderService -> list (ALF-7168)
- PersonService -> getPeople (ALF-8805)
28194: RINF 09: CMIS getChildren sorting fixes (part of ALF-7168)
- fix sorting by cmis:contentStreamMimeType and/or cmis:contentStreamLength
- add warning + debug (if some orderBy sort props need to be ignored - eg. too many or unknown)
- reviewed w/ Florian
28195: ALF-8910: RSOLR 037: Integrate CMIS Query Parser into SOLR engine
28211: Changes for ALF-8646: "RINF 38: Text data encryption"
28227: Changes for ALF-8646: "RINF 38: Text data encryption"
o fix build issue relating to missing property definition
28232: ALF-8928 - Performance degradation when loading documents from RepoStore
28233: Attempt to resolve OOM hangs in SWIFT builds
- Set mem.size.max=2048m
28234: Implementation of ALF-8986. Add support for transformation of Apple iWorks files.
A new transformer transforms (pages, numbers, keynote) iWorks 09 files to image or SWF for doclib & webpreview thumbnailing.
This transformer extracts an embedded JPEG or PDF file from a well-known location within the iWorks zip structure & uses that
to create Alfresco thumbnails. If these zip entries are not present for whatever reason, then the transformation fails in the usual way.
All of our iWorks 09 test files have an embedded JPEG and more than half have embedded PDFs.
28243: Init/refresh repo webscripts in single txn
- found whilst investigating ALF-8928
28268: Started implementing PublishEventAction. Also updated mapping of nodes from source to live environment to use associations.
28308: PublishEventAction now supports updating of nodes that have already been published.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@28321 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261