- so far unable to repeat either NPE (on Oracle or PostgreSQL)
- for Oracle - improve exception reporting (so next time we should get the correct line number) - note: requires more work to repeat/fix
- for PostgreSQL - guard against null (and avoid unboxing NPE)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@32755 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
32598: ALF-11522 IMAP: Generic AlfrescoImapFolderException error is a bit misleading
Text was duplicated - previously modified text was not being used
32690: Merged V3.4-BUG-FIX to V3.4
32689: ALF-11603: Use different UIDVALIDITY values for different mounts of the same folder in IMAP to force client to fetch in both locations
32691: Merged PATCHES/V3.4.6 to V3.4
32397: ALF-9878 / ALF-11727 CLONE - Pending Invite Search doesn't return anything if there's more than 1000 pending invites across all sites.
Return first 200 invitations (similar to 4.0 paging)
Transaction used by the invites.get is now read only so does not force a flush of caches.
32404: ALF-9878 / ALF-11727 CLONE - Pending Invite Search doesn't return anything if there's more than 1000 pending invites across all sites.
Removed read only transaction from invites.get.desc.xml as it broke InviteServiceTest testRejectInvite
32501: ALF-9878 / ALF-11727: Reinstated read-only transaction around invites.get and prevented it from trying to lazily create persons from rejected invites that had previously been deleted by InviteHelper.cleanUpStaleInviteeResources!
32617: ALF-11977 / ALF-11879: IMAP performance
- Fix node batch loading - batch load ContentData to avoid N+1 problem with content properties
- During cache preloading, use distinct transactions for each folder search, thus avoiding blowing the transactional caches
32619: ALF-11977 / ALF-11879: Fixed typo
32652: ALF-11977 / ALF-11879: Deactivate auto-versioning and auditing (and run as system) whilst setting magic IMAP aspect properties
32683: ALF-11978 / ALF-11915: iBatis synchronizes on the ClassInfo class during high concurrency
Similar change made to ibatis ClassInfo.java as was made to mybatis (in 4.0) for ALF-11894
src.diff is diff from new SVN location at http://mybatis.googlecode.com/svn/tags/java_release_2.3.4-726/ibatis-2-core hence the revision number changes
modified the pom to use Java 1.5 (1.6 does not work due to changes in abstract sql packages) and removed a plugin that no longer works
32721: ALF-11913 Search in Explorer does not find documents found by Share
Correct bug introduced by ALF-11435 'support for hidden files'
32735: ALF-12021: Merged PATCHES/V3.4.5 to V3.4
32513: ALF-11720: Merged HEAD to PATCHES/V3.4.5
32330: Merged DEV to HEAD
32207: Fix ALF-11644: AVM cleanup jobs run when WCM is not installed
- Moved scheduled jobs to installable wcm-bootstrap-context.xml
- Also got rid of orphan reaper warnings when running in a cluster (not ALF-11720, but mentioned in it)
32329: Fix ALF-11734: Concurrency conditions not handled correctly for ACL persistence
- Struggled to get reproducible test in code
- If this doesn't fix the problem fully, then at least it'll push it up a level,
however the higher caches already have pessimistic removal of entries, so should be OK
- In the same way, this could fix ALF-11720: WCM: OrphanReaper contention throws error (3.4.x)
32381: Minor follow up on 32329: ALF-11734: Concurrency conditions not handled correctly for ACL persistence
- Pessimistically throw away the node cache entry referencing the ACL
32737: ALF-9878: Reverse merged following revisions from failed hotfix - deferred to 3.4.8
32397: ALF-11727 CLONE - Pending Invite Search doesn't return anything if there's more than 1000 pending invites across all sites.
Return first 200 invitations (similar to 4.0 paging)
Transaction used by the invites.get is now read only so does not force a flush of caches.
32404: ALF-11727 CLONE - Pending Invite Search doesn't return anything if there's more than 1000 pending invites across all sites.
Removed read only transaction from invites.get.desc.xml as it broke InviteServiceTest testRejectInvite
32501: ALF-11727: Reinstated read-only transaction around invites.get and prevented it from trying to lazily create persons from rejected invites that had previously been deleted by InviteHelper.cleanUpStaleInviteeResources!
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@32743 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
The type parameters disappeared when viewing resulting javadoc and this made it look confusingly like the class is a shorthand for Map rather than Map of QName to Serializable as it actually is.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@32736 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
Columns now have a property to describe whether it has been defined as an auto-increment column, e.g. AUTO_INCREMENT for MySQL. The property is persisted in XML reference files, loaded from XML reference files and compared between schemas.
The MySQL reference file has been updated to include autoincrement values.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@32711 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- Made the backward timestepping work in bounded segments, whereas previously there
was no lower bound causing the database to creak under load and the whole process
to take a long time.
- Seen during benchmark testing as well
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@32659 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- Refix ALF-10665: Caches that use @@VALUE_NOT_FOUND@@ are not really immutable
- Add NodeBulkLoader.setCheckNodeConsistency
- Use in a transaction to ensure that the node cache views are consistent with
the database views.
- Increase size of contentDataCache and make it support equals checking
- Details:
32162: Read-through cache changes
32163: TransactionalCache changes to support more efficient consistency guarantees
- 'allowEqualsCheck' property allows cache to do a full equals check against changed shared cache values
- In-transaction option 'setDisableSharedCacheReadForTransaction'. Values are cache in-transaction
and written back at the end of the transaction (subject to collision rules) but the first read will
not go to the shared cache.
- Drop optimistic write-through in read-only transactions; they are equally likely to want to flush
stale data.
- Add simpler logic for mutable and allowEqualsCheck and make sure all conditions are covered by tests
32164: Cache node entity support TransactionalCache's allowEqualsCheck
32165: Add NodeDAO.setCheckNodeConsistency() method
- Allows code to request that node metadata is consistent with whatever view the DB is providing
- Incorporate into node concurrency tests without issue
- Only one cache is affected (nodesCache) and it is enhanced by having 'allowEqualsCheck' to prevent
massive flushing when multiple read transactions are all trying to push data into the shared caches,
particularly during (re)indexing operations.
- Further reduces the cache invalidation messages required in order to maintain consistency across
the cluster
32166: Make Lucene reindex work (trackers and FTS) use enforced node consistency
- bulkLoader.setCheckNodeConsistency() incorporated where 'isReadThrough' is on
32167: SOLR tracking uses NodeDAO.setCheckNodeConsistency() during node metadata retrieval
- Ensures that any stale node metadata does not find its way into indexed SOLR node metadata
32207: Fix ALF-11644: AVM cleanup jobs run when WCM is not installed
- Moved scheduled jobs to installable wcm-bootstrap-context.xml
- Also got rid of orphan reaper warnings when running in a cluster
32208: Better hashcode for NodeVersionKey
32209: RECORD ONLY
32210: RECORD ONLY
32212: Proper fix for ALF-10665: Immutable caches do not respond well to null (=> @@VALUE_NOT_FOUND@@)
- The following caches were incorrectly classed as 'immutable':
propertyValueCache
immutableEntityCache
rootNodesCache
allRootNodesCache
authorityCache
tagscopeSummaryCache
imapMessageCache
- The 'immutable' caches are:
node.aspectsCache
node.propertiesCache
node.parentAssocsCache
- The following caches support equals checks:
node.nodesCache
authorityLookupCache
32213: Fixed getNodeRefStatus(): nodesCache caches deleted entries as well.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@32657 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- added some logging capability into ScriptServiceImpl to see if we can catch the problem in the log file. To enable it, add this to log4j.properties:
log4j.logger.org.alfresco.repo.processor.ScriptServiceImpl=warn
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@32639 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- A user is able to publish content to a channel if they have permission to add children to the node representing the channel in the repo. In Share terms, this means that people with any one of Manager, Coordinator, Collaborator, or Contributor roles on a channel are allowed to publish to that channel. This means that people with the Consumer role on a channel are not allowed to publish to that channel.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@32558 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
32527: ALF-11495: Merge V3.4.1 (3.4.1.23) to V3.4-BUG-FIX (3.4.8)
32494: ALF-11381 Enterprise unlimited licenses still get invalidated turning the system into read-only mode
Additional logging on TrueLicense
Catch GenericCertificateIntegrityException in LicenseComponent
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@32536 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
32411: Fix for ALF-11344 SORT clause in CMIS query (ORDER BY) drastically affects performance of search.
- use in memory sort rather than relying on the lucene field cache for result sets up to 1000 by default
- this is configurable across all query languages (and per query via SearchParameters and QueryOptions)
lucene.indexer.useInMemorySort=true
lucene.indexer.maxRawResultSetSizeForInMemorySort=1000
32425: Fix for ALF-11344 SORT clause in CMIS query (ORDER BY) drastically affects performance of search.
- fix for score sorting
- requires fixes for 3.4 -> 4.0 refactoring
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@32479 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261