I updated from 1.06 to 1.13 and was no longer able to view anything related to Taxonomy. Even when trying to list the taxonomy terms on the admin section, I received a fatal error. I was able to list the taxonomy vocabulary names, but not the terms for each.
If I was using a debugger I received the following message: Fatal error: Maximum function nesting level of '256' reached, aborting
If I was not using a debugger I received the following message: Fatal error: Allowed memory size of 1073741824 bytes exhausted (tried to allocate 20480 bytes)
For the record, this is a dev machine & the bytes were cranked up to help prove this was an infinite loop.
With help, I was able to get Drupal working by commenting out the lightning_core_entity_load function.
The following is a partial stack trace (since this is an infinite loop) of trying to list the terms in the admin structure page:
# Time Memory Function Location
1 0.0030 357528 {main}( ) ...\index.php:0
2 0.0140 384760 Drupal\Core\DrupalKernel->handle( ) ...\index.php:19
3 0.0440 1430840 Stack\StackedHttpKernel->handle( ) ...\DrupalKernel.php:652
4 0.0440 1430840 Drupal\Core\StackMiddleware\NegotiationMiddleware->handle( ) ...\StackedHttpKernel.php:23
5 0.0440 1430840 Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle( ) ...\NegotiationMiddleware.php:50
6 0.0440 1430840 Drupal\page_cache\StackMiddleware\PageCache->handle( ) ...\ReverseProxyMiddleware.php:47
7 0.0440 1432784 Drupal\page_cache\StackMiddleware\PageCache->pass( ) ...\PageCache.php:78
8 0.0440 1432784 Drupal\Core\StackMiddleware\KernelPreHandle->handle( ) ...\PageCache.php:99
9 0.0620 1774112 Drupal\Core\StackMiddleware\Session->handle( ) ...\KernelPreHandle.php:47
10 0.0750 1807568 Symfony\Component\HttpKernel\HttpKernel->handle( ) ...\Session.php:57
11 0.0750 1807872 Symfony\Component\HttpKernel\HttpKernel->handleRaw( ) ...\HttpKernel.php:62
12 0.2610 3944856 call_user_func_array:{C:\Users\username\DevLocal\DevDesktop\basinmembers-dev\docroot\vendor\symfony\http-kernel\HttpKernel.php:139} ( ) ...\HttpKernel.php:139
13 0.2610 3944912 Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}( ) ...\HttpKernel.php:139
14 0.2610 3944912 Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext( ) ...\EarlyRenderingControllerWrapperSubscriber.php:97
15 0.2610 3946656 Drupal\Core\Render\Renderer->executeInRenderContext( ) ...\EarlyRenderingControllerWrapperSubscriber.php:124
16 0.2610 3946936 Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}( ) ...\Renderer.php:574
17 0.2610 3946936 call_user_func_array:{C:\Users\username\DevLocal\DevDesktop\basinmembers-dev\docroot\core\lib\Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber.php:123} ( ) ...\EarlyRenderingControllerWrapperSubscriber.php:123
18 0.2610 3947240 Drupal\Core\Controller\FormController->getContentResult( ) ...\EarlyRenderingControllerWrapperSubscriber.php:123
19 0.2770 4078936 Drupal\Core\Form\FormBuilder->buildForm( ) ...\FormController.php:74
20 0.2770 4078960 Drupal\Core\Form\FormBuilder->retrieveForm( ) ...\FormBuilder.php:271
21 0.2770 4081384 call_user_func_array:{C:\Users\username\DevLocal\DevDesktop\basinmembers-dev\docroot\core\lib\Drupal\Core\Form\FormBuilder.php:514} ( ) ...\FormBuilder.php:514
22 0.2770 4081704 Drupal\taxonomy\Form\OverviewTerms->buildForm( ) ...\FormBuilder.php:514
23 0.2830 4083656 Drupal\taxonomy\TermStorage->loadTree( ) ...\OverviewTerms.php:108
24 0.2840 4144424 Drupal\Core\Entity\EntityStorageBase->loadMultiple( ) ...\TermStorage.php:226
25 0.3670 5541192 Drupal\Core\Entity\EntityStorageBase->postLoad( ) ...\EntityStorageBase.php:249
26 0.3670 5541512 lightning_core_entity_load( ) ...\EntityStorageBase.php:301
27 0.3710 5563488 Drupal\Core\Url->getInternalPath( ) ...\lightning_core.module:62
28 0.3710 5563488 Drupal\Core\Render\MetadataBubblingUrlGenerator->getPathFromRoute( ) ...\Url.php:772
29 0.3710 5563488 Drupal\Core\Routing\UrlGenerator->getPathFromRoute( ) ...\MetadataBubblingUrlGenerator.php:68
30 0.3710 5633832 Drupal\Core\Routing\UrlGenerator->processRoute( ) ...\UrlGenerator.php:123
31 0.3710 5633832 Drupal\Core\RouteProcessor\RouteProcessorManager->processOutbound( ) ...\UrlGenerator.php:404
32 0.3710 5634128 Drupal\uc_catalog\Access\RouteProcessor->processOutbound( ) ...\RouteProcessorManager.php:52
33 0.3730 5635752 Drupal\Core\Entity\EntityStorageBase->load( ) ...\RouteProcessor.php:49
34 0.3730 5636024 Drupal\Core\Entity\EntityStorageBase->loadMultiple( ) ...\EntityStorageBase.php:212
35 0.3730 5645824 Drupal\Core\Entity\EntityStorageBase->postLoad( ) ...\EntityStorageBase.php:249
36 0.3730 5646144 lightning_core_entity_load( ) ...\EntityStorageBase.php:301
37 0.3730 5653096 Drupal\Core\Url->getInternalPath( ) ...\lightning_core.module:62
38 0.3730 5653096 Drupal\Core\Render\MetadataBubblingUrlGenerator->getPathFromRoute( ) ...\Url.php:772
39 0.3730 5653096 Drupal\Core\Routing\UrlGenerator->getPathFromRoute( ) ...\MetadataBubblingUrlGenerator.php:68
40 0.3730 5653312 Drupal\Core\Routing\UrlGenerator->processRoute( ) ...\UrlGenerator.php:123
41 0.3730 5653312 Drupal\Core\RouteProcessor\RouteProcessorManager->processOutbound( ) ...\UrlGenerator.php:404
42 0.3730 5653312 Drupal\uc_catalog\Access\RouteProcessor->processOutbound( ) ...\RouteProcessorManager.php:52
43 0.3730 5653312 Drupal\Core\Entity\EntityStorageBase->load( ) ...\RouteProcessor.php:49
44 0.3730 5653584 Drupal\Core\Entity\EntityStorageBase->loadMultiple( ) ...\EntityStorageBase.php:212
45 0.3730 5663384 Drupal\Core\Entity\EntityStorageBase->postLoad( ) ...\EntityStorageBase.php:249
46 0.3730 5663704 lightning_core_entity_load( ) ...\EntityStorageBase.php:301
47 0.3740 5666560 Drupal\Core\Url->getInternalPath( ) ...\lightning_core.module:62
48 0.3740 5666560 Drupal\Core\Render\MetadataBubblingUrlGenerator->getPathFromRoute( ) ...\Url.php:772
49 0.3740 5666560 Drupal\Core\Routing\UrlGenerator->getPathFromRoute( ) ...\MetadataBubblingUrlGenerator.php:68
50 0.3740 5666776 Drupal\Core\Routing\UrlGenerator->processRoute( ) ...\UrlGenerator.php:123
51 0.3740 5666776 Drupal\Core\RouteProcessor\RouteProcessorManager->processOutbound( ) ...\UrlGenerator.php:404
52 0.3740 5666776 Drupal\uc_catalog\Access\RouteProcessor->processOutbound( ) ...\RouteProcessorManager.php:52
53 0.3740 5666776 Drupal\Core\Entity\EntityStorageBase->load( ) ...\RouteProcessor.php:49
54 0.3740 5667048 Drupal\Core\Entity\EntityStorageBase->loadMultiple( ) ...\EntityStorageBase.php:212
55 0.3740 5676848 Drupal\Core\Entity\EntityStorageBase->postLoad( ) ...\EntityStorageBase.php:249
56 0.3740 5677168 lightning_core_entity_load( ) ...\EntityStorageBase.php:301
57 0.3740 5680024 Drupal\Core\Url->getInternalPath( ) ...\lightning_core.module:62
58 0.3740 5680024 Drupal\Core\Render\MetadataBubblingUrlGenerator->getPathFromRoute( ) ...\Url.php:772
The above stack trace would repeat until it hits whatever the threshold for nested functions or memory is.
Comment | File | Size | Author |
---|---|---|---|
#9 | 2831550-9.patch | 1.64 KB | phenaproxima |
Comments
Comment #2
balsamaHi Matt. Did you enable the lightning_preview module after updating to 1.13 (lightning_preview was introduced in 1.10). That module relies on multiversion and a number of experimental modules - and is marked experimental itself. And issues like these with existing content are expected. Can you try updating without turning on lightning_preview?
If you _don't_ have lightning_preview enabled, I'd be interested to know more about the structure of your vocabulary. Custom fields, etc so I can try to reproduce.
Comment #3
mattferderer CreditAttribution: mattferderer commentedI have not enabled lightning_preview at any time.
At first I thought it was an issue with my terms as well but I created a new vocabulary set without any additional fields. The issue existed when trying to view those terms as well.
Comment #4
balsamaOk. So steps to reproduce sound like simply: 1) have a vocabulary and some terms 2) update
I'll see if I can find anything. Thanks.
Comment #5
phenaproximaI can't reproduce this. Here's what I did:
It worked without complaint. I was logged in as user 1 at the time. Something else may be going on here -- is it possible there is custom code that's breaking stuff?
Comment #6
mattferderer CreditAttribution: mattferderer commentedIt's possible another module may be causing part of the issue or maybe a database issue. Would that other module's function show up in the stack trace? Any suggestions on next steps in troubleshooting?
Comment #7
phenaproximaI think the problem is down to this line of the backtrace:
Drupal\uc_catalog\Access\RouteProcessor->processOutbound( )
It is probably doing an entity load, which in turn is invoking Lightning's entity_load, which is causing the infinite loop. Is uc_catalog a contrib module?
Comment #8
phenaproximaNever mind, I found it: http://cgit.drupalcode.org/ubercart/tree/uc_catalog/src/Access/RouteProc...
The problem is a collision of assumptions between Ubercart and Lightning. I think it's probably up to Lightning to fix this, because I don't really see how Ubercart could be doing things differently.
Comment #9
phenaproximaI have written a patch for Lightning that oughta help. Apply this and see if it works, and if it does, we'll commit it straightaway.
Comment #10
mattferderer CreditAttribution: mattferderer commentedI applied the patch & it seems to have fixed the issue without creating any new issues. Thank you for fixing this!
Comment #11
balsamaComment #14
phenaproximaComment #15
phenaproximaClosing to keep our issue queue tidy.