magento / magento2-upward-connector

Magento module for routing front-end requests to UPWARD-PHP
Open Software License 3.0
24 stars 27 forks source link

Problem with custom URL rewrites in V2.0.3 #52

Open johan-lindahl opened 7 months ago

johan-lindahl commented 7 months ago

This worked in version 2.0.2 and was broken in version 2.0.3 (I think it was broken in commit 1ecf13f7fdbf6d7be590399da41ad70770b4d4da).

If there is a "Custom" URL rewrite from request path "old-deleted-page" to target path "start" with redirect type 301. Then we get a "No such entity exception", see stacktrace below).

image

This makes it impossible to create redirects for old delete pages that redirects to the start page in Magento backend.

We see the following stack trace when such "Custom" URL rewrite exist in Magento URL

{
    "0": "No such entity found with matching URL key: start",
    "1": "#1 Magento\\UpwardConnector\\Model\\PageType->getInfo() called at [vendor\/magento\/module-upward-connector\/Model\/Computed\/PageInfo.php:68]\n#2 Magento\\UpwardConnector\\Model\\Computed\\PageInfo->resolve() called at [vendor\/magento\/module-upward-connector\/Resolver\/Computed.php:60]\n#3 Magento\\UpwardConnector\\Resolver\\Computed->resolve() called at [vendor\/magento\/upward\/src\/DefinitionIterator.php:206]\n#4 Magento\\Upward\\DefinitionIterator->getFromResolver() called at [vendor\/magento\/upward\/src\/DefinitionIterator.php:188]\n#5 Magento\\Upward\\DefinitionIterator->getFromDefinedValue() called at [vendor\/magento\/upward\/src\/DefinitionIterator.php:105]\n#6 Magento\\Upward\\DefinitionIterator->get() called at [vendor\/magento\/upward\/src\/DefinitionIterator.php:212]\n#7 Magento\\Upward\\DefinitionIterator->getFromResolver() called at [vendor\/magento\/upward\/src\/DefinitionIterator.php:188]\n#8 Magento\\Upward\\DefinitionIterator->getFromDefinedValue() called at [vendor\/magento\/upward\/src\/DefinitionIterator.php:105]\n#9 Magento\\Upward\\DefinitionIterator->get() called at [vendor\/magento\/upward\/src\/Resolver\/Template.php:60]\n#10 Magento\\Upward\\Resolver\\Template->resolve() called at [vendor\/magento\/upward\/src\/DefinitionIterator.php:206]\n#11 Magento\\Upward\\DefinitionIterator->getFromResolver() called at [vendor\/magento\/upward\/src\/DefinitionIterator.php:188]\n#12 Magento\\Upward\\DefinitionIterator->getFromDefinedValue() called at [vendor\/magento\/upward\/src\/DefinitionIterator.php:105]\n#13 Magento\\Upward\\DefinitionIterator->get() called at [vendor\/magento\/upward\/src\/DefinitionIterator.php:212]\n#14 Magento\\Upward\\DefinitionIterator->getFromResolver() called at [vendor\/magento\/upward\/src\/DefinitionIterator.php:188]\n#15 Magento\\Upward\\DefinitionIterator->getFromDefinedValue() called at [vendor\/magento\/upward\/src\/DefinitionIterator.php:105]\n#16 Magento\\Upward\\DefinitionIterator->get() called at [vendor\/magento\/upward\/src\/DefinitionIterator.php:187]\n#17 Magento\\Upward\\DefinitionIterator->getFromDefinedValue() called at [vendor\/magento\/upward\/src\/DefinitionIterator.php:105]\n#18 Magento\\Upward\\DefinitionIterator->get() called at [vendor\/magento\/upward\/src\/Resolver\/Conditional.php:90]\n#19 Magento\\Upward\\Resolver\\Conditional->resolve() called at [vendor\/magento\/upward\/src\/DefinitionIterator.php:206]\n#20 Magento\\Upward\\DefinitionIterator->getFromResolver() called at [vendor\/magento\/upward\/src\/DefinitionIterator.php:188]\n#21 Magento\\Upward\\DefinitionIterator->getFromDefinedValue() called at [vendor\/magento\/upward\/src\/DefinitionIterator.php:105]\n#22 Magento\\Upward\\DefinitionIterator->get() called at [vendor\/magento\/upward\/src\/DefinitionIterator.php:187]\n#23 Magento\\Upward\\DefinitionIterator->getFromDefinedValue() called at [vendor\/magento\/upward\/src\/DefinitionIterator.php:105]\n#24 Magento\\Upward\\DefinitionIterator->get() called at [vendor\/magento\/upward\/src\/Controller.php:64]\n#25 Magento\\Upward\\Controller->__invoke() called at [vendor\/magento\/module-upward-connector\/Controller\/Upward.php:65]\n#26 Magento\\UpwardConnector\\Controller\\Upward->dispatch() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:58]\n#27 Magento\\UpwardConnector\\Controller\\Upward\\Interceptor->___callParent() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:138]\n#28 Magento\\UpwardConnector\\Controller\\Upward\\Interceptor->Magento\\Framework\\Interception\\{closure}() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:153]\n#29 Magento\\UpwardConnector\\Controller\\Upward\\Interceptor->___callPlugins() called at [generated\/code\/Magento\/UpwardConnector\/Controller\/Upward\/Interceptor.php:23]\n#30 Magento\\UpwardConnector\\Controller\\Upward\\Interceptor->dispatch() called at [vendor\/magento\/framework\/App\/Http.php:116]\n#31 Magento\\Framework\\App\\Http->launch() called at [vendor\/magento\/framework\/App\/Bootstrap.php:264]\n#32 Magento\\Framework\\App\\Bootstrap->run() called at [pub\/index.php:30]\n",
    "url": "\/",
    "script_name": "\/index.php",
    "report_id": "b54efa92d62abcb0e8ca20f17b023c1e2f8ef9dfea13d5aeaf929412ccfe7d92"
}