Problem/Motivation
After upgrading site to D10.4.1, my webform suddenly throws a database serialisation error.
When logged in as admin user all works fine, but when logged out /anonymous, the submission settings are no longer applied: form is sent to site and copy to visitor, but (inline) thank you message is not shown, and submission limits are not applied. As a result visitors keep pressing βsubmitβ because they think form hasnβt been submitted
Error message
LogicException: The database connection is not serializable. This probably means you are serializing an object that has an indirect reference to the database connection. Adjust your code so that is not necessary. Alternatively, look at DependencySerializationTrait as a temporary solution. in Drupal\Core\Database\Connection->__sleep() (line 1920 of /home/xxxx/public_html/core/lib/Drupal/Core/Database/Connection.php).
Backtrace #0 [internal function]: Drupal\Core\Database\Connection->__sleep()
#1 /home/xxxx/public_html/core/lib/Drupal/Component/Serialization/PhpSerialize.php(14): serialize()
#2 /home/xxxx/public_html/core/lib/Drupal/Core/KeyValueStore/DatabaseStorageExpirable.php(129): Drupal\Component\Serialization\PhpSerialize::encode()
#3 /home/xxxx/public_html/core/lib/Drupal/Core/KeyValueStore/DatabaseStorageExpirable.php(145): Drupal\Core\KeyValueStore\DatabaseStorageExpirable->doSetWithExpire()
#4 /home/xxxx/public_html/core/lib/Drupal/Core/Form/FormCache.php(193): Drupal\Core\KeyValueStore\DatabaseStorageExpirable->setWithExpire()
#5 /home/xxxx/public_html/core/lib/Drupal/Core/Form/FormBuilder.php(463): Drupal\Core\Form\FormCache->setCache()
#6 /home/xxxx/public_html/core/lib/Drupal/Core/Form/FormBuilder.php(441): Drupal\Core\Form\FormBuilder->setCache()
#7 /home/xxxx/public_html/core/lib/Drupal/Core/Form/FormBuilder.php(633): Drupal\Core\Form\FormBuilder->rebuildForm()
#8 /home/xxxx/public_html/core/lib/Drupal/Core/Form/FormBuilder.php(326): Drupal\Core\Form\FormBuilder->processForm()
#9 /home/xxxx/public_html/core/lib/Drupal/Core/Entity/EntityFormBuilder.php(48): Drupal\Core\Form\FormBuilder->buildForm()
#10 /home/xxxx/public_html/modules/contrib/webform/src/Entity/Webform.php(1250): Drupal\Core\Entity\EntityFormBuilder->getForm()
#11 /home/xxxx/public_html/modules/contrib/webform/src/Element/Webform.php(112): Drupal\webform\Entity\Webform->getSubmissionForm()
#12 [internal function]: Drupal\webform\Element\Webform::preRenderWebformElement()
#13 /home/xxxx/public_html/core/lib/Drupal/Core/Security/DoTrustedCallbackTrait.php(113): call_user_func_array()
#14 /home/xxxx/public_html/core/lib/Drupal/Core/Render/Renderer.php(870): Drupal\Core\Render\Renderer->doTrustedCallback()
#15 /home/xxxx/public_html/core/lib/Drupal/Core/Render/Renderer.php(432): Drupal\Core\Render\Renderer->doCallback()
#16 /home/xxxx/public_html/core/lib/Drupal/Core/Render/Renderer.php(248): Drupal\Core\Render\Renderer->doRender()
#17 /home/xxxx/public_html/core/lib/Drupal/Core/Template/TwigExtension.php(484): Drupal\Core\Render\Renderer->render()
#18 /home/xxxx/public_html/sites/default/files/php/twig/678cd4c10d7eb_block.html.twig_uTNhFlmH1kMMrTwvYuY4EYMB7/OG3wBPtayq9sU3sn5OkIUgB0hIPEcbBen_ae71VOumY.php(93): Drupal\Core\Template\TwigExtension->escapeFilter()
#19 /home/xxxx/public_html/vendor/twig/twig/src/Template.php(431): __TwigTemplate_81df65d1e0590aa8d4e9e62db81c5c5d->block_content()
#20 /home/xxxx/public_html/sites/default/files/php/twig/678cd4c10d7eb_block.html.twig_uTNhFlmH1kMMrTwvYuY4EYMB7/OG3wBPtayq9sU3sn5OkIUgB0hIPEcbBen_ae71VOumY.php(74): Twig\Template->yieldBlock()
#21 /home/xxxx/public_html/vendor/twig/twig/src/Template.php(387): __TwigTemplate_81df65d1e0590aa8d4e9e62db81c5c5d->doDisplay()
#22 /home/xxxx/public_html/vendor/twig/twig/src/Template.php(343): Twig\Template->yield()
#23 /home/xxxx/public_html/vendor/twig/twig/src/Template.php(358): Twig\Template->display()
#24 /home/xxxx/public_html/vendor/twig/twig/src/TemplateWrapper.php(35): Twig\Template->render()
#25 /home/xxxx/public_html/core/themes/engines/twig/twig.engine(33): Twig\TemplateWrapper->render()
#26 /home/xxxx/public_html/core/lib/Drupal/Core/Theme/ThemeManager.php(348): twig_render_template()
#27 /home/xxxx/public_html/core/lib/Drupal/Core/Render/Renderer.php(491): Drupal\Core\Theme\ThemeManager->render()
#28 /home/xxxx/public_html/core/lib/Drupal/Core/Render/Renderer.php(504): Drupal\Core\Render\Renderer->doRender()
#29 /home/xxxx/public_html/core/lib/Drupal/Core/Render/Renderer.php(248): Drupal\Core\Render\Renderer->doRender()
#30 /home/xxxx/public_html/core/lib/Drupal/Core/Template/TwigExtension.php(484): Drupal\Core\Render\Renderer->render()
#31 /home/xxxx/public_html/sites/default/files/php/twig/678cd4c10d7eb_themag-layout--twocol-sec_-M57Zry08vF9dvesNrfVZ5F1j/1wZhAdqpqM41Uu5u_jexh79i3G_1wAd5t1s0-9OshQ8.php(84): Drupal\Core\Template\TwigExtension->escapeFilter()
#32 /home/xxxx/public_html/vendor/twig/twig/src/Template.php(387): __TwigTemplate_9f58df5b88145f27635af809765c0cff->doDisplay()
#33 /home/xxxx/public_html/vendor/twig/twig/src/Template.php(343): Twig\Template->yield()
#34 /home/xxxx/public_html/vendor/twig/twig/src/Template.php(358): Twig\Template->display()
#35 /home/xxxx/public_html/vendor/twig/twig/src/TemplateWrapper.php(35): Twig\Template->render()
#36 /home/xxxx/public_html/core/themes/engines/twig/twig.engine(33): Twig\TemplateWrapper->render()
#37 /home/xxxx/public_html/core/lib/Drupal/Core/Theme/ThemeManager.php(348): twig_render_template()
#38 /home/xxxx/public_html/core/lib/Drupal/Core/Render/Renderer.php(491): Drupal\Core\Theme\ThemeManager->render()
#39 /home/xxxx/public_html/core/lib/Drupal/Core/Render/Renderer.php(504): Drupal\Core\Render\Renderer->doRender()
#40 /home/xxxx/public_html/core/lib/Drupal/Core/Render/Renderer.php(504): Drupal\Core\Render\Renderer->doRender()
#41 /home/xxxx/public_html/core/lib/Drupal/Core/Render/Renderer.php(248): Drupal\Core\Render\Renderer->doRender()
#42 /home/xxxx/public_html/core/lib/Drupal/Core/Template/TwigExtension.php(484): Drupal\Core\Render\Renderer->render()
#43 /home/xxxx/public_html/sites/default/files/php/twig/678cd4c10d7eb_node.html.twig_l2aaFNqMt0vgzEp2aaA1Z0Gf8/wMvrJHx41inc-GVm99kVsSyNSS9CU58TiHWCzGXlo9U.php(115): Drupal\Core\Template\TwigExtension->escapeFilter()
#44 /home/xxxx/public_html/vendor/twig/twig/src/Template.php(387): __TwigTemplate_54514cb9ec19b5014e0b0847a876d572->doDisplay()
#45 /home/xxxx/public_html/vendor/twig/twig/src/Template.php(343): Twig\Template->yield()
#46 /home/xxxx/public_html/vendor/twig/twig/src/Template.php(358): Twig\Template->display()
#47 /home/xxxx/public_html/vendor/twig/twig/src/TemplateWrapper.php(35): Twig\Template->render()
#48 /home/xxxx/public_html/core/themes/engines/twig/twig.engine(33): Twig\TemplateWrapper->render()
#49 /home/xxxx/public_html/core/lib/Drupal/Core/Theme/ThemeManager.php(348): twig_render_template()
#50 /home/xxxx/public_html/core/lib/Drupal/Core/Render/Renderer.php(491): Drupal\Core\Theme\ThemeManager->render()
#51 /home/xxxx/public_html/core/lib/Drupal/Core/Render/Renderer.php(248): Drupal\Core\Render\Renderer->doRender()
#52 /home/xxxx/public_html/core/lib/Drupal/Core/Render/MainContent/HtmlRenderer.php(238): Drupal\Core\Render\Renderer->render()
#53 /home/xxxx/public_html/core/lib/Drupal/Core/Render/Renderer.php(638): Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}()
#54 /home/xxxx/public_html/core/lib/Drupal/Core/Render/MainContent/HtmlRenderer.php(231): Drupal\Core\Render\Renderer->executeInRenderContext()
#55 /home/xxxx/public_html/core/lib/Drupal/Core/Render/MainContent/HtmlRenderer.php(128): Drupal\Core\Render\MainContent\HtmlRenderer->prepare()
#56 /home/xxxx/public_html/core/lib/Drupal/Core/EventSubscriber/MainContentViewSubscriber.php(90): Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse()
#57 [internal function]: Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray()
#58 /home/xxxx/public_html/core/lib/Drupal/Component/EventDispatcher/ContainerAwareEventDispatcher.php(111): call_user_func()
#59 /home/xxxx/public_html/vendor/symfony/http-kernel/HttpKernel.php(186): Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch()
#60 /home/xxxx/public_html/vendor/symfony/http-kernel/HttpKernel.php(76): Symfony\Component\HttpKernel\HttpKernel->handleRaw()
#61 /home/xxxx/public_html/core/lib/Drupal/Core/StackMiddleware/Session.php(53): Symfony\Component\HttpKernel\HttpKernel->handle()
#62 /home/xxxx/public_html/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(48): Drupal\Core\StackMiddleware\Session->handle()
#63 /home/xxxx/public_html/core/lib/Drupal/Core/StackMiddleware/ContentLength.php(28): Drupal\Core\StackMiddleware\KernelPreHandle->handle()
#64 /home/xxxx/public_html/core/modules/big_pipe/src/StackMiddleware/ContentLength.php(32): Drupal\Core\StackMiddleware\ContentLength->handle()
#65 /home/xxxx/public_html/core/modules/page_cache/src/StackMiddleware/PageCache.php(116): Drupal\big_pipe\StackMiddleware\ContentLength->handle()
#66 /home/xxxx/public_html/core/modules/page_cache/src/StackMiddleware/PageCache.php(90): Drupal\page_cache\StackMiddleware\PageCache->pass()
#67 /home/xxxx/public_html/core/modules/ban/src/BanMiddleware.php(50): Drupal\page_cache\StackMiddleware\PageCache->handle()
#68 /home/xxxx/public_html/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(48): Drupal\ban\BanMiddleware->handle()
#69 /home/xxxx/public_html/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(51): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle()
#70 /home/xxxx/public_html/core/lib/Drupal/Core/StackMiddleware/AjaxPageState.php(36): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle()
#71 /home/xxxx/public_html/core/lib/Drupal/Core/StackMiddleware/StackedHttpKernel.php(51): Drupal\Core\StackMiddleware\AjaxPageState->handle()
#72 /home/xxxx/public_html/core/lib/Drupal/Core/DrupalKernel.php(741): Drupal\Core\StackMiddleware\StackedHttpKernel->handle()
#73 /home/xxxx/public_html/index.php(21): Drupal\Core\DrupalKernel->handle()
#74 {main}
The form with exact same settings (smtp authentication, antibot, honeypot and stopforumspam applied) sending set up worked perfectly fine in Drupal 9, both in logged in and logged out status. Now in Drupal 10 all settings work fine when logged in, not when logged out..
As this form is on a site with high traffic and high numbers of forms being submitted this is a rather crucial issue..
All ideas and help will be immensely appreciated!