КОММЕРЧЕСКИЙ ЗАКАЗ - PDOException: SQLSTATE [40001]: ошибка сериализации: 1213 Обнаружена тупиковая ситуация при попытке получить блокировку; попробуйте перезапустить транзакцию - PullRequest
0 голосов
/ 26 октября 2018

Вот мое сообщение об ошибке

PDOException: SQLSTATE[40001]: Serialization failure: 1213 Deadlock found when 
trying to get lock; try restarting transaction: 
UPDATE {commerce_order} SET 
order_number=:db_update_placeholder_0, revision_id=:db_update_placeholder_1, 
type=:db_update_placeholder_2, uid=:db_update_placeholder_3, 
mail=:db_update_placeholder_4, status=:db_update_placeholder_5, 
created=:db_update_placeholder_6, changed=:db_update_placeholder_7, 
placed=:db_update_placeholder_8, hostname=:db_update_placeholder_9, 
data=:db_update_placeholder_10 WHERE (order_id = :db_condition_placeholder_0) ; 
Array ( [:db_update_placeholder_0] => 201805822 [:db_update_placeholder_1] => 16807 
[:db_update_placeholder_2] => commerce_order [:db_update_placeholder_3] => 0 
[:db_update_placeholder_4] => [:db_update_placeholder_5] => checkout_checkout 
[:db_update_placeholder_6] => 1540480400 [:db_update_placeholder_7] => 
1540481979 [:db_update_placeholder_8] => 0 [:db_update_placeholder_9] => 
128.199.161.50 [:db_update_placeholder_10] => a:4: 
{s:17:"last_cart_refresh";i:1540481976;s:16:"shipping_service";s:17:"shipping_custom|1";s:14:"with_backorder";s:0:"";s:17:"backorder_service";s:5:"_none";}
[:db_condition_placeholder_0] => 5056 ) in drupal_write_record() (line 7387 of ~/public_html/includes/common.inc).

Кто-нибудь может мне помочь?что не так с этими вещами?

1 Ответ

0 голосов
/ 06 января 2019

Лучшее решение - изменить уровень изоляции транзакции (на READ COMMITTED).

Попробуйте добавить это к вашему settings.php. Это распространенная проблема на сайтах Drupal с высоким чтением / записью, где много полей.

$databases['default']['default']['init_commands'] = array(
  'isolation' => "SET SESSION tx_isolation='READ-COMMITTED'"
);
...