Fehler beim Update von 6.4.18.0 auf 6.4.19.0

Hallo zusammen,
beim Update auf 6.4.19.0 kommt es wiederholt beim letzten Schritt „Dateien aufräumen“

Dateien aufräumen
Die folgenden Dateien gehören zu Deiner früheren Shopware-Version und werden nach diesem Update nicht länger benötigt. Klicke auf "Weiter" um die Dateien automatisch zu löschen und das Update abzuschließen. Wir empfehlen dennoch, vorher ein Backup anzulegen. Abhängig von der Menge der aufzuräumenden Dateien kann dieser Prozess einige Zeit in Anspruch nehmen.

Verzeichnis/Datei
files/backup/auto_update/var
files/backup/auto_update/vendor
files/backup/auto_update/src
files/backup/auto_update/custom
files/backup/auto_update/config
files/backup/auto_update/files
files/backup/auto_update/bin
files/backup/auto_update/public
var/cache/composer
var/cache/prod_h99e2f51d4f588e596a1a6c51d1d9d1ee
var/cache/prod_h5629301f1b946f0679bda49da1d3e95e
vendor/shopware/administration/Resources/app/administration/src/module/sw-flow/page/sw-flow-list/index.js
vendor/shopware/administration/Resources/app/administration/src/module/sw-flow/page/sw-flow-list/sw-flow-list.html.twig
vendor/shopware/administration/Resources/app/administration/src/module/sw-flow/page/sw-flow-list/sw-flow-list.spec.js
vendor/shopware/administration/Resources/app/administration/src/module/sw-order/component/sw-order-add-items-modal/index.ts
vendor/shopware/administration/Resources/app/administration/src/module/sw-order/component/sw-order-add-items-modal/sw-order-add-items-modal.html.twig
vendor/shopware/administration/Resources/app/administration/src/module/sw-order/component/sw-order-add-items-modal/sw-order-add-items-modal.scss
vendor/shopware/administration/Resources/app/administration/src/module/sw-order/component/sw-order-add-items-modal/sw-order-add-items-modal.spec.js
vendor/shopware/administration/Resources/app/administration/src/module/sw-order/component/sw-order-create-initial-modal/index.js
vendor/shopware/administration/Resources/app/administration/src/module/sw-order/component/sw-order-create-initial-modal/sw-order-create-initial-modal.spec.js
vendor/shopware/administration/Resources/app/administration/src/module/sw-order/component/sw-order-create-options/sw-order-create-options.spec.js
vendor/shopware/administration/Resources/app/administration/src/module/sw-order/component/sw-order-credit-item/index.js
vendor/shopware/administration/Resources/app/administration/src/module/sw-order/component/sw-order-credit-item/sw-order-credit-item.html.twig
vendor/shopware/administration/Resources/app/administration/src/module/sw-order/component/sw-order-credit-item/sw-order-credit-item.spec.js
vendor/shopware/administration/Resources/app/administration/src/module/sw-order/component/sw-order-custom-item/index.js
vendor/shopware/administration/Resources/app/administration/src/module/sw-order/component/sw-order-custom-item/sw-order-custom-item.html.twig
vendor/shopware/administration/Resources/app/administration/src/module/sw-order/component/sw-order-custom-item/sw-order-custom-item.spec.js
vendor/shopware/administration/Resources/app/administration/src/module/sw-order/component/sw-order-customer-grid/index.js
vendor/shopware/administration/Resources/app/administration/src/module/sw-order/component/sw-order-customer-grid/sw-order-customer-grid.spec.js
vendor/shopware/administration/Resources/app/administration/src/module/sw-order/component/sw-order-product-grid/index.js
vendor/shopware/administration/Resources/app/administration/src/module/sw-order/component/sw-order-product-grid/sw-order-product-grid.html.twig
vendor/shopware/administration/Resources/app/administration/src/module/sw-order/component/sw-order-product-grid/sw-order-product-grid.scss
vendor/shopware/administration/Resources/app/administration/src/module/sw-order/component/sw-order-product-grid/sw-order-product-grid.spec.js
vendor/shopware/core/Content/Test/Flow/SendMailActionTest.php
vendor/shopware/core/Content/Test/Mail/Service/MailServiceTest.php
vendor/shopware/core/Content/Test/MailTemplate/Api/MailActionControllerTest.php
vendor/shopware/core/Content/Test/Newsletter/SalesChannel/NewsletterUnsubscribeRouteTest.php
vendor/shopware/core/Framework/Test/DataAbstractionLayer/Field/PasswordFieldTest.php
vendor/shopware/core/Framework/Test/Log/Monolog/ExcludeExceptionHandlerTest.php
vendor/shopware/core/Maintenance/Test/User/Command/UserCreateCommandTest.php
vendor/shopware/core/Migration/V6_5/Migration1651172963SetProductCmsPageToNullIfDefaultIsSet.php
vendor/shopware/core/System/Test/User/Api/UserRecoveryControllerTest.php
vendor/shopware/recovery/Common/vendor/doctrine/event-manager/.doctrine-project.json
vendor/shopware/recovery/vendor/doctrine/instantiator/phpbench.json
vendor/shopware/recovery/vendor/doctrine/instantiator/phpcs.xml.dist
vendor/shopware/recovery/vendor/doctrine/instantiator/phpstan.neon.dist
vendor/shopware/recovery/vendor/phpunit/phpunit/src/Framework/MockObject/Api/MockedCloneMethod.php
vendor/shopware/recovery/vendor/phpunit/phpunit/src/Framework/MockObject/Api/UnmockedCloneMethod.php
vendor/shopware/recovery/vendor/phpunit/phpunit/src/Framework/MockObject/Generator/mocked_method_void.tpl
vendor/shopware/recovery/vendor/phpunit/phpunit/src/Framework/MockObject/Generator/proxied_method_void.tpl
vendor/shopware/recovery/vendor/sebastian/type/src/CallableType.php
vendor/shopware/recovery/vendor/sebastian/type/src/GenericObjectType.php
vendor/shopware/recovery/vendor/sebastian/type/src/IterableType.php
vendor/shopware/recovery/vendor/sebastian/type/src/NullType.php
vendor/shopware/recovery/vendor/sebastian/type/src/ObjectType.php
vendor/shopware/recovery/vendor/sebastian/type/src/SimpleType.php
vendor/shopware/recovery/vendor/sebastian/type/src/Type.php
vendor/shopware/recovery/vendor/sebastian/type/src/UnknownType.php
vendor/shopware/recovery/vendor/sebastian/type/src/VoidType.php
vendor/shopware/storefront/Test/Controller/AuthControllerTest.php
vendor/shopware/storefront/Test/Controller/NewsletterControllerTest.php

zu folgendem Fehler.

0  entfernte Dateien aus 61 Verzeichnissen
Error
Received an error message.
URL: /recovery/update/index.php/clearCache
Message:

Please try to fix this error and restart the update.
Response
Slim Application Error
The application could not run because of the following error:

Details
Type: TypeError
Message: rmdir(): Argument #1 ($directory) must be of type string, bool given
File: /xxx/xxx/vendor/shopware/recovery/Update/src/Cleanup.php
Line: 184
Trace
#0 /xxx/xxx/vendor/shopware/recovery/Update/src/Cleanup.php(184): rmdir(false)
#1 /xxx/xxx/vendor/shopware/recovery/Update/src/Cleanup.php(117): Shopware\Recovery\Update\Cleanup->delete(Object(SplFileInfo), Object(Shopware\Recovery\Update\Results\DeleteResult))
#2 /xxx/xxx/vendor/shopware/recovery/Update/src/Cleanup.php(60): Shopware\Recovery\Update\Cleanup->deleteCacheDirectories(0)
#3 /xxx/xxx/vendor/shopware/recovery/Update/src/Controller/CleanupController.php(108): Shopware\Recovery\Update\Cleanup->cleanup()
#4 /xxx/xxx/vendor/shopware/recovery/Update/src/app.php(105): Shopware\Recovery\Update\Controller\CleanupController->deleteOutdatedFolders(Object(Slim\Http\Request), Object(Slim\Http\Response))
#5 [internal function]: Closure->{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response), Array)
#6 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Handlers/Strategies/RequestResponse.php(40): call_user_func(Object(Closure), Object(Slim\Http\Request), Object(Slim\Http\Response), Array)
#7 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Route.php(281): Slim\Handlers\Strategies\RequestResponse->__invoke(Object(Closure), Object(Slim\Http\Request), Object(Slim\Http\Response), Array)
#8 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(117): Slim\Route->__invoke(Object(Slim\Http\Request), Object(Slim\Http\Response))
#9 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Route.php(268): Slim\Route->callMiddlewareStack(Object(Slim\Http\Request), Object(Slim\Http\Response))
#10 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/App.php(503): Slim\Route->run(Object(Slim\Http\Request), Object(Slim\Http\Response))
#11 /xxx/xxx/vendor/shopware/recovery/Update/src/app.php(72): Slim\App->__invoke(Object(Slim\Http\Request), Object(Slim\Http\Response))
#12 [internal function]: Closure->{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\App))
#13 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array(Object(Closure), Array)
#14 [internal function]: Slim\DeferredCallable->__invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\App))
#15 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\App))
#16 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(117): Slim\App->Slim\{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response))
#17 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/App.php(392): Slim\App->callMiddlewareStack(Object(Slim\Http\Request), Object(Slim\Http\Response))
#18 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/App.php(297): Slim\App->process(Object(Slim\Http\Request), Object(Slim\Http\Response))
#19 /xxx/xxx/vendor/shopware/recovery/Update/index.php(39): Slim\App->run()
#20 /xxx/xxx/public/recovery/update/index.php(6): require_once('/xxx/xxx...')
#21 {main}

Es folgt die Zeile 183-186 der Datei /xxx/xxx/vendor/shopware/recovery/Update/src/Cleanup.php

{
        $file->isFile() ? @unlink($file->getRealPath()) : @rmdir($file->getRealPath());
        $deleteResult->countUp();
    }

Es wurden keine Variable von uns geändert!

Was können wir tun?

Beste Grüße

Diese Fehlermeldung kommt bei einem erneuten Ausführen mit F5 im Browser.
https://xxx.xxx/recovery/update/index.php/cleanup?

Slim Application Error
The application could not run because of the following error:

Details
Type: TypeError
Message: mb_substr(): Argument #1 ($string) must be of type string, bool given
File: /xxx/xxx/vendor/shopware/recovery/Update/src/Controller/CleanupController.php
Line: 95
Trace
#0 /xxx/xxx/vendor/shopware/recovery/Update/src/Controller/CleanupController.php(95): mb_substr(false, 40)
#1 [internal function]: Shopware\Recovery\Update\Controller\CleanupController::Shopware\Recovery\Update\Controller\{closure}(false)
#2 /xxx/xxx/vendor/shopware/recovery/Update/src/Controller/CleanupController.php(94): array_map(Object(Closure), Array)
#3 /xxx/xxx/vendor/shopware/recovery/Update/src/app.php(101): Shopware\Recovery\Update\Controller\CleanupController->cleanupOldFiles(Object(Slim\Http\Request), Object(Slim\Http\Response))
#4 [internal function]: Closure->{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response), Array)
#5 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Handlers/Strategies/RequestResponse.php(40): call_user_func(Object(Closure), Object(Slim\Http\Request), Object(Slim\Http\Response), Array)
#6 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Route.php(281): Slim\Handlers\Strategies\RequestResponse->__invoke(Object(Closure), Object(Slim\Http\Request), Object(Slim\Http\Response), Array)
#7 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(117): Slim\Route->__invoke(Object(Slim\Http\Request), Object(Slim\Http\Response))
#8 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Route.php(268): Slim\Route->callMiddlewareStack(Object(Slim\Http\Request), Object(Slim\Http\Response))
#9 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/App.php(503): Slim\Route->run(Object(Slim\Http\Request), Object(Slim\Http\Response))
#10 /xxx/xxx/vendor/shopware/recovery/Update/src/app.php(72): Slim\App->__invoke(Object(Slim\Http\Request), Object(Slim\Http\Response))
#11 [internal function]: Closure->{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\App))
#12 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array(Object(Closure), Array)
#13 [internal function]: Slim\DeferredCallable->__invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\App))
#14 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\App))
#15 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(117): Slim\App->Slim\{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response))
#16 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/App.php(392): Slim\App->callMiddlewareStack(Object(Slim\Http\Request), Object(Slim\Http\Response))
#17 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/App.php(297): Slim\App->process(Object(Slim\Http\Request), Object(Slim\Http\Response))
#18 /xxx/xxx/vendor/shopware/recovery/Update/index.php(39): Slim\App->run()
#19 /xxx/xxx/public/recovery/update/index.php(6): require_once('/xxx/xxx/...')
#20 {main}

Danach ist Backend und Frontend im Wartungsmodus trotz der bekannten Ausnahme IP Einstellung!

:face_vomiting:

Hallo und danke für den Link Max_Shop,
diesen kennen wir und bei den letzten Updates gab es keine Probleme.

Jetzt schon!

Alle Voraussetzungen Statusbezogen sind auf „grün, bereit“ auch bei den Plugin war alles OK

Die Berechtigungen wurden nicht geändert.

Wo liegt eurer Meinung nach das Problem?

Schritt 4: Aktualisierung abschließen ausgeführt?

Fehler können unter anderem am PHP memory_limit, execution_time, etc. liegen.
Je nach Update wird mehr oder weniger RAM benötigt.

@Max_Shop Schritt 3 kann nicht abgeschlossen werden siehe Oben. (nur Manuell) Also auch kein Schritt 4 möglich.
Falls du weißt wie wir Schritt 4 manuell durch führen können dann gib bitte Bescheid
dann würde ich es nach dem manuellen löschen nochmal probieren! DANKE

PHP-Version 8.1.14
PHP-Speicherlimit in Mb 2048
PHP - Max execution time 60

Ich denke daran kann es auch nicht liegen!

Der Fehler „siehe Oben“ kommt direkt beim aufrufen von Schritt 3, nicht erst nach etwas Zeit.

Zeile 183-186 der Datei /xxx/xxx/vendor/shopware/recovery/Update/src/Cleanup.php

{
        $file->isFile() ? @unlink($file->getRealPath()) : @rmdir($file->getRealPath());
        $deleteResult->countUp();
    }

Es wurden keine Variable von uns geändert!

Nur eine Mischung aus Arbeitsweisen hat das Problem gelöst.
Update per Shell über Browser zurück zu Shell und es läuft!

los gehts
Shell innerhalb deines Shopware Haupverzeichnisses Download

wget https://releases.shopware.com/sw6/update_v6.4.19.0_6483151cd28e042af6a2bf3e1596a41fcd969626.zip

dann wieder Shell innerhalb deines Shopware Haupverzeichnisses entpacken

unzip update_v6.4.19.0_6483151cd28e042af6a2bf3e1596a41fcd969626.zip

replace Dockerfile? [y]es, [n]o, [A]ll, [N]one, [r]ename:
A

Das eigentliche Update führst du dann über den Browser aus

http(s)://xxx.de/recovery/update/index.php

Nach der Fehlermeldung beim Aufräumen (ignorieren)

Error 
Received an error message.
URL: /recovery/update/index.php/clearCache
Message:

Please try to fix this error and restart the update.
Response
Slim Application Error
The application could not run because of the following error:

Details
Type: TypeError
Message: rmdir(): Argument #1 ($directory) must be of type string, bool given
File: /xxx/xxx/vendor/shopware/recovery/Update/src/Cleanup.php
Line: 184
Trace
#0 /xxx/xxx/vendor/shopware/recovery/Update/src/Cleanup.php(184): rmdir(false)
#1 /xxx/xxx/vendor/shopware/recovery/Update/src/Cleanup.php(117): Shopware\Recovery\Update\Cleanup->delete(Object(SplFileInfo), Object(Shopware\Recovery\Update\Results\DeleteResult))
#2 /xxx/xxx/vendor/shopware/recovery/Update/src/Cleanup.php(60): Shopware\Recovery\Update\Cleanup->deleteCacheDirectories(0)
#3 /xxx/xxx/vendor/shopware/recovery/Update/src/Controller/CleanupController.php(108): Shopware\Recovery\Update\Cleanup->cleanup()
#4 /xxx/xxx/vendor/shopware/recovery/Update/src/app.php(105): Shopware\Recovery\Update\Controller\CleanupController->deleteOutdatedFolders(Object(Slim\Http\Request), Object(Slim\Http\Response))
#5 [internal function]: Closure->{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response), Array)
#6 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Handlers/Strategies/RequestResponse.php(40): call_user_func(Object(Closure), Object(Slim\Http\Request), Object(Slim\Http\Response), Array)
#7 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Route.php(281): Slim\Handlers\Strategies\RequestResponse->__invoke(Object(Closure), Object(Slim\Http\Request), Object(Slim\Http\Response), Array)
#8 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(117): Slim\Route->__invoke(Object(Slim\Http\Request), Object(Slim\Http\Response))
#9 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Route.php(268): Slim\Route->callMiddlewareStack(Object(Slim\Http\Request), Object(Slim\Http\Response))
#10 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/App.php(503): Slim\Route->run(Object(Slim\Http\Request), Object(Slim\Http\Response))
#11 /xxx/xxx/vendor/shopware/recovery/Update/src/app.php(72): Slim\App->__invoke(Object(Slim\Http\Request), Object(Slim\Http\Response))
#12 [internal function]: Closure->{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\App))
#13 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array(Object(Closure), Array)
#14 [internal function]: Slim\DeferredCallable->__invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\App))
#15 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\App))
#16 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(117): Slim\App->Slim{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response))
#17 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/App.php(392): Slim\App->callMiddlewareStack(Object(Slim\Http\Request), Object(Slim\Http\Response))
#18 /xxx/xxx/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/App.php(297): Slim\App->process(Object(Slim\Http\Request), Object(Slim\Http\Response))
#19 /xxx/xxx/vendor/shopware/recovery/Update/index.php(39): Slim\App->run()
#20 /xxx/xxx/public/recovery/update/index.php(6): require_once(‚/xxx/x…‘)
#21 {main}

führst du nun per Shell noch bereinigen aus!

rm -r update-assets/

und schon steht im Backend 6.4.19.0 :space_invader:

Vielen Dank @fohn für den Tipp