The manipulation described here under is leading to exception similar to what is reported in https://issues.alfresco.com/jira/browse/MNT-11429 After patched the class “SyncTrackerComponent” with the fix suggested in
MNT-11429, the attached exception was still thrown.
How to reproduce?
1)Install a 22.214.171.124 with cloud sync active
2)Create a site “test”
3)In document library, of site test create 2 folders called “TESTIN” and “TESTOUT”
4)Configure “TESTIN” to synchronize on the cloud.
5)Using webdav protocol, open the folder “TESTIN” and upload a document. I have tested using the attached pdf.
6)Then using webdav anddrag and drop move the document to ”TESTOUT”, then immediately after move it back to “TESTOUT” then back to “TESTIN” then to “TESTOUT” and so on...
You should observe the attached exception.
- Base on the code the what is happening should never happen, see comment in SyncTrackerComponent.java:
// Now need to do the equivalent of below
// TODO we need to show error message user - not a generic UNKNOWN (see ALF-14872)
// THIS CODE SHOULD NEVER HAPPEN AND INDICATES A PROBLEM
logger.error("PUSH: unexpected throwable : push failed (sourceNodeRef="", targetNodeRef="+targetNodeRef, are);
handleSyncNodeException(SyncNodeException.wrapUnhandledException(are), sourceNodeRef, auditEntryIds);
- By apply the attached patch, I did not observed the issue any more.
- The patch adds a test on the existence of the node that is pushed. This is complementary to
- However when doing series manipulation as described on 5) I still observed some inconsistencies: In place of being located in TESTOUT the document was still located in testing, It was like if the Alfresco had “skipped” one step.
Possibly the difficulty when using webdav is related to how move is implemented: a delete followed by a create. At least testing testing that node exist before initial push seems to prevent the error.