Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Messenger causes Notice: unserialize(): Error at offset 20266 of 22557 bytes in web profiler #30014

Closed
Arkemlar opened this issue Jan 29, 2019 · 12 comments

Comments

@Arkemlar
Copy link

Symfony version(s) affected: 4.2.2
PHP 7.3.1

Description
When exception is thrown inside of message handler, then web debug toolbar explodes with Notice: unserialize(): Error at offset 20266 of 22557 bytes error (the numbers differs for different exception cases).

How to reproduce

  1. Install fresh message component via composer
  2. Add very simple message class and its handler, then add throw new \Exception() inside hanler
  3. You will see regular exception window on the page about your thrown exception, but if you try to access /_profiler/latest you will see exception page with Notice: unserialize(): Error at offset ... instead of web profiler UI. See attached screenshots.

Possible Solution
Have no solution atm but found similar exception related to other component which contains thoughts about why it happens. #29459

Additional context
Exception screenshot
image

Full serialization data copied form exception page which caused an error
DataCollector->unserialize('a:2:{s:8:"messages";a:1:{i:0;O:39:"Symfony\\Component\\VarDumper\\Cloner\\Data":6:{s:45:"' . "\0" . 'Symfony\\Component\\VarDumper\\Cloner\\Data' . "\0" . 'data";a:35:{i:0;a:1:{i:0;a:1:{i:1;i:1;}}i:1;a:5:{s:3:"bus";s:21:"messenger.bus.default";s:6:"stamps";a:0:{}s:7:"message";a:1:{i:1;i:2;}s:6:"caller";a:1:{i:1;i:3;}s:9:"exception";a:1:{i:1;i:4;}}i:2;a:2:{s:4:"type";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":297:{a:8:{i:0;s:0:"";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:42:"App\\MessageQueue\\Message\\UpdateSearchIndex";i:5;i:0;i:6;i:0;i:7;a:5:{s:8:"ellipsis";i:18;s:13:"ellipsis-type";s:5:"class";s:13:"ellipsis-tail";i:1;s:4:"file";s:63:"/application/php/src/MessageQueue/Message/UpdateSearchIndex.php";s:4:"line";i:10;}}}s:5:"value";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":118:{a:8:{i:0;s:42:"App\\MessageQueue\\Message\\UpdateSearchIndex";i:1;i:5;i:2;i:0;i:3;i:4;i:4;N;i:5;i:935;i:6;i:3;i:7;a:0:{}}}}i:3;a:3:{s:4:"name";s:16:"CreateAction.php";s:4:"file";s:60:"/application/php/src/Api/Actions/Map/Sector/CreateAction.php";s:4:"line";i:108;}i:4;a:2:{s:4:"type";s:9:"Exception";s:5:"value";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":84:{a:8:{i:0;s:9:"Exception";i:1;i:6;i:2;i:0;i:3;i:4;i:4;N;i:5;i:961;i:6;i:0;i:7;a:0:{}}}}i:5;a:2:{s:50:"' . "\0" . 'App\\MessageQueue\\Message\\UpdateSearchIndex' . "\0" . 'sector";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":98:{a:8:{i:0;s:21:"App\\Entity\\Map\\Sector";i:1;i:0;i:2;i:-1;i:3;i:4;i:4;N;i:5;i:472;i:6;i:0;i:7;a:0:{}}}s:50:"' . "\0" . 'App\\MessageQueue\\Message\\UpdateSearchIndex' . "\0" . 'action";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":118:{a:8:{i:0;s:41:"App\\Infrastructure\\Enumiration\\CrudAction";i:1;i:0;i:2;i:-1;i:3;i:4;i:4;N;i:5;i:937;i:6;i:0;i:7;a:0:{}}}}i:6;a:5:{s:10:"' . "\0" . '*' . "\0" . 'message";s:0:"";s:7:"' . "\0" . '*' . "\0" . 'code";i:0;s:7:"' . "\0" . '*' . "\0" . 'file";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":331:{a:8:{i:0;s:0:"";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:70:"/application/php/src/MessageQueue/Handler/UpdateSearchIndexHandler.php";i:5;i:0;i:6;i:0;i:7;a:5:{s:4:"line";i:30;s:4:"file";s:70:"/application/php/src/MessageQueue/Handler/UpdateSearchIndexHandler.php";s:8:"ellipsis";i:54;s:13:"ellipsis-type";s:4:"path";s:13:"ellipsis-tail";i:1;}}}s:7:"' . "\0" . '*' . "\0" . 'line";i:30;s:8:"' . "\0" . '~' . "\0" . 'trace";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":73:{a:8:{i:0;s:0:"";i:1;i:7;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}}i:7;a:14:{s:179:"' . "\0" . '~separator= &title=Stack level 14.&collapse=0&separator= &ellipsis-type=path&ellipsis=57&ellipsis-tail=1' . "\0" . '/application/php/src/MessageQueue/Handler/UpdateSearchIndexHandler.php:30";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":73:{a:8:{i:0;s:0:"";i:1;i:8;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}s:190:"' . "\0" . '~separator= &title=Stack level 13.&collapse=1&separator= &ellipsis-type=path&ellipsis=60&ellipsis-tail=19' . "\0" . '/application/php/vendor/symfony/messenger/Middleware/HandleMessageMiddleware.php:45";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":73:{a:8:{i:0;s:0:"";i:1;i:9;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}s:188:"' . "\0" . '~separator= &title=Stack level 12.&collapse=1&separator= &ellipsis-type=path&ellipsis=58&ellipsis-tail=19' . "\0" . '/application/php/vendor/symfony/messenger/Middleware/SendMessageMiddleware.php:51";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:10;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}s:184:"' . "\0" . '~separator= &title=Stack level 11.&collapse=1&separator= &ellipsis-type=path&ellipsis=54&ellipsis-tail=19' . "\0" . '/application/php/vendor/symfony/messenger/Middleware/LoggingMiddleware.php:44";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:11;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}s:186:"' . "\0" . '~separator= &title=Stack level 10.&collapse=1&separator= &ellipsis-type=path&ellipsis=56&ellipsis-tail=19' . "\0" . '/application/php/vendor/symfony/messenger/Middleware/TraceableMiddleware.php:45";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:12;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}s:165:"' . "\0" . '~separator= &title=Stack level 9.&collapse=1&separator= &ellipsis-type=path&ellipsis=36&ellipsis-tail=19' . "\0" . '/application/php/vendor/symfony/messenger/MessageBus.php:73";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:13;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}s:174:"' . "\0" . '~separator= &title=Stack level 8.&collapse=1&separator= &ellipsis-type=path&ellipsis=45&ellipsis-tail=19' . "\0" . '/application/php/vendor/symfony/messenger/TraceableMessageBus.php:43";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:14;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}s:169:"' . "\0" . '~separator= &title=Stack level 7.&collapse=1&separator= &ellipsis-type=path&ellipsis=48&ellipsis-tail=1' . "\0" . '/application/php/src/Api/Actions/Map/Sector/CreateAction.php:108";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:15;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}s:154:"' . "\0" . '~separator= &title=Stack level 6.&collapse=1&separator= &ellipsis-type=path&ellipsis=33&ellipsis-tail=1' . "\0" . '/application/php/src/Api/ApiRequestHandler.php:59";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:16;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}s:168:"' . "\0" . '~separator= &title=Stack level 5.&collapse=1&separator= &ellipsis-type=path&ellipsis=47&ellipsis-tail=1' . "\0" . '/application/php/src/Api/Actions/Map/Sector/CreateAction.php:79";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:17;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}s:168:"' . "\0" . '~separator= &title=Stack level 4.&collapse=1&separator= &ellipsis-type=path&ellipsis=39&ellipsis-tail=21' . "\0" . '/application/php/vendor/symfony/http-kernel/HttpKernel.php:150";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:18;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}s:167:"' . "\0" . '~separator= &title=Stack level 3.&collapse=1&separator= &ellipsis-type=path&ellipsis=38&ellipsis-tail=21' . "\0" . '/application/php/vendor/symfony/http-kernel/HttpKernel.php:67";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:19;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}s:164:"' . "\0" . '~separator= &title=Stack level 2.&collapse=1&separator= &ellipsis-type=path&ellipsis=35&ellipsis-tail=21' . "\0" . '/application/php/vendor/symfony/http-kernel/Kernel.php:198";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:20;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}s:141:"' . "\0" . '~separator= &title=Stack level 1.&collapse=1&separator= &ellipsis-type=path&ellipsis=20&ellipsis-tail=1' . "\0" . '/application/php/public/index.php:27";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:21;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}}i:8;a:3:{s:20:"' . "\0" . '~separator=› &29' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":111:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:5:" {";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &30' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":309:{a:8:{i:0;s:28:"	throw new \\Exception();";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:75:"in App\\MessageQueue\\Handler\\UpdateSearchIndexHandler->__invoke() on line 30";i:5;i:0;i:6;i:0;i:7;a:3:{s:4:"file";s:70:"/application/php/src/MessageQueue/Handler/UpdateSearchIndexHandler.php";s:4:"line";i:30;s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &31' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":156:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:49:"	switch ($message->getAction()->getValue()) {";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}}i:9;a:4:{s:20:"' . "\0" . '~separator=› &44' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":187:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:80:"foreach ($this->handlersLocator->getHandlers($envelope) as $alias => $handler) {";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &45' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":429:{a:8:{i:0;s:126:" $envelope = $envelope->with(HandledStamp::fromCallable($handler, $handler($message), \\is_string($alias) ? $alias : null));";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:86:"in Symfony\\Component\\Messenger\\Middleware\\HandleMessageMiddleware->handle() on line 45";i:5;i:0;i:6;i:0;i:7;a:3:{s:4:"file";s:80:"/application/php/vendor/symfony/messenger/Middleware/HandleMessageMiddleware.php";s:4:"line";i:45;s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &46' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":107:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:1:"}";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:12:"' . "\0" . '~' . "\0" . 'arguments";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:22;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}}i:10;a:4:{s:20:"' . "\0" . '~separator=› &50' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":141:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:34:"if (null === $sender || $handle) {";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &51' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":351:{a:8:{i:0;s:53:" return $stack->next()->handle($envelope, $stack);";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:84:"in Symfony\\Component\\Messenger\\Middleware\\SendMessageMiddleware->handle() on line 51";i:5;i:0;i:6;i:0;i:7;a:3:{s:4:"file";s:78:"/application/php/vendor/symfony/messenger/Middleware/SendMessageMiddleware.php";s:4:"line";i:51;s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &52' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":107:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:1:"}";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:12:"' . "\0" . '~' . "\0" . 'arguments";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:23;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}}i:11;a:4:{s:20:"' . "\0" . '~separator=› &43' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":111:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:5:"try {";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &44' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":348:{a:8:{i:0;s:58:" $envelope = $stack->next()->handle($envelope, $stack);";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:80:"in Symfony\\Component\\Messenger\\Middleware\\LoggingMiddleware->handle() on line 44";i:5;i:0;i:6;i:0;i:7;a:3:{s:4:"file";s:74:"/application/php/vendor/symfony/messenger/Middleware/LoggingMiddleware.php";s:4:"line";i:44;s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &45' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":132:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:25:"} catch (\\Throwable $e) {";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:12:"' . "\0" . '~' . "\0" . 'arguments";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:24;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}}i:12;a:4:{s:20:"' . "\0" . '~separator=› &44' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":111:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:5:"try {";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &45' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":347:{a:8:{i:0;s:53:" return $stack->next()->handle($envelope, $stack);";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:82:"in Symfony\\Component\\Messenger\\Middleware\\TraceableMiddleware->handle() on line 45";i:5;i:0;i:6;i:0;i:7;a:3:{s:4:"file";s:76:"/application/php/vendor/symfony/messenger/Middleware/TraceableMiddleware.php";s:4:"line";i:45;s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &46' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":118:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:11:"} finally {";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:12:"' . "\0" . '~' . "\0" . 'arguments";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:25;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}}i:13;a:4:{s:20:"' . "\0" . '~separator=› &72' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":106:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:0:"";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &73' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":325:{a:8:{i:0;s:69:" return $middlewareIterator->current()->handle($envelope, $stack);";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:64:"in Symfony\\Component\\Messenger\\MessageBus->dispatch() on line 73";i:5;i:0;i:6;i:0;i:7;a:3:{s:4:"file";s:56:"/application/php/vendor/symfony/messenger/MessageBus.php";s:4:"line";i:73;s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &74' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":107:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:1:"}";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:12:"' . "\0" . '~' . "\0" . 'arguments";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:26;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}}i:14;a:4:{s:20:"' . "\0" . '~separator=› &42' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":111:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:5:"try {";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &43' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":325:{a:8:{i:0;s:51:" return $this->decoratedBus->dispatch($message);";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:73:"in Symfony\\Component\\Messenger\\TraceableMessageBus->dispatch() on line 43";i:5;i:0;i:6;i:0;i:7;a:3:{s:4:"file";s:65:"/application/php/vendor/symfony/messenger/TraceableMessageBus.php";s:4:"line";i:43;s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &44' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":132:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:25:"} catch (\\Throwable $e) {";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:12:"' . "\0" . '~' . "\0" . 'arguments";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:27;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}}i:15;a:4:{s:21:"' . "\0" . '~separator=› &107' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":106:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:0:"";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:21:"' . "\0" . '~separator=› &108' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":326:{a:8:{i:0;s:64:"$this->messageBus->dispatch(UpdateSearchIndex::created($entry));";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:65:"in App\\Api\\Actions\\Map\\Sector\\CreateAction->execute() on line 108";i:5;i:0;i:6;i:0;i:7;a:3:{s:4:"file";s:60:"/application/php/src/Api/Actions/Map/Sector/CreateAction.php";s:4:"line";i:108;s:4:"lang";s:3:"php";}}}s:21:"' . "\0" . '~separator=› &109' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":106:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:0:"";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:12:"' . "\0" . '~' . "\0" . 'arguments";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:28;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}}i:16;a:4:{s:20:"' . "\0" . '~separator=› &58' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":111:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:5:"try {";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &59' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":296:{a:8:{i:0;s:58:" $output = $action->execute($data, $request, $context);";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:56:"in App\\Api\\ApiRequestHandler->handleRequest() on line 59";i:5;i:0;i:6;i:0;i:7;a:3:{s:4:"file";s:46:"/application/php/src/Api/ApiRequestHandler.php";s:4:"line";i:59;s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &60' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":139:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:32:"} catch (Exception $exception) {";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:12:"' . "\0" . '~' . "\0" . 'arguments";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:29;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}}i:17;a:4:{s:20:"' . "\0" . '~separator=› &78' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":107:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:1:"{";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &79' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":323:{a:8:{i:0;s:62:" return $apiRequestHandler->handleRequest($request, $this);";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:65:"in App\\Api\\Actions\\Map\\Sector\\CreateAction->__invoke() on line 79";i:5;i:0;i:6;i:0;i:7;a:3:{s:4:"file";s:60:"/application/php/src/Api/Actions/Map/Sector/CreateAction.php";s:4:"line";i:79;s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &80' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":107:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:1:"}";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:12:"' . "\0" . '~' . "\0" . 'arguments";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:30;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}}i:18;a:4:{s:21:"' . "\0" . '~separator=› &149' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":125:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:18:"// call controller";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:21:"' . "\0" . '~separator=› &150' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":301:{a:8:{i:0;s:39:"$response = $controller(...$arguments);";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:67:"in Symfony\\Component\\HttpKernel\\HttpKernel->handleRaw() on line 150";i:5;i:0;i:6;i:0;i:7;a:3:{s:4:"file";s:58:"/application/php/vendor/symfony/http-kernel/HttpKernel.php";s:4:"line";i:150;s:4:"lang";s:3:"php";}}}s:21:"' . "\0" . '~separator=› &151' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":106:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:0:"";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:12:"' . "\0" . '~' . "\0" . 'arguments";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:31;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}}i:19;a:4:{s:20:"' . "\0" . '~separator=› &66' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":111:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:5:"try {";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &67' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":302:{a:8:{i:0;s:45:" return $this->handleRaw($request, $type);";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:63:"in Symfony\\Component\\HttpKernel\\HttpKernel->handle() on line 67";i:5;i:0;i:6;i:0;i:7;a:3:{s:4:"file";s:58:"/application/php/vendor/symfony/http-kernel/HttpKernel.php";s:4:"line";i:67;s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &68' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":132:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:25:"} catch (\\Exception $e) {";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:12:"' . "\0" . '~' . "\0" . 'arguments";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:32;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}}i:20;a:4:{s:21:"' . "\0" . '~separator=› &197' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":111:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:5:"try {";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:21:"' . "\0" . '~separator=› &198' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":318:{a:8:{i:0;s:67:" return $this->getHttpKernel()->handle($request, $type, $catch);";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:60:"in Symfony\\Component\\HttpKernel\\Kernel->handle() on line 198";i:5;i:0;i:6;i:0;i:7;a:3:{s:4:"file";s:54:"/application/php/vendor/symfony/http-kernel/Kernel.php";s:4:"line";i:198;s:4:"lang";s:3:"php";}}}s:21:"' . "\0" . '~separator=› &199' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":118:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:11:"} finally {";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:12:"' . "\0" . '~' . "\0" . 'arguments";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:33;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}}i:21;a:4:{s:20:"' . "\0" . '~separator=› &26' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":147:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:40:"$request = Request::createFromGlobals();";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &27' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":223:{a:8:{i:0;s:38:"$response = $kernel->handle($request);";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:16:"in () on line 27";i:5;i:0;i:6;i:0;i:7;a:3:{s:4:"file";s:33:"/application/php/public/index.php";s:4:"line";i:27;s:4:"lang";s:3:"php";}}}s:20:"' . "\0" . '~separator=› &28' . "\0" . '";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":125:{a:8:{i:0;s:7:"default";i:1;i:0;i:2;i:0;i:3;i:1;i:4;s:18:"$response->send();";i:5;i:0;i:6;i:0;i:7;a:1:{s:4:"lang";s:3:"php";}}}s:12:"' . "\0" . '~' . "\0" . 'arguments";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":74:{a:8:{i:0;s:0:"";i:1;i:34;i:2;i:0;i:3;i:4;i:4;N;i:5;i:0;i:6;i:0;i:7;a:0:{}}}}i:22;a:1:{s:11:"' . "\0" . '~' . "\0" . '$message";r:6448;}i:23;a:2:{s:12:"' . "\0" . '~' . "\0" . '$envelope";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":113:{a:8:{i:0;s:36:"Symfony\\Component\\Messenger\\Envelope";i:1;i:0;i:2;i:-1;i:3;i:4;i:4;N;i:5;i:939;i:6;i:3;i:7;a:0:{}}}s:9:"' . "\0" . '~' . "\0" . '$stack";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":130:{a:8:{i:0;s:53:"Symfony\\Component\\Messenger\\Middleware\\TraceableStack";i:1;i:0;i:2;i:-1;i:3;i:4;i:4;N;i:5;i:943;i:6;i:3;i:7;a:0:{}}}}i:24;a:2:{s:12:"' . "\0" . '~' . "\0" . '$envelope";r:7302;s:9:"' . "\0" . '~' . "\0" . '$stack";r:7312;}i:25;a:2:{s:12:"' . "\0" . '~' . "\0" . '$envelope";r:7302;s:9:"' . "\0" . '~' . "\0" . '$stack";r:7312;}i:26;a:2:{s:12:"' . "\0" . '~' . "\0" . '$envelope";r:7302;s:9:"' . "\0" . '~' . "\0" . '$stack";r:7312;}i:27;a:1:{s:11:"' . "\0" . '~' . "\0" . '$message";r:6448;}i:28;a:1:{s:11:"' . "\0" . '~' . "\0" . '$message";r:6448;}i:29;a:3:{s:8:"' . "\0" . '~' . "\0" . '$data";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":72:{a:8:{i:0;i:1;i:1;i:0;i:2;i:5;i:3;i:3;i:4;i:5;i:5;i:0;i:6;i:0;i:7;a:0:{}}}s:11:"' . "\0" . '~' . "\0" . '$request";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":116:{a:8:{i:0;s:40:"Symfony\\Component\\HttpFoundation\\Request";i:1;i:0;i:2;i:-1;i:3;i:4;i:4;N;i:5;i:11;i:6;i:5;i:7;a:0:{}}}s:11:"' . "\0" . '~' . "\0" . '$context";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":72:{a:8:{i:0;i:1;i:1;i:0;i:2;i:0;i:3;i:3;i:4;i:0;i:5;i:0;i:6;i:0;i:7;a:0:{}}}}i:30;a:2:{s:11:"' . "\0" . '~' . "\0" . '$request";r:7346;s:10:"' . "\0" . '~' . "\0" . '$action";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":115:{a:8:{i:0;s:39:"App\\Api\\Actions\\Map\\Sector\\CreateAction";i:1;i:0;i:2;i:-1;i:3;i:4;i:4;N;i:5;i:53;i:6;i:0;i:7;a:0:{}}}}i:31;a:2:{s:11:"' . "\0" . '~' . "\0" . '$request";r:7346;s:21:"' . "\0" . '~' . "\0" . '$apiRequestHandler";C:39:"Symfony\\Component\\VarDumper\\Cloner\\Stub":102:{a:8:{i:0;s:25:"App\\Api\\ApiRequestHandler";i:1;i:0;i:2;i:-1;i:3;i:4;i:4;N;i:5;i:468;i:6;i:0;i:7;a:0:{}}}}i:32;a:2:{s:11:"' . "\0" . '~' . "\0" . '$request";r:7346;s:8:"' . "\0" . '~' . "\0" . '$type";i:1;}i:33;a:3:{s:11:"' . "\0" . '~' . "\0" . '$request";r:7346;s:8:"' . "\0" . '~' . "\0" . '$type";i:1;s:9:"' . "\0" . '~' . "\0" . '$catch";b:1;}i:34;a:1:{s:11:"' . "\0" . '~' . "\0" . '$request";r:7346;}}s:49:"' . "\0" . 'Symfony\\Component\\VarDumper\\Cloner\\Data' . "\0" . 'position";i:0;s:44:"' . "\0" . 'Symfony\\Component\\VarDumper\\Cloner\\Data' . "\0" . 'key";i:0;s:49:"' . "\0" . 'Symfony\\Component\\VarDumper\\Cloner\\Data' . "\0" . 'maxDepth";i:20;s:57:"' . "\0" . 'Symfony\\Component\\VarDumper\\Cloner\\Data' . "\0" . 'maxItemsPerDepth";i:-1;s:54:"' . "\0" . 'Symfony\\Component\\VarDumper\\Cloner\\Data' . "\0" . 'useRefHandles";i:-1;}}s:5:"buses";a:1:{i:0;s:21:"messenger.bus.default";}}')
@nicolas-grekas
Copy link
Member

Just fixed :)

@Arkemlar
Copy link
Author

Arkemlar commented Jan 29, 2019

@nicolas-grekas I need to switch to master branch to get it, right? Also could you add the link to fix PR please?

@Arkemlar
Copy link
Author

Arkemlar commented Jan 29, 2019

@nicolas-grekas I found that last PR #29958 but it is NOT fixed.

I just pulled messenger as
"symfony/messenger": "dev-master#0c0e9cfc2fd50a5b6e242204c80855f2f385f9cb",
which is last commit that relates to PR linked above. The bug still exists. Also by reading this last PR changes I made a conclusion that it is not something that might fix this bug.

Im not sure, but according to #29951 I think the wrong code is in vendor/symfony/http-kernel/DataCollector/DataCollector.php :

    public function serialize()
    {
        return serialize($this->data);
    }
    public function unserialize($data)
    {
        $this->data = unserialize($data);
    }

because calling serialize() inside another serialize() and accordingly unserialize() inside unserialize() is not supported in php 7.3

@nicolas-grekas
Copy link
Member

The fix is not in Messenger, see the stack trace you posted, it's about HttpKernel.
Here is the commit that should fix it: 3cfb558

@Arkemlar
Copy link
Author

Arkemlar commented Jan 29, 2019

Ok, just updated to the latest commit
"symfony/http-kernel": "dev-master#2934e58a55de86d8b32ee7c2ecd065b7bb68dcf8",
but still 😞 The same error, not solved. The only thing helps is fallback to php7.2.

@nicolas-grekas
Copy link
Member

Then I'd need to know which concrete data collector throws that. (DataCollector in HttpKernel is abstract)

@Arkemlar
Copy link
Author

It is Symfony\Component\Messenger\DataCollector\MessengerDataCollector

@nicolas-grekas
Copy link
Member

Can you cherry-pick the patch in #30026 and see how it goes?

nicolas-grekas added a commit that referenced this issue Jan 30, 2019
…rekas)

This PR was merged into the 3.4 branch.

Discussion
----------

[VarDumper] dont implement Serializable in Stub

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #30014
| License       | MIT
| Doc PR        | -

`Serializable` is really really broken...

Commits
-------

73070d7 [VarDumper] dont implement Serializable in Stub
@takeit
Copy link
Contributor

takeit commented Mar 27, 2019

I get the same error in DataCollector in HttpKernel (using PHP 7.3, latest SF including the fixes mentioned here) when I call $client->getProfile()->getCollector('swiftmailer') in the tests. Looks like https://github.com/symfony/swiftmailer-bundle/blob/master/DataCollector/MessageDataCollector.php is making problems. Any idea how to fix it?

@yasasn86
Copy link

yasasn86 commented May 7, 2019

For now I put a try catch block in the unserialize method in DataCollector class. otherwise debug toolbar doen't appear

public function unserialize($data)
{
try{
$this->data = \is_array($data) ? $data : unserialize($data);
}catch (\Exception $e) {};
}

@teohhanhui
Copy link
Contributor

teohhanhui commented Jul 9, 2019

I have a similar issue, also in Symfony\Component\Messenger\DataCollector\MessengerDataCollector.

symfony/messenger, symfony/http-kernel and symfony/var-dumper are all v4.2.9.

PHP's unserialize function was called from DataCollector with this binary string: https://drive.google.com/file/d/1Jo0BSTOSWDZ3U194xaF4tGliIZrcui6l/view?usp=sharing

This results in:

PHP Notice: unserialize(): Error at offset 53530 of 62603 bytes

The relevant part for the failure:

{s:24:"�~�$passwordResetRequest";r:12831;}

It is trying to reference an object (with object id 12831) which does not exist.

Some relevant code: https://gist.github.com/teohhanhui/7925dd436175dcc71881127803016f7d

@mmarquez
Copy link

mmarquez commented Jun 3, 2020

I get the same error after getting a Symfony\Component\Debug\Exception\ FatalThrowableError exception. I was wrong writing the parameters of updateAttribute in classes/Product.php.

I had to change the PHP version to see the exceptions details.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

8 participants