- Tables are 'alf_prop_root' and 'alf_audit_app'
- Added property test to update past the SMALLINT rollover to test reversion to 0
- To modify your tables (not absolutely necessary)
alter table alf_audit_app modify version SMALLINT NOT NULL;
alter table alf_prop_root modify version SMALLINT NOT NULL;
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16320 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- alf_prop_xxx tables
- Added alf_prop_root table
- alf_prop_value_xxx tables enforce uniqueness
- Better splitting up of Collections and Maps (attempt to use exact storage type)
- Moved some indexes around to reduce size but maintain index data lookups
- Allow updates and deletes of properties via alf_prop_root (entry-point table)
- Audit Application
- Unique by name
- Add 'disabled paths' to control audit behaviour (not wired into services)
- Added concurrency checks for updates to the Audit Application (model change, etc)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16217 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- Turned namespacing on
- Collapsed SqlMapConfig.xml files with the exception of that for activities, which uses a different datasource bean
- Tried to use it and discovered a "feature": If any ID has a '.' in it, then it is assumed to be namespaced already ...
- Fixed up all IDs for iBatis objects; replaced '.' with '_' except in our namespaces
- Don't panic! It's a find/replace job of ID strings. Errors will be hard and fast, if there are any. All DAO and activities tests run.
- The AVM refactor will get some conflicts in the ibatis-context.xml
- Either follow the same pattern and fix up the IDs, or
- Keep a separate bean until some later time.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16106 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- Any combination of application (e.g. RM, repo, etc), user and time
- TODO: Extend queries to support finding audit entries by arbitrary audited values
- TODO: Full map retrieval in single query
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16086 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- Audit paths can now use mixed case (after alf_prop_string_value enhancements)
- Pluggable data conversion when pushing values into persistence
- Relaxed XSD to allow mixed-case key values
- Regex checking of paths and names when building strings
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15976 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- alf_prop_string_value now includes a CRC column and handles Oracle empty string issues
- All property values are/must now be Serializable for auditing
- Pushing data into audit is working
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15915 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- Normal prefix-index has been shortened to 32 chars (from 64)
- Added a fully indexed 'string_end' column of 16 characters
- iBatis queries are optimized to pull short strings from the index
- Long paths and NodeRefs are well-indexed using this approach
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15833 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- TODO: ID-based caching for entities that can't be found by value (e.g. maps, serializable)
- TODO: Serializable table
- TODO: Dedicated tests for node properties (QName-Serializable maps with nested MLText)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15753 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261