When attempting to add an aspect (and its properties) to a node in a private site with explicitly declared permissions the aspect is not added and the node is not locked.
Steps to reproduce (Requires two users: user1 and user2. Also requires Google Docs 3.0 to be installed)
1/ Create private site
2/ Add Docx document to site
3/ Grant user2 Collaborator permission to document
4/ Navigate to document details page.
5/ Copy Link to document details page.
6/ Navigate to document details page
7/ Use Edit in Google Docs
-New Tab will be opened in Google Docs editor with a copy of the document from Alfresco
-Document Details page will be refreshed showing Resume Editing and Cancel Editing actions. The node will be locked
- New Tab is opened in Google Docs editor with a copy of the document from Alfresco
-Document Details page is refreshed but does not show Resume Editing and Cancel Editing actions. The node is not locked.
No exceptions are thrown. From the point of view of DbNodeServiceImpl and AbstractNodeDAOImpl everything is happening correctly. Operations are returning true that they have occurred. If the permissions are set on the parent node and inherited from the parent everything occurs correctly. We are not creating working copies. We are only working directly on the node. From the share UI you can add aspects without issue.
The latest build of the Google Docs integration should be used https://bamboo.alfresco.com/bamboo/chain/viewChain.action?planKey=INTEGRATIONS-GD
Source for the Google Docs integration is located at https://github.com/Alfresco/googledrive
The call chain on the repo side is
UploadContent web script <--> GoogleDocsServiceImpl
We are using NodeService.addAspect and lockService.lock.