Skip to content

Error "Cannot update non-existing record" when using Redis as Session Storage #293

@bugskarl

Description

@bugskarl

the Captcha field on the "Registration: Create User" plugin requires an active fe session. this is resulting in an error "Cannot update non-existing record" when using redis as frontend session store:

Image
  • TYPO3 v13.4.24
  • sf_register v13.2.2
  • pugin: sfregister_create
  • field: captcha
  • redis fe session backend

i did open a core bug on this matter: https://forge.typo3.org/issues/108995

temp solution is to fixate the anonymous session by xclassing the session object:

class Session extends \Evoweb\SfRegister\Services\Session
{
    public function __construct()
    {
        parent::__construct();

        // force storing anonymous sessions for captcha checking to work
        if ($this->session->isAnonymous() && !$this->session->isPermanent()) {
            $this->userSessionManager->fixateAnonymousSession($this->session);
        }
    }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions