What are the steps required to reproduce the bug?
I created book migration configuration based on docroot/core/modules/book/migrations/d7_book.yml to migrate book data from Drupal 7 to Drupal 8. Running drush migrate-import
works, but when I add the --update
flag, all items fail with errors.
What behavior were you expecting?
I was expecting that the migration would update like node and other migration plugins, error free.
What happened instead?
When running the book migration with the --update
flag, all items fail and the following errors occur for each item:
[error] Drupal\Core\Database\IntegrityConstraintViolationException: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '2826' for key 'PRIMARY': INSERT INTO {book} (nid, bid, pid, weight, depth, p1, p2, p3, p4, p5, p6, p7, p8, p9) VALUES (:db_insert_placeholder_0, :db_insert_placeholder_1, :db_insert_placeholder_2, :db_insert_placeholder_3, :db_insert_placeholder_4, :db_insert_placeholder_5, :db_insert_placeholder_6, :db_insert_placeholder_7, :db_insert_placeholder_8, :db_insert_placeholder_9, :db_insert_placeholder_10, :db_insert_placeholder_11, :db_insert_placeholder_12, :db_insert_placeholder_13); Array
(
[:db_insert_placeholder_0] => 2826
[:db_insert_placeholder_1] => 2816
[:db_insert_placeholder_2] => 2816
[:db_insert_placeholder_3] => 5
[:db_insert_placeholder_4] => 2
[:db_insert_placeholder_5] => 2816
[:db_insert_placeholder_6] => 2826
[:db_insert_placeholder_7] => 0
[:db_insert_placeholder_8] => 0
[:db_insert_placeholder_9] => 0
[:db_insert_placeholder_10] => 0
[:db_insert_placeholder_11] => 0
[:db_insert_placeholder_12] => 0
[:db_insert_placeholder_13] => 0
)
in Drupal\Core\Database\Connection->handleQueryException() (line 683 of /app/docroot/core/lib/Drupal/Core/Database/Connection.php).
[error] SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '2826' for key 'PRIMARY': INSERT INTO {book} (nid, bid, pid, weight, depth, p1, p2, p3, p4, p5, p6, p7, p8, p9) VALUES (:db_insert_placeholder_0, :db_insert_placeholder_1, :db_insert_placeholder_2, :db_insert_placeholder_3, :db_insert_placeholder_4, :db_insert_placeholder_5, :db_insert_placeholder_6, :db_insert_placeholder_7, :db_insert_placeholder_8, :db_insert_placeholder_9, :db_insert_placeholder_10, :db_insert_placeholder_11, :db_insert_placeholder_12, :db_insert_placeholder_13); Array
(
[:db_insert_placeholder_0] => 2826
[:db_insert_placeholder_1] => 2816
[:db_insert_placeholder_2] => 2816
[:db_insert_placeholder_3] => 5
[:db_insert_placeholder_4] => 2
[:db_insert_placeholder_5] => 2816
[:db_insert_placeholder_6] => 2826
[:db_insert_placeholder_7] => 0
[:db_insert_placeholder_8] => 0
[:db_insert_placeholder_9] => 0
[:db_insert_placeholder_10] => 0
[:db_insert_placeholder_11] => 0
[:db_insert_placeholder_12] => 0
[:db_insert_placeholder_13] => 0
)
(/app/docroot/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php:783)