diff --git a/typo3/sysext/core/Classes/DataHandling/DataHandler.php b/typo3/sysext/core/Classes/DataHandling/DataHandler.php
index eee662c0c70686f76cbb49e87babcee635b42e0b..1c6c586c54b94804aa2411a617d2004a5b4b3cba 100644
--- a/typo3/sysext/core/Classes/DataHandling/DataHandler.php
+++ b/typo3/sysext/core/Classes/DataHandling/DataHandler.php
@@ -3774,6 +3774,10 @@ class DataHandler implements LoggerAwareInterface
                             $newId = $this->copyRecord($v['table'], $v['id'], $realDestPid);
                         }
                     }
+                } elseif ($this->BE_USER->workspace > 0 && !BackendUtility::isTableWorkspaceEnabled($v['table'])) {
+                    // We are in workspace context creating a new parent version and have a child table
+                    // that is not workspace aware. We don't do anything with this child.
+                    continue;
                 } else {
                     // If a record has been copied already during this request,
                     // prevent superfluous duplication and use the existing copy
diff --git a/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/CSV/AbstractActionTestCase.php b/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/CSV/AbstractActionTestCase.php
index 08d6182c5361bb00e04aa663261b8792977feb67..ed1a5276ac6bbde6a49222a963d6829b98e60069 100644
--- a/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/CSV/AbstractActionTestCase.php
+++ b/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/CSV/AbstractActionTestCase.php
@@ -60,6 +60,15 @@ abstract class AbstractActionTestCase extends \TYPO3\CMS\Core\Tests\Functional\D
      * IRRE Child Records
      */
 
+    /**
+     * See DataSet/changeHotelSortingWithOfferNotWorkspaceAware.csv
+     */
+    public function changeHotelSortingWithOfferNotWorkspaceAware()
+    {
+        $GLOBALS['TCA']['tx_irretutorial_1ncsv_offer']['ctrl']['versioningWS'] = false;
+        $this->actionService->moveRecord(self::TABLE_Hotel, self::VALUE_HotelIdFirst, -self::VALUE_HotelIdSecond);
+    }
+
     /**
      * See DataSet/createAndCopyParentContentRecordWithHotelAndOfferChildRecordsAndDiscardCopiedParentRecord.csv
      */
diff --git a/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/CSV/Modify/ActionTest.php b/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/CSV/Modify/ActionTest.php
index 7aef4e31414c6716f30d5eddcd32b1b818385f38..87f0bf36209ed152b834bfe0ed015a2837baa79f 100644
--- a/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/CSV/Modify/ActionTest.php
+++ b/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/CSV/Modify/ActionTest.php
@@ -263,6 +263,29 @@ class ActionTest extends AbstractActionTestCase
      * IRRE Child Records
      */
 
+    /**
+     * @test
+     * See DataSet/changeHotelSortingWithOfferNotWorkspaceAware.csv
+     */
+    public function changeHotelSortingWithOfferNotWorkspaceAware()
+    {
+        parent::changeHotelSortingWithOfferNotWorkspaceAware();
+        $this->assertAssertionDataSet('changeHotelSortingWithOfferNotWorkspaceAware');
+
+        $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections();
+        self::assertThat($responseSections, $this->getRequestSectionHasRecordConstraint()
+            ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1', 'Hotel #2'));
+        self::assertThat($responseSections, $this->getRequestSectionStructureHasRecordConstraint()
+            ->setRecordIdentifier(self::TABLE_Hotel . ':' . self::VALUE_HotelIdFirst)->setRecordField(self::FIELD_HotelOffer)
+            ->setTable(self::TABLE_Offer)->setField('title')->setValues('Offer #1.1'));
+        self::assertThat($responseSections, $this->getRequestSectionStructureHasRecordConstraint()
+            ->setRecordIdentifier(self::TABLE_Hotel . ':' . self::VALUE_HotelIdFirst)->setRecordField(self::FIELD_HotelOffer)
+            ->setTable(self::TABLE_Offer)->setField('title')->setValues('Offer #1.2'));
+        self::assertThat($responseSections, $this->getRequestSectionStructureHasRecordConstraint()
+            ->setRecordIdentifier(self::TABLE_Hotel . ':' . self::VALUE_HotelIdSecond)->setRecordField(self::FIELD_HotelOffer)
+            ->setTable(self::TABLE_Offer)->setField('title')->setValues('Offer #2.1'));
+    }
+
     /**
      * @test
      * See DataSet/createParentContentRecordWithHotelAndOfferChildRecords.csv
diff --git a/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/CSV/Modify/DataSet/changeHotelSortingWithOfferNotWorkspaceAware.csv b/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/CSV/Modify/DataSet/changeHotelSortingWithOfferNotWorkspaceAware.csv
new file mode 100644
index 0000000000000000000000000000000000000000..08f9577deddcdb92632fd68b24225d546bd92036
--- /dev/null
+++ b/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/CSV/Modify/DataSet/changeHotelSortingWithOfferNotWorkspaceAware.csv
@@ -0,0 +1,26 @@
+"tt_content",,,,,,,,,,,,,
+,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","header","tx_irretutorial_1ncsv_hotels"
+,297,89,256,0,0,0,0,0,0,0,0,"Regular Element #1","3,4"
+,298,89,512,0,0,0,0,0,0,0,0,"Regular Element #2",5
+"tx_irretutorial_1ncsv_hotel",,,,,,,,,,,,,
+,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","offers"
+,3,89,256,0,0,0,0,0,0,0,0,"Hotel #1","5,6"
+,4,89,128,0,0,0,0,0,0,0,0,"Hotel #2",7
+,5,89,64,0,0,0,0,0,0,0,0,"Hotel #1",8
+,6,89,256,0,0,0,1,4,0,3,0,"Hotel #1","5,6"
+,7,89,192,0,0,0,1,3,0,0,3,"[MOVE-TO PLACEHOLDER for #3, WS#1]","5,6"
+"tx_irretutorial_1ncsv_offer",,,,,,,,,,,,,
+,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","prices"
+,5,89,256,0,0,0,0,0,0,0,0,"Offer #1.1","7,8,9"
+,6,89,128,0,0,0,0,0,0,0,0,"Offer #1.2","10,11"
+,7,89,64,0,0,0,0,0,0,0,0,"Offer #2.1",12
+,8,89,32,0,0,0,0,0,0,0,0,"Offer #1.1",13
+"tx_irretutorial_1ncsv_price",,,,,,,,,,,,,
+,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title",
+,7,89,256,0,0,0,0,0,0,0,0,"Price #1.1.1",
+,8,89,128,0,0,0,0,0,0,0,0,"Price #1.1.2",
+,9,89,64,0,0,0,0,0,0,0,0,"Price #1.1.3",
+,10,89,32,0,0,0,0,0,0,0,0,"Price #1.2.1",
+,11,89,16,0,0,0,0,0,0,0,0,"Price #1.2.2",
+,12,89,8,0,0,0,0,0,0,0,0,"Price #2.1.1",
+,13,89,4,0,0,0,0,0,0,0,0,"Price #1.1.1",
diff --git a/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/ForeignField/AbstractActionTestCase.php b/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/ForeignField/AbstractActionTestCase.php
index b5baae205627d697ade1549bce4d648ff0ea348f..d3938551a2e57dc5cb83c9a06762d00a7965bfe8 100644
--- a/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/ForeignField/AbstractActionTestCase.php
+++ b/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/ForeignField/AbstractActionTestCase.php
@@ -60,6 +60,15 @@ abstract class AbstractActionTestCase extends \TYPO3\CMS\Core\Tests\Functional\D
      * IRRE Child Records
      */
 
+    /**
+     * See DataSet/changeHotelSortingWithOfferNotWorkspaceAware.csv
+     */
+    public function changeHotelSortingWithOfferNotWorkspaceAware()
+    {
+        $GLOBALS['TCA']['tx_irretutorial_1nff_offer']['ctrl']['versioningWS'] = false;
+        $this->actionService->moveRecord(self::TABLE_Hotel, self::VALUE_HotelIdFirst, -self::VALUE_HotelIdSecond);
+    }
+
     /**
      * See DataSet/createAndCopyParentContentRecordWithHotelAndOfferChildRecordsAndDiscardCopiedParentRecord.csv
      */
diff --git a/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/ForeignField/Modify/ActionTest.php b/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/ForeignField/Modify/ActionTest.php
index af7e9f32c65d5dfaf87a883706c017e3b4266c08..c45b163fdbedcc88b1e225003734cfd0c2a165a7 100644
--- a/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/ForeignField/Modify/ActionTest.php
+++ b/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/ForeignField/Modify/ActionTest.php
@@ -263,6 +263,29 @@ class ActionTest extends AbstractActionTestCase
      * IRRE Child Records
      */
 
+    /**
+     * @test
+     * See DataSet/changeHotelSortingWithOfferNotWorkspaceAware.csv
+     */
+    public function changeHotelSortingWithOfferNotWorkspaceAware()
+    {
+        parent::changeHotelSortingWithOfferNotWorkspaceAware();
+        $this->assertAssertionDataSet('changeHotelSortingWithOfferNotWorkspaceAware');
+
+        $responseSections = $this->getFrontendResponse(self::VALUE_PageId, 0, self::VALUE_BackendUserId, self::VALUE_WorkspaceId)->getResponseSections('Default', 'Extbase:list()');
+        self::assertThat($responseSections, $this->getRequestSectionHasRecordConstraint()
+            ->setTable(self::TABLE_Hotel)->setField('title')->setValues('Hotel #1', 'Hotel #2'));
+        self::assertThat($responseSections, $this->getRequestSectionStructureHasRecordConstraint()
+            ->setRecordIdentifier(self::TABLE_Hotel . ':' . self::VALUE_HotelIdFirst)->setRecordField(self::FIELD_HotelOffer)
+            ->setTable(self::TABLE_Offer)->setField('title')->setValues('Offer #1.1'));
+        self::assertThat($responseSections, $this->getRequestSectionStructureHasRecordConstraint()
+            ->setRecordIdentifier(self::TABLE_Hotel . ':' . self::VALUE_HotelIdFirst)->setRecordField(self::FIELD_HotelOffer)
+            ->setTable(self::TABLE_Offer)->setField('title')->setValues('Offer #1.2'));
+        self::assertThat($responseSections, $this->getRequestSectionStructureHasRecordConstraint()
+            ->setRecordIdentifier(self::TABLE_Hotel . ':' . self::VALUE_HotelIdSecond)->setRecordField(self::FIELD_HotelOffer)
+            ->setTable(self::TABLE_Offer)->setField('title')->setValues('Offer #2.1'));
+    }
+
     /**
      * @test
      * See DataSet/createParentContentRecordWithHotelAndOfferChildRecords.csv
diff --git a/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/ForeignField/Modify/DataSet/changeHotelSortingWithOfferNotWorkspaceAware.csv b/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/ForeignField/Modify/DataSet/changeHotelSortingWithOfferNotWorkspaceAware.csv
new file mode 100644
index 0000000000000000000000000000000000000000..ae70412f29b3b28dfd309e507f2f6e2807465caa
--- /dev/null
+++ b/typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/ForeignField/Modify/DataSet/changeHotelSortingWithOfferNotWorkspaceAware.csv
@@ -0,0 +1,27 @@
+"tt_content",,,,,,,,,,,,,,,,
+,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","header","tx_irretutorial_1nff_hotels",,,
+,297,89,256,0,0,0,0,0,0,0,0,"Regular Element #1",2,,,
+,298,89,512,0,0,0,0,0,0,0,0,"Regular Element #2",1,,,
+"tx_irretutorial_1nff_hotel",,,,,,,,,,,,,,,,
+,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","parentid","parenttable","parentidentifier","offers"
+,2,89,1,0,0,0,0,0,0,0,0,"Hotel #0",89,"pages",,0
+,3,89,1,0,0,0,0,0,0,0,0,"Hotel #1",297,"tt_content",,2
+,4,89,2,0,0,0,0,0,0,0,0,"Hotel #2",297,"tt_content",,1
+,5,89,1,0,0,0,0,0,0,0,0,"Hotel #1",298,"tt_content",,1
+,6,89,1,0,0,0,1,4,0,3,0,"Hotel #1",297,"tt_content",,2
+,7,89,258,0,0,0,1,3,0,0,3,"[MOVE-TO PLACEHOLDER for #3, WS#1]",297,"tt_content",,0
+"tx_irretutorial_1nff_offer",,,,,,,,,,,,,,,,
+,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","parentid","parenttable","parentidentifier","prices"
+,5,89,1,0,0,0,0,0,0,0,0,"Offer #1.1",3,"tx_irretutorial_1nff_hotel",,3
+,6,89,2,0,0,0,0,0,0,0,0,"Offer #1.2",3,"tx_irretutorial_1nff_hotel",,2
+,7,89,1,0,0,0,0,0,0,0,0,"Offer #2.1",4,"tx_irretutorial_1nff_hotel",,1
+,8,89,1,0,0,0,0,0,0,0,0,"Offer #1.1",5,"tx_irretutorial_1nff_hotel",,1
+"tx_irretutorial_1nff_price",,,,,,,,,,,,,,,,
+,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","parentid","parenttable","parentidentifier",
+,7,89,1,0,0,0,0,0,0,0,0,"Price #1.1.1",5,"tx_irretutorial_1nff_offer",,
+,8,89,2,0,0,0,0,0,0,0,0,"Price #1.1.2",5,"tx_irretutorial_1nff_offer",,
+,9,89,3,0,0,0,0,0,0,0,0,"Price #1.1.3",5,"tx_irretutorial_1nff_offer",,
+,10,89,1,0,0,0,0,0,0,0,0,"Price #1.2.1",6,"tx_irretutorial_1nff_offer",,
+,11,89,2,0,0,0,0,0,0,0,0,"Price #1.2.2",6,"tx_irretutorial_1nff_offer",,
+,12,89,1,0,0,0,0,0,0,0,0,"Price #2.1.1",7,"tx_irretutorial_1nff_offer",,
+,13,89,1,0,0,0,0,0,0,0,0,"Price #1.1.1",8,"tx_irretutorial_1nff_offer",,