-
Type: Improvement
-
Status: Open
-
Priority: Major
-
Resolution: Unresolved
-
Affects Version/s: 7.10, 8.10, 9.2
-
Fix Version/s: Postponed
-
Component/s: Audit, Nuxeo Drive
-
Tags:
Pre-requisite:
2 Users with DM and Drive with sync root enabled.
Step 1: User1 Drive - upload large number of files, more than 10,000. Folder structure can be same as nuxeo DM source code.
Step 2: User1 Drive - Wait for 5 minutes, so that some files get uploaded into queue.
Step 3: User2 DM - Create a folder 'Test'and upload a file 'test100.txt'
Step 4: User2 Drive - Wait for 'Test' folder and 'test100.txt'file to get downsynced
Step 5: User2 DM - delete (move to trash) the 'test100.txt' file.
Current: 'test100.txt' is getting deleted after long time, some times after more than a hour.
Expected : 'test100.txt' should be deleted on next 'GetChangeSummary' cycle.
RootCause: nuxeoDriveVirtualEventLoggerListener is processed by 'Default' Queue, instead of 'Audit' Queue.
Note: Default Queue is used by OCR, Antivirus and also by other time intensive long running Work.
Currently nuxeoDriveVirtualEventLoggerListener is defined in nuxeodrive-listeners.xml:
<listener name="nuxeoDriveVirtualEventLoggerListener" async="true" postCommit="true" class="org.nuxeo.drive.listener.NuxeoDriveVirtualEventLogger" />
. This means it is executed in the default queue.
When having a high load and intensive work, its execution is thus delayed.
Moving it to the audit queue fixes the issue. For instance the following contribution does:
<require>org.nuxeo.ecm.platform.audit.core.work</require> <extension target="org.nuxeo.ecm.core.work.service" point="queues"> <queue id="audit"> <category>nuxeoDriveVirtualEventLoggerListener </category> </queue> </extension>