neos / neos-development-collection

The unified repository containing the Neos core packages, used for Neos development.
https://www.neos.io/
GNU General Public License v3.0
264 stars 222 forks source link

Moving document nodes breaks nested variants #2282

Closed sbruggmann closed 3 years ago

sbruggmann commented 5 years ago

Given

Problem

If you move the "de" document node variant to a new parent and publish all open changes, results in the translated content disappearing from the frontend output. This is because the "de" document node variant is getting a new node-name, the original "all" variant not.

The Problem sound familiar to #943 but is not exactly the same.

Expected behavior

As if you move the original "all" document node variant to a new parent. This results in consistant node-names and no lost translations.

Affected Versions

Neos: 3.3+

markuspfeifenberger commented 5 years ago

Hi Stefan,

we are facing the same problem right now. Can you please do the following and let me know the result:

Given: You have nothing to publish and in the Database there are no workspace entries on your "user-YOURNAME" workspace - check it with this SQL (replace YOURNAME with your login username):

SELECT * FROM neos_contentrepository_domain_model_nodedata
WHERE workspace LIKE 'user-YOURNAME' AND  path NOT LIKE "/"

Then make the move action that causes the problems in Neos and publish the changes.

After this, when you have nothing to publish in Neos, do the SQL query again.

Please let me know if there are still entries in the DB, an if some of them have values in the moveto column.

sbruggmann commented 5 years ago

Hi Markus,

Two Text NodeTypes are listet afterwards. One is marked as removed, has the correct path and a moveto value to the other listed entry, which is orphaned.

markuspfeifenberger commented 5 years ago

... that's the same we have for some of the nodes. If they don't fit perfectly, I mean, they have all the same identifier and nodepath, I think that's the problem. The nodes lose there binding, when they are moved in a way, I cannot reproduce so far ... When I make a test scenario, everything is fine and there are no "workspace moveto" entries left in the DB, I can't see in the Backend.

To be continued.