-
Suggestion
-
Resolution: Unresolved
-
None
-
2
-
Issue Summary
User id mapping is not available when user reference is stored in places not scanned by CCMA, e.g. in confluence_ContentEntityObject. This happens when Migrate users related to the selected spaces option is selected in CCMA. As a result, an app is unable to map the user id correctly in Cloud.
Steps to Reproduce
- Install an app that stores data in confluence_ContentEntityObject, e.g. Scaffolding Forms & Templates
- Create a new user
- Create page with a macro that stores data in confluence_ContentEntityObject.
If using Scaffolding Forms & Templates:- Create a page with with User Options macro inside List Data
- Publish the page
- Click Edit Content and select the new user in user dropdown
- Click Save. You should see the new user being mentioned on page
- Migrate the data. Select Migrate users related to the selected spaces option in CCMA
- In Cloud, try to get user id mapping for the new user
Expected Results
User id mapping should be available regardless of where user reference is stored.
Actual Results
User id mapping is not available for data stored in certain places.
Workaround
Select Migrate all users option in CCMA when migrating the data.
Additional Details
The new user, who is only selected in the list, does not appear with a <object class="ConfluenceUserImpl" package="com.atlassian.confluence.user" /> entry in the Space export entities.xml file. They only appear as an entry in the BucketPropertySetItem, which isn’t a user object.
<object class="BucketPropertySetItem" package="bucket.user.propertyset"> <composite-id> <property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property> <property name="entityId" type="long">65612</property> <property name="key" type="string"><![CDATA[~metadata.2]]></property> </composite-id> <property name="type">6</property> <property name="booleanVal">false</property> <property name="doubleVal">0.0</property> <property name="stringVal" /> <property name="textVal"><![CDATA[<metadata> <entry> <string> field-name</string> <list> <UserReference> <userKey> ff8081817d548675017d5512cb8b0002</userKey> </UserReference> </list> </entry> <entry> <string> field-name-2</string> <list> <UserReference> <userKey> ff8081817d548675017d55132d590003</userKey> </UserReference> </list> </entry> </metadata>]]></property> <property name="longVal">0</property> <property name="intVal">0</property> <property name="dateVal" /> </object> COPY TO CLIPBOARD