Shopware Update schlägt fehl 6.6.10.0 auf 6.6.10.3

Leider habe ich das problem das beim update ein fehler kommt
Kann jemand sehen woran das liegen kann

ErrorException
ErrorException:
Notice: SessionHandler::gc(): ps_files_cleanup_dir: opendir(/tmp/.priv) failed: Permission denied (13)

at vendor/symfony/http-foundation/Session/Storage/Handler/StrictSessionHandler.php:87
at Symfony\Component\HttpFoundation\Session\Storage\Handler\StrictSessionHandler->gc()
(vendor/symfony/http-foundation/Session/Storage/Proxy/SessionHandlerProxy.php:64)
at Symfony\Component\HttpFoundation\Session\Storage\Proxy\SessionHandlerProxy->gc()
at session_start()
(vendor/symfony/http-foundation/Session/Storage/NativeSessionStorage.php:172)
at Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage->start()
(vendor/symfony/http-foundation/Session/Storage/NativeSessionStorage.php:311)
at Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage->getBag()
(vendor/symfony/http-foundation/Session/Session.php:222)
at Symfony\Component\HttpFoundation\Session\Session->getBag()
(vendor/symfony/http-foundation/Session/Session.php:242)
at Symfony\Component\HttpFoundation\Session\Session->getAttributeBag()
(vendor/symfony/http-foundation/Session/Session.php:64)
at Symfony\Component\HttpFoundation\Session\Session->has()
(Listener/InstallerLocaleListener.php:45)
at Shopware\WebInstaller\Listener\InstallerLocaleListener->detectLanguage()
(Listener/InstallerLocaleListener.php:28)
at Shopware\WebInstaller\Listener\InstallerLocaleListener->__invoke()
(vendor/symfony/event-dispatcher/EventDispatcher.php:260)
at Symfony\Component\EventDispatcher\EventDispatcher::Symfony\Component\EventDispatcher{closure}()
(vendor/symfony/event-dispatcher/EventDispatcher.php:220)
at Symfony\Component\EventDispatcher\EventDispatcher->callListeners()
(vendor/symfony/event-dispatcher/EventDispatcher.php:56)
at Symfony\Component\EventDispatcher\EventDispatcher->dispatch()
(vendor/symfony/http-kernel/HttpKernel.php:157)
at Symfony\Component\HttpKernel\HttpKernel->handleRaw()
(vendor/symfony/http-kernel/HttpKernel.php:76)
at Symfony\Component\HttpKernel\HttpKernel->handle()
(vendor/symfony/http-kernel/Kernel.php:197)
at Symfony\Component\HttpKernel\Kernel->handle()
(index.php/:30)
at Phar::webPhar()
(/homepages/42/d654425739/htdocs/naturstein-reinhard/public/shopware-installer.phar.php:56)

  info

16:06:42
Matched route „configure“.
{
„route“: „configure“,
„route_parameters“: {
„_route“: „configure“,
„step“: 1,
„_controller“: „Shopware\WebInstaller\Controller\PhpConfigController::index“
},
„request_uri“: „Shopware Recovery“,
„method“: „POST“
}
critical
16:06:42
Uncaught PHP Exception ErrorException: „Notice: SessionHandler::gc(): ps_files_cleanup_dir: opendir(/tmp/.priv) failed: Permission denied (13)“ at StrictSessionHandler.php line 87
{
„exception“: {}
}

in [vendor/symfony/http-foundation/Session/Storage/Handler/StrictSessionHandler.php ](file://phar:///homepages/42/d654425739/htdocs/naturstein-reinhard/public/shopware-installer.phar.php/vendor/symfony/http-foundation/Session/Storage/Handler/StrictSessionHandler.php#L87)(line 87)

  1. return $this->handler->close();
  2. }
  3. ``
  4. public function gc(int $maxlifetime): int|false
  5. {
  6. return $this->handler->gc($maxlifetime);
  7. }
  8. }
  9. ``

in [vendor/symfony/http-foundation/Session/Storage/Proxy/SessionHandlerProxy.php ](file://phar:///homepages/42/d654425739/htdocs/naturstein-reinhard/public/shopware-installer.phar.php/vendor/symfony/http-foundation/Session/Storage/Proxy/SessionHandlerProxy.php#L64)-> gc (line 64)

  1. return $this->handler->destroy($sessionId);
  2. }
  3. ``
  4. public function gc(int $maxlifetime): int|false
  5. {
  6. return $this->handler->gc($maxlifetime);
  7. }
  8. ``
  9. public function validateId(#[\SensitiveParameter] string $sessionId): bool
  10. {
  11. return !$this->handler instanceof \SessionUpdateTimestampHandlerInterface || $this->handler->validateId($sessionId);

SessionHandlerProxy->gc()

in [vendor/symfony/http-foundation/Session/Storage/NativeSessionStorage.php ](file://phar:///homepages/42/d654425739/htdocs/naturstein-reinhard/public/shopware-installer.phar.php/vendor/symfony/http-foundation/Session/Storage/NativeSessionStorage.php#L172)session_start (line 172)

  1. // the session ID in the header is invalid, create a new one
  2. session_id(session_create_id());
  3. }
  4. ``
  5. // ok to try and start the session
  6. if (!session_start()) {
  7. throw new \RuntimeException('Failed to start the session.');
  8. }
  9. ``
  10. $this->loadSession();
  11. ``

in [vendor/symfony/http-foundation/Session/Storage/NativeSessionStorage.php ](file://phar:///homepages/42/d654425739/htdocs/naturstein-reinhard/public/shopware-installer.phar.php/vendor/symfony/http-foundation/Session/Storage/NativeSessionStorage.php#L311)-> start (line 311)

  1. }
  2. ``
  3. if (!$this->started && $this->saveHandler->isActive()) {
  4. $this->loadSession();
  5. } elseif (!$this->started) {
  6. $this->start();
  7. }
  8. ``
  9. return $this->bags[$name];
  10. }
  11. ``

in [vendor/symfony/http-foundation/Session/Session.php ](file://phar:///homepages/42/d654425739/htdocs/naturstein-reinhard/public/shopware-installer.phar.php/vendor/symfony/http-foundation/Session/Session.php#L222)-> getBag (line 222)

  1. $this->storage->registerBag(new SessionBagProxy($bag, $this->data, $this->usageIndex, $this->usageReporter));
  2. }
  3. ``
  4. public function getBag(string $name): SessionBagInterface
  5. {
  6. $bag = $this->storage->getBag($name);
  7. ``
  8. return method_exists($bag, 'getBag') ? $bag->getBag() : $bag;
  9. }
  10. ``
  11. /**

in [vendor/symfony/http-foundation/Session/Session.php ](file://phar:///homepages/42/d654425739/htdocs/naturstein-reinhard/public/shopware-installer.phar.php/vendor/symfony/http-foundation/Session/Session.php#L242)-> getBag (line 242)

  1. *
  2. * Note that this method was added to help with IDE autocompletion.
  3. */
  4. private function getAttributeBag(): AttributeBagInterface
  5. {
  6. return $this->getBag($this->attributeName);
  7. }
  8. }
  9. ``

in [vendor/symfony/http-foundation/Session/Session.php ](file://phar:///homepages/42/d654425739/htdocs/naturstein-reinhard/public/shopware-installer.phar.php/vendor/symfony/http-foundation/Session/Session.php#L64)-> getAttributeBag (line 64)

  1. return $this->storage->start();
  2. }
  3. ``
  4. public function has(string $name): bool
  5. {
  6. return $this->getAttributeBag()->has($name);
  7. }
  8. ``
  9. public function get(string $name, mixed $default = null): mixed
  10. {
  11. return $this->getAttributeBag()->get($name, $default);

Session->has()in [Listener/InstallerLocaleListener.php ](file://phar:///homepages/42/d654425739/htdocs/naturstein-reinhard/public/shopware-installer.phar.php/Listener/InstallerLocaleListener.php#L45)(line 45)

InstallerLocaleListener->detectLanguage()in [Listener/InstallerLocaleListener.php ](file://phar:///homepages/42/d654425739/htdocs/naturstein-reinhard/public/shopware-installer.phar.php/Listener/InstallerLocaleListener.php#L28)(line 28)

  1. #[AsEventListener(RequestEvent::class, priority: 15)]
  2. public function __invoke(RequestEvent $event): void
  3. {
  4. $request = $event->getRequest();
  5. ``
  6. $locale = $this->detectLanguage($request);
  7. $request->attributes->set('_locale', $locale);
  8. $request->setLocale($locale);
  9. }
  10. ``
  11. private function detectLanguage(Request $request): string

in [vendor/symfony/event-dispatcher/EventDispatcher.php ](file://phar:///homepages/42/d654425739/htdocs/naturstein-reinhard/public/shopware-installer.phar.php/vendor/symfony/event-dispatcher/EventDispatcher.php#L260)-> __invoke (line 260)

  1. $closure = static function (...$args) use (&$listener, &$closure) {
  2. if ($listener[0] instanceof \Closure) {
  3. $listener[0] = $listener[0]();
  4. $listener[1] ??= '__invoke';
  5. }
  6. ($closure = $listener(...))(...$args);
  7. };
  8. } else {
  9. $closure = $listener instanceof WrappedListener ? $listener : $listener(...);
  10. }
  11. }

in [vendor/symfony/event-dispatcher/EventDispatcher.php ](file://phar:///homepages/42/d654425739/htdocs/naturstein-reinhard/public/shopware-installer.phar.php/vendor/symfony/event-dispatcher/EventDispatcher.php#L220):: Symfony\Component\EventDispatcher{closure} (line 220)

  1. ``
  2. foreach ($listeners as $listener) {
  3. if ($stoppable && $event->isPropagationStopped()) {
  4. break;
  5. }
  6. $listener($event, $eventName, $this);
  7. }
  8. }
  9. ``
  10. /**
  11. * Sorts the internal list of listeners for the given event by priority.

in [vendor/symfony/event-dispatcher/EventDispatcher.php ](file://phar:///homepages/42/d654425739/htdocs/naturstein-reinhard/public/shopware-installer.phar.php/vendor/symfony/event-dispatcher/EventDispatcher.php#L56)-> callListeners (line 56)

  1. } else {
  2. $listeners = $this->getListeners($eventName);
  3. }
  4. ``
  5. if ($listeners) {
  6. $this->callListeners($listeners, $eventName, $event);
  7. }
  8. ``
  9. return $event;
  10. }
  11. ``

in [vendor/symfony/http-kernel/HttpKernel.php ](file://phar:///homepages/42/d654425739/htdocs/naturstein-reinhard/public/shopware-installer.phar.php/vendor/symfony/http-kernel/HttpKernel.php#L157)-> dispatch (line 157)

  1. */
  2. private function handleRaw(Request $request, int $type = self::MAIN_REQUEST): Response
  3. {
  4. // request
  5. $event = new RequestEvent($this, $request, $type);
  6. $this->dispatcher->dispatch($event, KernelEvents::REQUEST);
  7. ``
  8. if ($event->hasResponse()) {
  9. return $this->filterResponse($event->getResponse(), $request, $type);
  10. }
  11. ``

in [vendor/symfony/http-kernel/HttpKernel.php ](file://phar:///homepages/42/d654425739/htdocs/naturstein-reinhard/public/shopware-installer.phar.php/vendor/symfony/http-kernel/HttpKernel.php#L76)-> handleRaw (line 76)

in [vendor/symfony/http-kernel/Kernel.php ](file://phar:///homepages/42/d654425739/htdocs/naturstein-reinhard/public/shopware-installer.phar.php/vendor/symfony/http-kernel/Kernel.php#L197)-> handle (line 197)

  1. $this->boot();
  2. ++$this->requestStackSize;
  3. $this->resetServices = true;
  4. ``
  5. try {
  6. return $this->getHttpKernel()->handle($request, $type, $catch);
  7. } finally {
  8. --$this->requestStackSize;
  9. }
  10. }
  11. ``

Kernel->handle()in [index.php/ ](file://phar:///homepages/42/d654425739/htdocs/naturstein-reinhard/public/shopware-installer.phar.php/index.php#L30)(line 30)

  1. ``
  2. $request = Request::createFromGlobals();
  3. ``
  4. @ignore_user_abort(true);
  5. ``
  6. $response = $kernel->handle($request);
  7. ``
  8. $response->send();
  9. ``
  10. $kernel->terminate($request, $response);
  11. ``

Phar::webPhar()in [/homepages/42/d654425739/htdocs/naturstein-reinhard/public/shopware-installer.phar.php ](file:///homepages/42/d654425739/htdocs/naturstein-reinhard/public/shopware-installer.phar.php#L56)(line 56)

  1. }
  2. ``
  3. return 'index.php';
  4. }
  5. ``
  6. Phar::webPhar(
  7. null,
  8. 'index.php',
  9. null,
  10. [
  11. 'php' => Phar::PHP,

Du hast keine Schreibrechte für den tmp Ordner.

Entweder per Symfony Config unterbinden oder dein tmp Order in der php.ini ändern, wo du Schreibrechte hast.

Prevent the web application from overriding session.gc_probability. For Symfony based applications this can be done by modifying config/packages/framework.yaml:

framework:
    session:
        gc_probability: null
1 „Gefällt mir“

Hi Danke frür die Schnelle Antwort
wollte das eben mal probieren
Komischerweise zeigt der shop an das er jetzt die aktuelle Version hätte
troz des fehlers…
komisch irgendwie

Das Update wird vorab von Composer durchgeführt. Im zweiten Schritt wird dann die Datenbank aktualisiert, falls notwendig.

Der Fehler ist sehr wahrscheinlich erst beim bereinigen des Cache aufgetreten. Da war das Update dann schon durch.

Der Fehler hat meiner Erfahrung nach aber nichts mit dem Update zu tun, sondern tritt auch während des normalen Betriebs auf. Es sind wie gesagt fehlende Rechte auf dem Server.