"Непредвиденная ошибка" при попытке изменить или удалить вариант с помощью менеджера страниц и панелей


Я использую менеджер страниц 8.x-1.0-alpha24 с панелями. Эта проблема, похоже, возникает случайным образом, но когда я пытаюсь отредактировать варианты на определенных страницах, я получаю страшную страницу "непредвиденная ошибка". Я даже получаю эту ошибку при попытке удалить вариант. Всякий раз, когда я сталкиваюсь с этим, мне приходится решать эту проблему, создавая новую страницу в диспетчере страниц и применяя те же настройки, но это не всегда возможно. Это также в настоящее время выполняется на /узле/{узле} страница, которую я не уверен, что смогу удалить. В журнале ошибок я получаю это предупреждение:

Предупреждение о сообщении: Неверный аргумент, указанный для foreach() в Drupal\Компонент\Утилита\nestedarray::mergedeeparray() (строка 327 из/var/www/mydev.dev/http/web/core/lib/Drupal/Component/Utility/NestedArray.php) #0/var/www/mydev.dev/http/web/core/включает в себя/bootstrap.inc(548): _drupal_error_handler_real(2, "Недопустимый аргумент...", "/var/www/aaep.o...", 327, Массив) #1 /var/www/mydev.dev/http/web/core/lib/Drupal/Component/Utility/NestedArray.php (327): _drupal_error_handler(2, "Недопустимый аргумент...", "/var/www/aaep.o...", 327, Массив) #2 /var/www/mydev.dev/http/web/core/lib/Drupal/Component/Utility/NestedArray.php (295): Drupal\Компонент\Утилита\Вложенный массив::Объединенный массив (Массив)#3 /var/www/mydev.dev/http/web/core/lib/Drupal/Core/Block/BlockBase.php (76): Drupal\Компонент\Утилита\Вложенный массив::Слияние (Массив, НУЛЬ, Массив) #4 /var/www/mydev.dev/http/web/core/lib/Drupal/Core/Plugin/DefaultLazyPluginCollection.php (162): Drupal\Ядро\Блок\База блоков->Настройка конфигурации (Массив) #5 /var/www/mydev.dev/http/web/core/lib/Drupal/Core/Plugin/DefaultLazyPluginCollection.php (135): Drupal\Ядро\Плагин\defaultlazyplugincollection->Настройка конфигурации установки ('16e9261f-a1ac-4...', Массив) #6 /var/www/mydev.dev/http/web/modules/contrib/ctools/src/Plugin/DisplayVariant/BlockDisplayVariant.php(160): Drupal\Ядро\Плагин\Defaultlazyplugincollection->Настройка конфигурации (Массив) #7 /var/www/mydev.dev/http/web/modules/contrib/panels/src/Plugin/DisplayVariant/PanelsDisplayVariant.php(471): Drupal\ctools\Плагин\Дисплейвариант\Блокдисплейвариант->Настройка конфигурации (массив) #8/var/www/mydev.dev/http/web/core/lib/Drupal/Core/Display/VariantBase.php (30): Drupal\панели\Плагин\Displayvariant\Panelsdisplayvariant->Настройка конфигурации (массив) #9 /var/www/mydev.dev/http/web/modules/contrib/ctools/src/Plugin/DisplayVariant/BlockDisplayVariant.php(103): Drupal\Ядро\Дисплей\База вариантов->__построить(Массив, 'panels_variant', Массив) #10 /var/www/mydev.dev/http/web/modules/contrib/panels/src/Plugin/DisplayVariant/PanelsDisplayVariant.php(106): Drupal\ctools\Плагин\Дисплейвариант\Блокдисплейвариант->__построить(Массив, 'panels_variant', Массив, Объект (Drupal\Ядро\Плагин\Контекст\Контекстный обработчик), Объект (Drupal\Ядро\Сессия\Accountproxy), Объект (Drupal\Компонент\Uuid\Php), Объект (Drupal\токен\Токен), Объект (Drupal\Ядро\Блок\Блокменеджер), Объект (Drupal\Ядро\Условие\Conditionmanager))#11 /var/www/mydev.dev/http/web/modules/contrib/panels/src/Plugin/DisplayVariant/PanelsDisplayVariant.php(126): Drupal\панели\Плагин\Displayvariant\Panelsdisplayvariant->__построить(Массив, 'panels_variant', Массив, Объект (Drupal\Ядро\Плагин\Контекст\Контекстный обработчик), Объект (Drupal\Ядро\Сессия\Accountproxy), Объект (Drupal\Компонент\Uuid\Php), Объект (Drupal\токен\Токен), Объект (Drupal\Ядро\Блок\Блокменеджер), Объект (Drupal\Ядро\Условие\Conditionmanager), Объект (Drupal\Ядро\Расширение\Модульный обработчик), Объект (Drupal\панели\Плагин\Displaybuilder\displaybuildermanager), Объект (Drupal\layout_plugin\Плагин\Макет\Layoutpluginmanager))#12 /var/www/mydev.dev/http/web/core/lib/Drupal/Core/Plugin/Factory/ContainerFactory.php (21): Drupal\panels\Plugin\DisplayVariant\PanelsDisplayVariant::create(Object(Drupal\Core\DependencyInjection\Container), Массив, 'panels_variant', Массив) #13 /var/www/mydev.dev/http/web/core/lib/Drupal/Component/Plugin/PluginManagerBase.php (84): Drupal\Ядро\Плагин\Фабрика\Фабрика контейнеров->Создать установку ('panels_variant', Массив) #14 /var/www/mydev.dev/http/web/core/lib/Drupal/Core/Plugin/DefaultSingleLazyPluginCollection.php (65): Drupal\Компонент\Плагин\База управления плагинами->Создать объект ('panels_variant', Массив) #15 /var/www/mydev.dev/http/web/core/lib/Drupal/Component/Plugin/LazyPluginCollection.php (80): Drupal\Ядро\Плагин\defaultsinglelazyplugincollection->Инициализировать плагин ('panels_variant') #16/var/www/mydev.dev/http/web/modules/contrib/page_manager/src/Entity/PageVariant.php (235): Drupal\Компонент\Плагин\Коллекция lazyplugin->получить('panels_variant') #17 /var/www/mydev.dev/http/web/modules/contrib/page_manager/page_manager_ui/src/Wizard/PageEditWizard.php(94): Drupal\page_manager\Сущность\Вариант страницы->getvariantplugin()#18 /var/www/mydev.dev/http/web/modules/contrib/page_manager/page_manager_ui/src/Wizard/PageEditWizard.php(54): Drupal\page_manager_ui\Wizard\PageEditWizard->getVariantOperations(Object(Drupal\page_manager\Entity\PageVariant), Массив) #19 /var/www/mydev.dev/http/web/modules/contrib/ctools/src/Wizard/FormWizardBase.php (165): Drupal\page_manager_ui\Мастер\pageeditwizard->Операции получения (массив) #20 /var/www/mydev.dev/http/web/modules/contrib/ctools/src/Wizard/FormWizardBase.php (251): Drupal\ctools\Мастер\База данных форм->Получение операции (Массив) #21 [внутренняя функция]: Drupal\ctools\Мастер\База данных форм->Форма сборки (массив, Объект (Drupal\Ядро\Форма\Состояние формы)) #22 /var/www/mydev.dev/http/web/core/lib/Drupal/Core/Form/FormBuilder.php (514): вызов_user_func_array(Массив, Массив) #23 /var/www/mydev.dev/http/web/core/lib/Drupal/Core/Form/FormBuilder.php (271): Drupal\Ядро\Форма\Формостроитель->Получение формы ('page_manage_var...', Объект (Drupal\Ядро\Форма\Состояние формы))#24 /var/www/mydev.dev/http/web/modules/contrib/ctools/src/Wizard/WizardFactory.php (45): Drupal\Ядро\Форма\Конструктор форм->Форма сборки(Объект(Drupal\page_manager_ui\Мастер\Pageeditwizard), Объект (Drupal\Ядро\Форма\Состояние формы)) #25 /var/www/mydev.dev/http/web/modules/contrib/ctools/src/Controller/WizardFormController.php (84): Drupal\ctools\Wizard\WizardFactory->getWizardForm(Object(Drupal\page_manager_ui\Wizard\PageEditWizard), Массив, ложь) #26 [внутренняя функция]: Drupal\ctools\Controller\WizardFormController->getContentResult(Object(Symfony\Component\HttpFoundation\Request), Объект (Drupal\Ядро\Маршрутизация\Сопоставление маршрутов))#27 /var/www/mydev.dev/http/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(123): вызов_user_func_array(Массив, Массив) #28 /var/www/mydev.dev/http/web/core/lib/Drupal/Core/Render/Renderer.php (574): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber{closure}() #29 /var/www/mydev.dev/http/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(124): Drupal\Core\Рендеринг\Визуализатор->executeinrendercontext(Объект(Drupal\Core\Рендеринг\Рендерконтекст), Объект (Закрытие)) #30 /var/www/mydev.dev/http/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(97): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext(Array, Массив) #31 [внутренняя функция]: Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber{closure}() #32/var/www/mydev.dev/http/vendor/symfony/http-kernel/HttpKernel.php (144): call_user_func_array(Объект (Закрытие), Массив) #33 /var/www/mydev.dev/http/vendor/symfony/http-kernel/HttpKernel.php (64): Symfony\Компонент\HttpKernel\HttpKernel->Обработчик(Объект(Symfony\Компонент\HttpFoundation\Запрос), 1) #34 /var/www/mydev.dev/http/web/core/lib/Drupal/Core/StackMiddleware/Session.php (57): Symfony\Компонент\HttpKernel\HttpKernel->дескриптор(Объект(Symfony\Компонент\HttpFoundation\Запрос), 1, истина)#35 /var/www/mydev.dev/http/web/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php (47): Drupal\Core\Stackmiddleware\Сессия->дескриптор (Объект(Symfony\Компонент\HttpFoundation\Запрос), 1, истина) #36 /var/www/mydev.dev/http/web/core/modules/page_cache/src/StackMiddleware/PageCache.php (99): Drupal\Ядро\Stackmiddleware\Ядро->дескриптор (Объект(Symfony\Компонент\HttpFoundation\Запрос), 1, истина)#37 /var/www/mydev.dev/http/web/core/modules/page_cache/src/StackMiddleware/PageCache.php (78): Drupal\page_cache\stackmiddleware\Кэш страниц->передать (Объект(Symfony\Компонент\HttpFoundation\Запрос), 1, истина)#38 /var/www/mydev.dev/http/web/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php (47): Drupal\page_cache\stackmiddleware\Кэш страниц->дескриптор(Объект(Symfony\Компонент\HttpFoundation\Запрос), 1, истина)#39 /var/www/mydev.dev/http/web/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php (50): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, верно) #40 /var/www/mydev.dev/http/vendor/stack/builder/src/Stack/StackedHttpKernel.php (23): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, правда) #41 /var/www/mydev.dev/http/web/core/lib/Drupal/Core/DrupalKernel.php (652): Стек\stackedhttpkernel->дескриптор(Объект(Symfony\Компонент\HttpFoundation\Запрос), 1, истина)#42/var/www/mydev.dev/http/web/index.php (19): Drupal\Ядро\Drupalkernel->дескриптор(Объект(Symfony\Компонент\HttpFoundation\Запрос)) #43 {главная}.

Однако у меня возникают проблемы с пониманием сообщение об ошибке. Я создаю пользовательские модули, но не вижу никаких упоминаний о них в сообщении об ошибке. Так что мне трудно разобраться в этом. В строке 327 NestedArray.php Я вижу, что ему нужен массив, и я предполагаю, что он этого не получил, но я не уверен, что еще делать с этой информацией. Есть ли правильный способ устранить эту проблему? Или это известная проблема?

Даже если четкого ответа нет, есть ли еще хороший метод устранения неполадок для этого?

ОБНОВЛЕНИЕ: Я смог временно заставить его работать, применив этот патч https://www.drupal.org/node/2831521 для технических средств. И возвращаясь к последней версии page_manager, но через некоторое время она снова сломалась. И дал мне ошибку, которую я получил в самом начале.

ОБНОВЛЕНИЕ 2: Я включил ведение журнала с информацией об обратном пути и получил лучшее сообщение об ошибке

На веб-сайте произошла непредвиденная ошибка. Пожалуйста, повторите попытку позже. Drupal\Ядро\База данных\databaseexceptionwrapper: SQLSTATE[HY000]: Общая ошибка: 2006 сервер MySQL исчез: ВСТАВИТЬ В {сторожевой пес} (идентификатор, тип, сообщение, переменные, серьезность, ссылка, местоположение, ссылка, имя хоста, метка времени) ЗНАЧЕНИЯ (: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_7, :db_insert_placeholder_8, :db_insert_placeholder_9); Массив ([:db_insert_placeholder_0]=> 54 [:db_insert_placeholder_1] =>php [:db_insert_placeholder_2] =>%тип: @сообщение в функции % (строка %строки файла %). [:db_insert_placeholder_3] => a:6:{s:5:"%type";s:45:"Drupal\Core\Database\DatabaseExceptionWrapper";s:8:"@message";s:4810210:"SQLSTATE[HY000]: Общая ошибка: 2006 сервер MySQL исчез: ОБНОВЛЕНИЕ {key_value_expire} ЗАДАННОЕ значение=:db_update_placeholder_0, срок действия=:db_update_placeholder_1, ГДЕ ((имя = :db_condition_placeholder_0) И (коллекция = :db_condition_placeholder_1)); Массив ([:db_update_placeholder_0]=> O:8:"stdClass":3:{s:5:"owner";s:2:"54";s:4:"data";a:6:{s:4:"page";O:31:"Drupal\page_manager\Entity\Page":24:{s:5:"*id";s:9:"node_view";s:8:"*label";s:9:"Node view";s:14:"*description";s:0:"";s:7:"*path";s:12:"/node/{node}";s:11:"*variants";a:15:{s:26:"node_view-panels_variant-3";O:38:"Drupal\page_manager\Entity\PageVariant":27:{s:5:"*id";s:26:"node_view-panels_variant-3";s:8:"*label";s:9:"Get A DVM";s:9:"*weight";i:0;s:7:"*uuid";s:36:"ace4efd4-dadc-43a9-afbb-6703c4b4cc9c";s:10:"*variant";s:14:"panels_variant";s:19:"*variant_settings";a:11:{s:6:"blocks";a:5:{s:36:"c88ac011-7207-4268-a4f8-548eebadd7bc";a:9:{s:2:"id";s:7:"getadvm";s:5:"label";s:9:"Get DVM"; s:8: "поставщик"; s:12

А затем огромный список значений настроек в каждом блоке плагина. Огромный, как в текстовом файле размером 5 МБ, с ошибками. Я проверил максимальный размер сообщения, хотя и он был 200 МБ.

Я предполагаю, что SQL-запрос просто слишком велик? В любом случае он отправляет информацию о каждом отдельном варианте, а не только об одном.

Author: Matt, 2017-01-26

2 answers

Ваша текущая ошибка такова:

General error: 2006 MySQL server has gone away

Вы можете попытаться исправить это двумя способами:

  1. my.ini

Откройте свой файл my.ini и найдите max_allowed_packet. По умолчанию это 1м. Установите его на 16 М и перезапустите сервер MySQL. Если проблема не устранена, попробуйте установить ее на 512M и перезагрузить сервер MySQL.

  1. MySQL prompt

Введите приглашение MySQL, войдите в систему как пользователь root или как пользователь с привилегией SUPER. Бежать следующая команда:

SET GLOBAL max_allowed_packet = 1024 * 1024 * 512;

Этот метод не требует перезагрузки сервера.

 2
Author: Wim Mostrey, 2017-01-31 18:06:03

У меня была аналогичная проблема с проблемой The "" plugin does not exist. Я решил эту проблему, просто удалив и переустановив диспетчер страниц и панели после возникновения аналогичной проблемы в моем рабочем процессе. Я бы попробовал это сначала.

 1
Author: thhafner, 2017-01-30 17:38:26