Skip to content

Commit 55ee814

Browse files
committed
MAGETWO-87191: [Improvement] Add reporting instead of ignore action on schema processing
1 parent 67a14a7 commit 55ee814

File tree

6 files changed

+19
-259
lines changed

6 files changed

+19
-259
lines changed

app/etc/di.xml

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1419,14 +1419,6 @@
14191419
<arguments>
14201420
<argument name="triggers" xsi:type="array">
14211421
<item name="migrateDataFromSameTable" xsi:type="object">Magento\Framework\Setup\Declaration\Schema\Db\MySQL\DDL\Triggers\MigrateDataFrom</item>
1422-
<item name="migrateDataFromAnotherTable" xsi:type="object">Magento\Framework\Setup\Declaration\Schema\Db\MySQL\DDL\Triggers\MigrateDataFromAnotherTable</item>
1423-
</argument>
1424-
</arguments>
1425-
</type>
1426-
<type name="Magento\Framework\Setup\Declaration\Schema\Operations\CreateTable">
1427-
<arguments>
1428-
<argument name="triggers" xsi:type="array">
1429-
<item name="migrateDataFromAnotherTable" xsi:type="object">Magento\Framework\Setup\Declaration\Schema\Db\MySQL\DDL\Triggers\MigrateDataFromAnotherTable</item>
14301422
</argument>
14311423
</arguments>
14321424
</type>
@@ -1513,4 +1505,9 @@
15131505
<argument name="schemaPatchReader" xsi:type="object">\Magento\Framework\Setup\Patch\SchemaPatchReader</argument>
15141506
</arguments>
15151507
</type>
1508+
<type name="Magento\Framework\Setup\Declaration\Schema\Db\SchemaBuilder">
1509+
<arguments>
1510+
<argument name="logger" xsi:type="object">\Magento\Framework\Setup\Patch\DataPatchReader</argument>
1511+
</arguments>
1512+
</type>
15161513
</config>

lib/internal/Magento/Framework/Setup/Declaration/Schema/Db/MySQL/DDL/Triggers/MigrateDataFromAnotherTable.php

Lines changed: 0 additions & 97 deletions
This file was deleted.

lib/internal/Magento/Framework/Setup/Declaration/Schema/Db/SchemaBuilder.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -174,13 +174,14 @@ private function resolveInternalRelations(array $columns, array $data)
174174
foreach ($data['column'] as $columnName) {
175175
if (!isset($columns[$columnName])) {
176176
$tableName = isset($data['table']) ? $data['table']->getName() : '';
177-
throw new Exception(
177+
trigger_error(
178178
__(
179179
'Column %1 does not exist for index/constraint %2 in table %3.',
180180
$columnName,
181181
$data['name'],
182182
$tableName
183-
)
183+
),
184+
E_USER_WARNING
184185
);
185186
} else {
186187
$referenceColumns[] = $columns[$columnName];

lib/internal/Magento/Framework/Setup/Patch/PatchApplier.php

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -228,7 +228,14 @@ public function applySchemaPatch($moduleName = null)
228228
$schemaPatch->apply();
229229
$this->patchHistory->fixPatch(get_class($schemaPatch));
230230
} catch (\Exception $e) {
231-
throw new Exception($e->getMessage());
231+
throw new Exception(
232+
__(
233+
'Unable to apply patch %1 for module %2. Original exception message: %3',
234+
get_class($schemaPatch),
235+
$moduleName,
236+
$e->getMessage()
237+
)
238+
);
232239
} finally {
233240
unset($schemaPatch);
234241
}

lib/internal/Magento/Framework/Setup/Test/Unit/Declaration/Schema/Db/MySQL/DDL/Triggers/MigrateDataFromAnotherTableTest.php

Lines changed: 0 additions & 149 deletions
This file was deleted.

lib/internal/Magento/Framework/Setup/Test/Unit/Declaration/Schema/Db/SchemaBuilderTest.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -287,8 +287,9 @@ public function testBuild(array $columns, array $references, array $constraints,
287287
* @param array $references
288288
* @param array $constraints
289289
* @param array $indexes
290-
* @expectedException \Magento\Framework\Setup\Exception
291-
* @expectedExceptionMessage Column unknown_column does not exist for index/constraint FIRST_INDEX in table second_table
290+
* @expectedException \PHPUnit\Framework\Exception
291+
* @expectedExceptionMessage
292+
* User Warning: Column unknown_column does not exist for index/constraint FIRST_INDEX in table second_table
292293
*/
293294
public function testBuildUnknownIndexColumn(array $columns, array $references, array $constraints, array $indexes)
294295
{

0 commit comments

Comments
 (0)