Description of problem: There are actually two problems with the current auditing system. 1. The creation date is not correctly stored by Versioning since it is returning the first date an item is changed rather then the actual creation date. 2. There is no easy way to sort or filter content items by creation date, last modified date, or creation user (or any other auditing information). So, I am proposing that I make ContentItem emulate the behavior of an AuditedACSObject since we really need to have auditing on ContentItem and don't have it as of Troika. This needs to be fixed for the ws3 delivery so I am going to implement it in the next day or two if there are not any large objections. Version-Release number of selected component (if applicable): 6.0, tip How reproducible: always Steps to Reproduce: 1. the creation date is wrong and is not denormalized to a point where it can be used in queries 2. 3. Actual results: Expected results: Additional info:
A couple of use cases, where having auditing data explicitly denormalized in acs_auditing tables rather than implicitly in vc_operations is important to performance/simplicitly of SQL queries: * Search - filtering intermedia results based on creation/modified date range & creation/modified user * Folder item listing - sorting based on last modified date/author, etc
s/Two problems/Three problems/. 3. Calling get(LastModified|Creation)(User|Date) on a content item with a loaded DB takes 400ms per method call. See bug 113480
p4 39404 makes ContentItem contain its own BasicAuditTrail so that it contains the correct information and hopefully since it is no denormalized it should be a little faster. After this change a folder with 12 items went from 90 queries to 45. It also allows us to sort tables and filter the search results.
QA_READY has been deprecated in favor of ON_QA. Please use ON_QA in the future. Moving to ON_QA.
Closing old tickets