Affects Version/s: 7.0.0 DXP SP2
Fix Version/s: 7.0.X EE
The issue can be solved by https://github.com/matethurzo/liferay-portal/pull/1574 on master.
The root issue is when create user by using site template (personal site), user site's s layout (modifiedDate>the last-merge-time value of typeSettings field in layout table). When the user login (after step 16), propagation (export/import) executes, this will remove last-merge-time value of settings_ field in layoutset table. And it further cause any view layout request will do export/import process (for example, layout is loading and logo continues delete/update). You can check the user's settings_ field value of the layoutset table. It is broken about site template propagation function, when invoke mergeLayoutSetPrototypeLayouts(), it will be treated as new site created (importData = true).
Steps to reproduce:
- Control Panel > Sites > Site Templates
- Create a Site Template (MyProfileTemplate)
- On the Site Templates pane, next to "MyProfileTemplate" click the tricolon (⁝) icon > Manage > Look and Feel > Logo > Change > Select a logo file > Done > Save
- Assert that the logo directory will be created
- Go into Control Panel > Users > Users and Organizations
- Create a user (e.g. user1)
- Grant user1 Administrator role
- Under user1's account information > User Information > Personal Site Template > My Profile > choose the MyProfileTemplate created in step 2
(Enable propagation of changes from the site template)
- Change user1's password as we will be signing on with the user shortly
- Assert that a new logo directory will be created
<LIFERAY_HOME>/data/document_library/0/0/<Logo_A'> (named "34636.png")
- Log in as user1
- Go to My Profile page - Assert that the page is displayed successfully
- Go to Control panel > Sites > Site Templates
- Under MyProfileTemplate click the tricolon (⁝) symbol > "Manage" > Look and Feel > Logo > Change > Select a new logo file > Done > Save
- Assert that the new logo directory will be created
- Go to user1's My Profile page
Repeated deletion and recreation of a file (user1 site's logo) is observed.
<LIFERAY_HOME>/data/document_library/0/0/34636.png will be deleted.
<LIFERAY_HOME>/data/document_library/0/0/34636.png won't be deleted because we don't set layout.set.prototype.propagate.logo=true in portal-ext.