Project

General

Profile

Actions

Bug #81802

closed

SQL Exception when searching in recycler using PostgreSQL

Added by Stephan Großberndt over 7 years ago. Updated over 4 years ago.

Status:
Closed
Priority:
Must have
Assignee:
-
Category:
Recycler
Target version:
-
Start date:
2017-07-05
Due date:
% Done:

100%

Estimated time:
TYPO3 Version:
8
PHP Version:
Tags:
postgresql
Complexity:
Is Regression:
Sprint Focus:

Description

Searching for any string in the recycler causes an SQL Exception, e.g. searching for 98770 leads to

Core: Exception handler (WEB): Uncaught TYPO3 Exception: An exception occurred while executing 

'SELECT COUNT(*) FROM "tx_extension_table" WHERE ("pid" = ?) AND (("uid" = ?) OR ("pid" = ?) OR ("uid" LIKE ?)) AND ("deleted" <> ?)' 

with params [18, "98770", "98770", "'%98770%'", 0]: 

SQLSTATE[42883]: Undefined function: 7 

FEHLER: Operator existiert nicht: integer ~~ unknown LINE 1: ...= $1) AND (("uid" = $2) OR ("pid" = $3) OR ("uid" LIKE $4)) ... ^ 

HINT: Kein Operator stimmt mit dem angegebenen Namen und den Argumenttypen überein. Sie müssen möglicherweise ausdrückliche Typumwandlungen hinzufügen.

Doctrine\DBAL\Exception\DriverException thrown in file vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractPostgreSQLDriver.php in line 91. Requested URL: http://example.org/typo3/index.php?ajaxID=%2Fajax%2Frecycler&ajaxToken=XXX&action=getDeletedRecords&depth=999&startUid=18&table=tx_extension_table&filterTxt=98770&start=0&limit=50

I guess this happens because column uid is of type int and a LIKE search is performed on the column.


Related issues 2 (1 open1 closed)

Related to TYPO3 Core - Bug #82837: Exception in backend searching in columns of type integer/bigint on PostgreSQLClosed2017-10-20

Actions
Related to TYPO3 Core - Epic #90719: PostgreSQL related issuesAccepted2020-03-10

Actions
Actions #1

Updated by Stephan Großberndt over 7 years ago

Code is here: \TYPO3\CMS\Recycler\Domain\Model\DeletedRecords::getFilteredQueryBuilder

Actions #3

Updated by Georg Ringer over 6 years ago

  • Related to Bug #82837: Exception in backend searching in columns of type integer/bigint on PostgreSQL added
Actions #4

Updated by Christian Eßl over 4 years ago

Tried to reproduce this problem yesterday in master with PostgreSQL as database, but couldn't find any problems. This ticket is from version 8. Maybe the issues have already been fixed in the meanwhile? Can someone else confirm this with PostgreSQL?

Actions #5

Updated by Christian Eßl over 4 years ago

  • Related to Epic #90719: PostgreSQL related issues added
Actions #6

Updated by Stephan Großberndt over 4 years ago

The issue still exists if you e.g. have deleted sys_file_reference records and for any extension where you define a column as int in ext_tables.sql and make it searchable by adding it in TCA to ['ctrl']['searchFields']:

In TYPO3 v8

An exception occurred while executing 'SELECT COUNT(*) FROM "sys_file_reference" WHERE ("uid_local" LIKE ?) AND ("pid" IN (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)) AND ("deleted" <> ?)' with params ["%wurst%", 0, "6", "2", "5", "16", "18", "19", "17", "69", "68", "70", "62", "1", "40", "64", "24", "3", "23", "37", "38", "12", "14", "20", "21", "15", "11", "35", "36", "22", "13", "4", "42", "43", "45", "48", "50", "58", "46", "59", "47", "60", "61", "39", "28", "30", "31", "32", "34", "33", "26", "27", "25", "10", "63", "41", "65", "66", "67", 0]: SQLSTATE[42883]: Undefined function: 7 FEHLER: Operator existiert nicht: integer ~~ unknown LINE 1: ...T(*) FROM "sys_file_reference" WHERE ("uid_local" LIKE $1) A... ^ HINT: Kein Operator stimmt mit dem angegebenen Namen und den Argumenttypen überein. Sie müssen möglicherweise ausdrückliche Typumwandlungen hinzufügen.

Doctrine\DBAL\Exception\DriverException thrown in file
vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractPostgreSQLDriver.php in line 91.

and in TYPO3 v9


Whoops, looks like something went wrong.
(1/3) Doctrine\DBAL\Exception\DriverException

An exception occurred while executing 'SELECT COUNT(*) FROM "sys_file_reference" WHERE ("uid_local" LIKE ?) AND ("pid" IN (?)) AND ("deleted" <> ?)' with params ["%hirsch%", 1, 0]: SQLSTATE[42883]: Undefined function: 7 FEHLER: Operator existiert nicht: integer ~~ unknown LINE 1: ...T(*) FROM "sys_file_reference" WHERE ("uid_local" LIKE $1) A... ^ HINT: Kein Operator stimmt mit dem angegebenen Namen und den Argumenttypen überein. Sie müssen möglicherweise ausdrückliche Typumwandlungen hinzufügen.
in /typo3_src-9.5.13/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractPostgreSQLDriver.php line 79

                break;
        }

        return new Exception\DriverException($message, $exception);
    }

    /**
     * {@inheritdoc}

at Doctrine\DBAL\Driver\AbstractPostgreSQLDriver->convertException('An exception occurred while executing \'SELECT COUNT(*) FROM "sys_file_reference" WHERE ("uid_local" LIKE ?) AND ("pid" IN (?)) AND ("deleted" <> ?)\' with params ["%hirsch%", 1, 0]:SQLSTATE[42883]: Undefined function: 7 FEHLER: Operator existiert nicht: integer ~~ unknownLINE 1: ...T(*) FROM "sys_file_reference" WHERE ("uid_local" LIKE $1) A... ^HINT: Kein Operator stimmt mit dem angegebenen Namen und den Argumenttypen überein. Sie müssen möglicherweise ausdrückliche Typumwandlungen hinzufügen.', object(Doctrine\DBAL\Driver\PDOException))
in /vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php line 166

        if ($driverEx instanceof DriverException) {
            return $driverEx;
        }
        if ($driver instanceof ExceptionConverterDriver && $driverEx instanceof DriverExceptionInterface) {
            return $driver->convertException($msg, $driverEx);
        }

        return new self($msg, 0, $driverEx);
    }

at Doctrine\DBAL\DBALException::wrapException(object(TYPO3\CMS\Core\Database\Driver\PDOPgSql\Driver), object(Doctrine\DBAL\Driver\PDOException), 'An exception occurred while executing \'SELECT COUNT(*) FROM "sys_file_reference" WHERE ("uid_local" LIKE ?) AND ("pid" IN (?)) AND ("deleted" <> ?)\' with params ["%hirsch%", 1, 0]:SQLSTATE[42883]: Undefined function: 7 FEHLER: Operator existiert nicht: integer ~~ unknownLINE 1: ...T(*) FROM "sys_file_reference" WHERE ("uid_local" LIKE $1) A... ^HINT: Kein Operator stimmt mit dem angegebenen Namen und den Argumenttypen überein. Sie müssen möglicherweise ausdrückliche Typumwandlungen hinzufügen.')
in /vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php line 146

            $msg .= ' with params ' . self::formatParameters($params);
        }
        $msg .= ":\n\n" . $driverEx->getMessage();

        return static::wrapException($driver, $driverEx, $msg);
    }

    /**
     * @return self

at Doctrine\DBAL\DBALException::driverExceptionDuringQuery(object(TYPO3\CMS\Core\Database\Driver\PDOPgSql\Driver), object(Doctrine\DBAL\Driver\PDOException), 'SELECT COUNT(*) FROM "sys_file_reference" WHERE ("uid_local" LIKE ?) AND ("pid" IN (?)) AND ("deleted" <> ?)', array('%hirsch%', 1, 0))
in /typo3_src-9.5.13/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php line 912

            } else {
                $stmt = $connection->query($query);
            }
        } catch (Throwable $ex) {
            throw DBALException::driverExceptionDuringQuery($this->_driver, $ex, $query, $this->resolveParams($params, $types));
        }

        $stmt->setFetchMode($this->defaultFetchMode);

at Doctrine\DBAL\Connection->executeQuery('SELECT COUNT(*) FROM "sys_file_reference" WHERE ("uid_local" LIKE ?) AND ("pid" IN (?)) AND ("deleted" <> ?)', array('%hirsch%', 1, 0), array(2, 1, 1))
in /vendor/doctrine/dbal/lib/Doctrine/DBAL/Query/QueryBuilder.php line 206

     */
    public function execute()
    {
        if ($this->type === self::SELECT) {
            return $this->connection->executeQuery($this->getSQL(), $this->params, $this->paramTypes);
        }

        return $this->connection->executeUpdate($this->getSQL(), $this->params, $this->paramTypes);
    }

at Doctrine\DBAL\Query\QueryBuilder->execute()
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Database/Query/QueryBuilder.php line 187

        // Set additional query restrictions
        $originalWhereConditions = $this->addAdditionalWhereConditions();

        $result = $this->concreteQueryBuilder->execute();

        // Restore the original query conditions in case the user keeps
        // on modifying the state.
        $this->concreteQueryBuilder->add('where', $originalWhereConditions, false);

at TYPO3\CMS\Core\Database\Query\QueryBuilder->execute()
in /typo3_src-9.5.13/typo3/sysext/recycler/Classes/Domain/Model/DeletedRecords.php line 176

                        $deletedField,
                        $queryBuilder->createNamedParameter(0, \PDO::PARAM_INT)
                    )
                )
                ->execute()
                ->fetchColumn(0);

            // split the limit
            list($offset, $rowCount) = GeneralUtility::intExplode(',', $this->limit, true);

at TYPO3\CMS\Recycler\Domain\Model\DeletedRecords->setData(1, 'sys_file_reference', 0, 'hirsch')
in /typo3_src-9.5.13/typo3/sysext/recycler/Classes/Domain/Model/DeletedRecords.php line 116

                        break;
                    }
                }
                $this->table[] = $tableKey;
                $this->setData($id, $tableKey, $depth, $filter);
            }
        }
        return $this;
    }

at TYPO3\CMS\Recycler\Domain\Model\DeletedRecords->loadData(1, '', 0, '0,25', 'hirsch')
in /typo3_src-9.5.13/typo3/sysext/recycler/Classes/Controller/RecyclerAjaxController.php line 89

                ]);

                /* @var DeletedRecords $model */
                $model = GeneralUtility::makeInstance(DeletedRecords::class);
                $model->loadData($this->conf['startUid'], $this->conf['table'], $this->conf['depth'], $this->conf['start'] . ',' . $this->conf['limit'], $this->conf['filterTxt']);
                $deletedRowsArray = $model->getDeletedRows();

                $model = GeneralUtility::makeInstance(DeletedRecords::class);
                $totalDeleted = $model->getTotalCount($this->conf['startUid'], $this->conf['table'], $this->conf['depth'], $this->conf['filterTxt']);

at TYPO3\CMS\Recycler\Controller\RecyclerAjaxController->dispatch(object(TYPO3\CMS\Core\Http\ServerRequest))
at call_user_func_array(array(object(TYPO3\CMS\Recycler\Controller\RecyclerAjaxController), 'dispatch'), array(object(TYPO3\CMS\Core\Http\ServerRequest)))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Http/RouteDispatcher.php line 87

                $arguments[] = $response;
            }
        }

        return call_user_func_array($target, $arguments);
    }

    /**
     * Wrapper method for static form protection utility

at TYPO3\CMS\Backend\Http\RouteDispatcher->dispatch(object(TYPO3\CMS\Core\Http\ServerRequest), object(TYPO3\CMS\Core\Http\Response))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Http/RequestHandler.php line 73

        }
        try {
            // Check if the router has the available route and dispatch.
            $dispatcher = GeneralUtility::makeInstance(RouteDispatcher::class);
            return $dispatcher->dispatch($request, $response);
        } catch (InvalidRequestTokenException $e) {
            // When token was invalid redirect to login
            $url = GeneralUtility::getIndpEnv('TYPO3_SITE_URL') . TYPO3_mainDir;
            return new RedirectResponse($url);

at TYPO3\CMS\Backend\Http\RequestHandler->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/SiteResolver.php line 59

            $site = GeneralUtility::makeInstance(SiteMatcher::class)->matchByPageId($pageId, $rootLine);
            $request = $request->withAttribute('site', $site);
            $GLOBALS['TYPO3_REQUEST'] = $request;
        }
        return $handler->handle($request);
    }
}

at TYPO3\CMS\Backend\Middleware\SiteResolver->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(TYPO3\CMS\Backend\Http\RequestHandler))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/AdditionalResponseHeaders.php line 39

     * @return ResponseInterface
     */
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        $response = $handler->handle($request);
        foreach ($GLOBALS['TYPO3_CONF_VARS']['BE']['HTTP']['Response']['Headers'] ?? [] as $header) {
            [$headerName, $value] = explode(':', $header, 2);
            $response = $response->withAddedHeader($headerName, trim($value));
        }

at TYPO3\CMS\Backend\Middleware\AdditionalResponseHeaders->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/OutputCompression.php line 45

        ob_clean();
        // Initialize output compression if configured
        $this->initializeOutputCompression();

        return $handler->handle($request);
    }

    /**
     * Initialize output compression if configured

at TYPO3\CMS\Backend\Middleware\OutputCompression->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/LegacyBackendTemplateInitialization.php line 42

     */
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        $GLOBALS['TBE_TEMPLATE'] = GeneralUtility::makeInstance(DocumentTemplate::class);
        return $handler->handle($request);
    }
}

at TYPO3\CMS\Backend\Middleware\LegacyBackendTemplateInitialization->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/BackendUserAuthenticator.php line 70

        Bootstrap::initializeLanguageObject();
        // Register the backend user as aspect
        $this->setBackendUserAspect(GeneralUtility::makeInstance(Context::class), $GLOBALS['BE_USER']);

        return $handler->handle($request);
    }

    /**
     * Check if the user is required for the request

at TYPO3\CMS\Backend\Middleware\BackendUserAuthenticator->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/BackendRouteInitialization.php line 72

        // Add the route path to the request
        $request = $request->withAttribute('routePath', $pathToRoute);

        return $handler->handle($request);
    }
}

at TYPO3\CMS\Backend\Middleware\BackendRouteInitialization->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/ForcedHttpsBackendRedirector.php line 53

            list($server, $address) = explode('/', $url, 2);
            return new RedirectResponse('https://' . $server . $sslPortSuffix . '/' . $address);
        }

        return $handler->handle($request);
    }
}

at TYPO3\CMS\Backend\Middleware\ForcedHttpsBackendRedirector->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/LockedBackendGuard.php line 71

            $request->getAttribute('normalizedParams')->getRemoteAddress(),
            trim((string)$GLOBALS['TYPO3_CONF_VARS']['BE']['IPmaskList'])
        );

        return $handler->handle($request);
    }

    /**
     * Check adminOnly configuration variable and redirects to an URL in file typo3conf/LOCK_BACKEND

at TYPO3\CMS\Backend\Middleware\LockedBackendGuard->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Middleware/NormalizedParamsAttribute.php line 58

        // refactored to have ServerRequest object available where it is needed. This global will be
        // deprecated then and removed.
        $GLOBALS['TYPO3_REQUEST'] = $request;

        return $handler->handle($request);
    }
}

at TYPO3\CMS\Core\Middleware\NormalizedParamsAttribute->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 67

     * @return ResponseInterface
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        return $this->tip->handle($request);
    }

    /**
     * Seed the middleware stack with the inner request handler

at TYPO3\CMS\Core\Http\MiddlewareDispatcher->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/AbstractApplication.php line 108

    {
        $requestHandler = GeneralUtility::makeInstance($this->requestHandler);
        $dispatcher = $this->createMiddlewareDispatcher($requestHandler);

        return $dispatcher->handle($request);
    }

    /**
     * Set up the application and shut it down afterwards

at TYPO3\CMS\Core\Http\AbstractApplication->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Http/Application.php line 68

            return $this->installToolRedirect();
        }
        // Set up the initial context
        $this->initializeContext();
        return parent::handle($request);
    }

    /**
     * Check if LocalConfiguration.php and PackageStates.php exist

at TYPO3\CMS\Backend\Http\Application->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/AbstractApplication.php line 120

    final public function run(callable $execute = null)
    {
        try {
            $response = $this->handle(
                \TYPO3\CMS\Core\Http\ServerRequestFactory::fromGlobals()
            );
            if ($execute !== null) {
                call_user_func($execute);
            }

at TYPO3\CMS\Core\Http\AbstractApplication->run()
in /typo3_src-9.5.13/typo3/index.php line 24

// Set up the application for the backend
call_user_func(function () {
    $classLoader = require dirname(__DIR__).'/vendor/autoload.php';
    \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::run(1, \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::REQUESTTYPE_BE);
    \TYPO3\CMS\Core\Core\Bootstrap::init($classLoader)->get(\TYPO3\CMS\Backend\Http\Application::class)->run();
});

at {closure}()
in /typo3_src-9.5.13/typo3/index.php line 25

call_user_func(function () {
    $classLoader = require dirname(__DIR__).'/vendor/autoload.php';
    \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::run(1, \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::REQUESTTYPE_BE);
    \TYPO3\CMS\Core\Core\Bootstrap::init($classLoader)->get(\TYPO3\CMS\Backend\Http\Application::class)->run();
});

(2/3) #42883 Doctrine\DBAL\Driver\PDOException

SQLSTATE[42883]: Undefined function: 7 FEHLER: Operator existiert nicht: integer ~~ unknown LINE 1: ...T(*) FROM "sys_file_reference" WHERE ("uid_local" LIKE $1) A... ^ HINT: Kein Operator stimmt mit dem angegebenen Namen und den Argumenttypen überein. Sie müssen möglicherweise ausdrückliche Typumwandlungen hinzufügen.
in /vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php line 123

    {
        try {
            return parent::execute($params);
        } catch (\PDOException $exception) {
            throw new PDOException($exception);
        }
    }

    /**

at Doctrine\DBAL\Driver\PDOStatement->execute()
in /typo3_src-9.5.13/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php line 904

                $stmt = $connection->prepare($query);
                if ($types) {
                    $this->_bindTypedValues($stmt, $params, $types);
                    $stmt->execute();
                } else {
                    $stmt->execute($params);
                }
            } else {

at Doctrine\DBAL\Connection->executeQuery('SELECT COUNT(*) FROM "sys_file_reference" WHERE ("uid_local" LIKE ?) AND ("pid" IN (?)) AND ("deleted" <> ?)', array('%hirsch%', 1, 0), array(2, 1, 1))
in /vendor/doctrine/dbal/lib/Doctrine/DBAL/Query/QueryBuilder.php line 206

     */
    public function execute()
    {
        if ($this->type === self::SELECT) {
            return $this->connection->executeQuery($this->getSQL(), $this->params, $this->paramTypes);
        }

        return $this->connection->executeUpdate($this->getSQL(), $this->params, $this->paramTypes);
    }

at Doctrine\DBAL\Query\QueryBuilder->execute()
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Database/Query/QueryBuilder.php line 187

        // Set additional query restrictions
        $originalWhereConditions = $this->addAdditionalWhereConditions();

        $result = $this->concreteQueryBuilder->execute();

        // Restore the original query conditions in case the user keeps
        // on modifying the state.
        $this->concreteQueryBuilder->add('where', $originalWhereConditions, false);

at TYPO3\CMS\Core\Database\Query\QueryBuilder->execute()
in /typo3_src-9.5.13/typo3/sysext/recycler/Classes/Domain/Model/DeletedRecords.php line 176

                        $deletedField,
                        $queryBuilder->createNamedParameter(0, \PDO::PARAM_INT)
                    )
                )
                ->execute()
                ->fetchColumn(0);

            // split the limit
            list($offset, $rowCount) = GeneralUtility::intExplode(',', $this->limit, true);

at TYPO3\CMS\Recycler\Domain\Model\DeletedRecords->setData(1, 'sys_file_reference', 0, 'hirsch')
in /typo3_src-9.5.13/typo3/sysext/recycler/Classes/Domain/Model/DeletedRecords.php line 116

                        break;
                    }
                }
                $this->table[] = $tableKey;
                $this->setData($id, $tableKey, $depth, $filter);
            }
        }
        return $this;
    }

at TYPO3\CMS\Recycler\Domain\Model\DeletedRecords->loadData(1, '', 0, '0,25', 'hirsch')
in /typo3_src-9.5.13/typo3/sysext/recycler/Classes/Controller/RecyclerAjaxController.php line 89

                ]);

                /* @var DeletedRecords $model */
                $model = GeneralUtility::makeInstance(DeletedRecords::class);
                $model->loadData($this->conf['startUid'], $this->conf['table'], $this->conf['depth'], $this->conf['start'] . ',' . $this->conf['limit'], $this->conf['filterTxt']);
                $deletedRowsArray = $model->getDeletedRows();

                $model = GeneralUtility::makeInstance(DeletedRecords::class);
                $totalDeleted = $model->getTotalCount($this->conf['startUid'], $this->conf['table'], $this->conf['depth'], $this->conf['filterTxt']);

at TYPO3\CMS\Recycler\Controller\RecyclerAjaxController->dispatch(object(TYPO3\CMS\Core\Http\ServerRequest))
at call_user_func_array(array(object(TYPO3\CMS\Recycler\Controller\RecyclerAjaxController), 'dispatch'), array(object(TYPO3\CMS\Core\Http\ServerRequest)))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Http/RouteDispatcher.php line 87

                $arguments[] = $response;
            }
        }

        return call_user_func_array($target, $arguments);
    }

    /**
     * Wrapper method for static form protection utility

at TYPO3\CMS\Backend\Http\RouteDispatcher->dispatch(object(TYPO3\CMS\Core\Http\ServerRequest), object(TYPO3\CMS\Core\Http\Response))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Http/RequestHandler.php line 73

        }
        try {
            // Check if the router has the available route and dispatch.
            $dispatcher = GeneralUtility::makeInstance(RouteDispatcher::class);
            return $dispatcher->dispatch($request, $response);
        } catch (InvalidRequestTokenException $e) {
            // When token was invalid redirect to login
            $url = GeneralUtility::getIndpEnv('TYPO3_SITE_URL') . TYPO3_mainDir;
            return new RedirectResponse($url);

at TYPO3\CMS\Backend\Http\RequestHandler->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/SiteResolver.php line 59

            $site = GeneralUtility::makeInstance(SiteMatcher::class)->matchByPageId($pageId, $rootLine);
            $request = $request->withAttribute('site', $site);
            $GLOBALS['TYPO3_REQUEST'] = $request;
        }
        return $handler->handle($request);
    }
}

at TYPO3\CMS\Backend\Middleware\SiteResolver->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(TYPO3\CMS\Backend\Http\RequestHandler))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/AdditionalResponseHeaders.php line 39

     * @return ResponseInterface
     */
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        $response = $handler->handle($request);
        foreach ($GLOBALS['TYPO3_CONF_VARS']['BE']['HTTP']['Response']['Headers'] ?? [] as $header) {
            [$headerName, $value] = explode(':', $header, 2);
            $response = $response->withAddedHeader($headerName, trim($value));
        }

at TYPO3\CMS\Backend\Middleware\AdditionalResponseHeaders->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/OutputCompression.php line 45

        ob_clean();
        // Initialize output compression if configured
        $this->initializeOutputCompression();

        return $handler->handle($request);
    }

    /**
     * Initialize output compression if configured

at TYPO3\CMS\Backend\Middleware\OutputCompression->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/LegacyBackendTemplateInitialization.php line 42

     */
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        $GLOBALS['TBE_TEMPLATE'] = GeneralUtility::makeInstance(DocumentTemplate::class);
        return $handler->handle($request);
    }
}

at TYPO3\CMS\Backend\Middleware\LegacyBackendTemplateInitialization->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/BackendUserAuthenticator.php line 70

        Bootstrap::initializeLanguageObject();
        // Register the backend user as aspect
        $this->setBackendUserAspect(GeneralUtility::makeInstance(Context::class), $GLOBALS['BE_USER']);

        return $handler->handle($request);
    }

    /**
     * Check if the user is required for the request

at TYPO3\CMS\Backend\Middleware\BackendUserAuthenticator->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/BackendRouteInitialization.php line 72

        // Add the route path to the request
        $request = $request->withAttribute('routePath', $pathToRoute);

        return $handler->handle($request);
    }
}

at TYPO3\CMS\Backend\Middleware\BackendRouteInitialization->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/ForcedHttpsBackendRedirector.php line 53

            list($server, $address) = explode('/', $url, 2);
            return new RedirectResponse('https://' . $server . $sslPortSuffix . '/' . $address);
        }

        return $handler->handle($request);
    }
}

at TYPO3\CMS\Backend\Middleware\ForcedHttpsBackendRedirector->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/LockedBackendGuard.php line 71

            $request->getAttribute('normalizedParams')->getRemoteAddress(),
            trim((string)$GLOBALS['TYPO3_CONF_VARS']['BE']['IPmaskList'])
        );

        return $handler->handle($request);
    }

    /**
     * Check adminOnly configuration variable and redirects to an URL in file typo3conf/LOCK_BACKEND

at TYPO3\CMS\Backend\Middleware\LockedBackendGuard->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Middleware/NormalizedParamsAttribute.php line 58

        // refactored to have ServerRequest object available where it is needed. This global will be
        // deprecated then and removed.
        $GLOBALS['TYPO3_REQUEST'] = $request;

        return $handler->handle($request);
    }
}

at TYPO3\CMS\Core\Middleware\NormalizedParamsAttribute->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 67

     * @return ResponseInterface
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        return $this->tip->handle($request);
    }

    /**
     * Seed the middleware stack with the inner request handler

at TYPO3\CMS\Core\Http\MiddlewareDispatcher->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/AbstractApplication.php line 108

    {
        $requestHandler = GeneralUtility::makeInstance($this->requestHandler);
        $dispatcher = $this->createMiddlewareDispatcher($requestHandler);

        return $dispatcher->handle($request);
    }

    /**
     * Set up the application and shut it down afterwards

at TYPO3\CMS\Core\Http\AbstractApplication->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Http/Application.php line 68

            return $this->installToolRedirect();
        }
        // Set up the initial context
        $this->initializeContext();
        return parent::handle($request);
    }

    /**
     * Check if LocalConfiguration.php and PackageStates.php exist

at TYPO3\CMS\Backend\Http\Application->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/AbstractApplication.php line 120

    final public function run(callable $execute = null)
    {
        try {
            $response = $this->handle(
                \TYPO3\CMS\Core\Http\ServerRequestFactory::fromGlobals()
            );
            if ($execute !== null) {
                call_user_func($execute);
            }

at TYPO3\CMS\Core\Http\AbstractApplication->run()
in /typo3_src-9.5.13/typo3/index.php line 24

// Set up the application for the backend
call_user_func(function () {
    $classLoader = require dirname(__DIR__).'/vendor/autoload.php';
    \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::run(1, \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::REQUESTTYPE_BE);
    \TYPO3\CMS\Core\Core\Bootstrap::init($classLoader)->get(\TYPO3\CMS\Backend\Http\Application::class)->run();
});

at {closure}()
in /typo3_src-9.5.13/typo3/index.php line 25

call_user_func(function () {
    $classLoader = require dirname(__DIR__).'/vendor/autoload.php';
    \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::run(1, \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::REQUESTTYPE_BE);
    \TYPO3\CMS\Core\Core\Bootstrap::init($classLoader)->get(\TYPO3\CMS\Backend\Http\Application::class)->run();
});

(3/3) #42883 PDOException

SQLSTATE[42883]: Undefined function: 7 FEHLER: Operator existiert nicht: integer ~~ unknown LINE 1: ...T(*) FROM "sys_file_reference" WHERE ("uid_local" LIKE $1) A... ^ HINT: Kein Operator stimmt mit dem angegebenen Namen und den Argumenttypen überein. Sie müssen möglicherweise ausdrückliche Typumwandlungen hinzufügen.
in /vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php line 121

     */
    public function execute($params = null)
    {
        try {
            return parent::execute($params);
        } catch (\PDOException $exception) {
            throw new PDOException($exception);
        }
    }

at PDOStatement->execute(null)
in /vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php line 121

     */
    public function execute($params = null)
    {
        try {
            return parent::execute($params);
        } catch (\PDOException $exception) {
            throw new PDOException($exception);
        }
    }

at Doctrine\DBAL\Driver\PDOStatement->execute()
in /typo3_src-9.5.13/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php line 904

                $stmt = $connection->prepare($query);
                if ($types) {
                    $this->_bindTypedValues($stmt, $params, $types);
                    $stmt->execute();
                } else {
                    $stmt->execute($params);
                }
            } else {

at Doctrine\DBAL\Connection->executeQuery('SELECT COUNT(*) FROM "sys_file_reference" WHERE ("uid_local" LIKE ?) AND ("pid" IN (?)) AND ("deleted" <> ?)', array('%hirsch%', 1, 0), array(2, 1, 1))
in /vendor/doctrine/dbal/lib/Doctrine/DBAL/Query/QueryBuilder.php line 206

     */
    public function execute()
    {
        if ($this->type === self::SELECT) {
            return $this->connection->executeQuery($this->getSQL(), $this->params, $this->paramTypes);
        }

        return $this->connection->executeUpdate($this->getSQL(), $this->params, $this->paramTypes);
    }

at Doctrine\DBAL\Query\QueryBuilder->execute()
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Database/Query/QueryBuilder.php line 187

        // Set additional query restrictions
        $originalWhereConditions = $this->addAdditionalWhereConditions();

        $result = $this->concreteQueryBuilder->execute();

        // Restore the original query conditions in case the user keeps
        // on modifying the state.
        $this->concreteQueryBuilder->add('where', $originalWhereConditions, false);

at TYPO3\CMS\Core\Database\Query\QueryBuilder->execute()
in /typo3_src-9.5.13/typo3/sysext/recycler/Classes/Domain/Model/DeletedRecords.php line 176

                        $deletedField,
                        $queryBuilder->createNamedParameter(0, \PDO::PARAM_INT)
                    )
                )
                ->execute()
                ->fetchColumn(0);

            // split the limit
            list($offset, $rowCount) = GeneralUtility::intExplode(',', $this->limit, true);

at TYPO3\CMS\Recycler\Domain\Model\DeletedRecords->setData(1, 'sys_file_reference', 0, 'hirsch')
in /typo3_src-9.5.13/typo3/sysext/recycler/Classes/Domain/Model/DeletedRecords.php line 116

                        break;
                    }
                }
                $this->table[] = $tableKey;
                $this->setData($id, $tableKey, $depth, $filter);
            }
        }
        return $this;
    }

at TYPO3\CMS\Recycler\Domain\Model\DeletedRecords->loadData(1, '', 0, '0,25', 'hirsch')
in /typo3_src-9.5.13/typo3/sysext/recycler/Classes/Controller/RecyclerAjaxController.php line 89

                ]);

                /* @var DeletedRecords $model */
                $model = GeneralUtility::makeInstance(DeletedRecords::class);
                $model->loadData($this->conf['startUid'], $this->conf['table'], $this->conf['depth'], $this->conf['start'] . ',' . $this->conf['limit'], $this->conf['filterTxt']);
                $deletedRowsArray = $model->getDeletedRows();

                $model = GeneralUtility::makeInstance(DeletedRecords::class);
                $totalDeleted = $model->getTotalCount($this->conf['startUid'], $this->conf['table'], $this->conf['depth'], $this->conf['filterTxt']);

at TYPO3\CMS\Recycler\Controller\RecyclerAjaxController->dispatch(object(TYPO3\CMS\Core\Http\ServerRequest))
at call_user_func_array(array(object(TYPO3\CMS\Recycler\Controller\RecyclerAjaxController), 'dispatch'), array(object(TYPO3\CMS\Core\Http\ServerRequest)))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Http/RouteDispatcher.php line 87

                $arguments[] = $response;
            }
        }

        return call_user_func_array($target, $arguments);
    }

    /**
     * Wrapper method for static form protection utility

at TYPO3\CMS\Backend\Http\RouteDispatcher->dispatch(object(TYPO3\CMS\Core\Http\ServerRequest), object(TYPO3\CMS\Core\Http\Response))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Http/RequestHandler.php line 73

        }
        try {
            // Check if the router has the available route and dispatch.
            $dispatcher = GeneralUtility::makeInstance(RouteDispatcher::class);
            return $dispatcher->dispatch($request, $response);
        } catch (InvalidRequestTokenException $e) {
            // When token was invalid redirect to login
            $url = GeneralUtility::getIndpEnv('TYPO3_SITE_URL') . TYPO3_mainDir;
            return new RedirectResponse($url);

at TYPO3\CMS\Backend\Http\RequestHandler->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/SiteResolver.php line 59

            $site = GeneralUtility::makeInstance(SiteMatcher::class)->matchByPageId($pageId, $rootLine);
            $request = $request->withAttribute('site', $site);
            $GLOBALS['TYPO3_REQUEST'] = $request;
        }
        return $handler->handle($request);
    }
}

at TYPO3\CMS\Backend\Middleware\SiteResolver->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(TYPO3\CMS\Backend\Http\RequestHandler))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/AdditionalResponseHeaders.php line 39

     * @return ResponseInterface
     */
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        $response = $handler->handle($request);
        foreach ($GLOBALS['TYPO3_CONF_VARS']['BE']['HTTP']['Response']['Headers'] ?? [] as $header) {
            [$headerName, $value] = explode(':', $header, 2);
            $response = $response->withAddedHeader($headerName, trim($value));
        }

at TYPO3\CMS\Backend\Middleware\AdditionalResponseHeaders->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/OutputCompression.php line 45

        ob_clean();
        // Initialize output compression if configured
        $this->initializeOutputCompression();

        return $handler->handle($request);
    }

    /**
     * Initialize output compression if configured

at TYPO3\CMS\Backend\Middleware\OutputCompression->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/LegacyBackendTemplateInitialization.php line 42

     */
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        $GLOBALS['TBE_TEMPLATE'] = GeneralUtility::makeInstance(DocumentTemplate::class);
        return $handler->handle($request);
    }
}

at TYPO3\CMS\Backend\Middleware\LegacyBackendTemplateInitialization->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/BackendUserAuthenticator.php line 70

        Bootstrap::initializeLanguageObject();
        // Register the backend user as aspect
        $this->setBackendUserAspect(GeneralUtility::makeInstance(Context::class), $GLOBALS['BE_USER']);

        return $handler->handle($request);
    }

    /**
     * Check if the user is required for the request

at TYPO3\CMS\Backend\Middleware\BackendUserAuthenticator->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/BackendRouteInitialization.php line 72

        // Add the route path to the request
        $request = $request->withAttribute('routePath', $pathToRoute);

        return $handler->handle($request);
    }
}

at TYPO3\CMS\Backend\Middleware\BackendRouteInitialization->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/ForcedHttpsBackendRedirector.php line 53

            list($server, $address) = explode('/', $url, 2);
            return new RedirectResponse('https://' . $server . $sslPortSuffix . '/' . $address);
        }

        return $handler->handle($request);
    }
}

at TYPO3\CMS\Backend\Middleware\ForcedHttpsBackendRedirector->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Middleware/LockedBackendGuard.php line 71

            $request->getAttribute('normalizedParams')->getRemoteAddress(),
            trim((string)$GLOBALS['TYPO3_CONF_VARS']['BE']['IPmaskList'])
        );

        return $handler->handle($request);
    }

    /**
     * Check adminOnly configuration variable and redirects to an URL in file typo3conf/LOCK_BACKEND

at TYPO3\CMS\Backend\Middleware\LockedBackendGuard->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Middleware/NormalizedParamsAttribute.php line 58

        // refactored to have ServerRequest object available where it is needed. This global will be
        // deprecated then and removed.
        $GLOBALS['TYPO3_REQUEST'] = $request;

        return $handler->handle($request);
    }
}

at TYPO3\CMS\Core\Middleware\NormalizedParamsAttribute->process(object(TYPO3\CMS\Core\Http\ServerRequest), object(class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 138

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}

at class@anonymous/typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php0x7ff47169c056->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 67

     * @return ResponseInterface
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        return $this->tip->handle($request);
    }

    /**
     * Seed the middleware stack with the inner request handler

at TYPO3\CMS\Core\Http\MiddlewareDispatcher->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/AbstractApplication.php line 108

    {
        $requestHandler = GeneralUtility::makeInstance($this->requestHandler);
        $dispatcher = $this->createMiddlewareDispatcher($requestHandler);

        return $dispatcher->handle($request);
    }

    /**
     * Set up the application and shut it down afterwards

at TYPO3\CMS\Core\Http\AbstractApplication->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/backend/Classes/Http/Application.php line 68

            return $this->installToolRedirect();
        }
        // Set up the initial context
        $this->initializeContext();
        return parent::handle($request);
    }

    /**
     * Check if LocalConfiguration.php and PackageStates.php exist

at TYPO3\CMS\Backend\Http\Application->handle(object(TYPO3\CMS\Core\Http\ServerRequest))
in /typo3_src-9.5.13/typo3/sysext/core/Classes/Http/AbstractApplication.php line 120

    final public function run(callable $execute = null)
    {
        try {
            $response = $this->handle(
                \TYPO3\CMS\Core\Http\ServerRequestFactory::fromGlobals()
            );
            if ($execute !== null) {
                call_user_func($execute);
            }

at TYPO3\CMS\Core\Http\AbstractApplication->run()
in /typo3_src-9.5.13/typo3/index.php line 24

// Set up the application for the backend
call_user_func(function () {
    $classLoader = require dirname(__DIR__).'/vendor/autoload.php';
    \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::run(1, \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::REQUESTTYPE_BE);
    \TYPO3\CMS\Core\Core\Bootstrap::init($classLoader)->get(\TYPO3\CMS\Backend\Http\Application::class)->run();
});

at {closure}()
in /typo3_src-9.5.13/typo3/index.php line 25

call_user_func(function () {
    $classLoader = require dirname(__DIR__).'/vendor/autoload.php';
    \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::run(1, \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::REQUESTTYPE_BE);
    \TYPO3\CMS\Core\Core\Bootstrap::init($classLoader)->get(\TYPO3\CMS\Backend\Http\Application::class)->run();
});
Actions #7

Updated by Gerrit Code Review over 4 years ago

  • Status changed from New to Under Review

Patch set 1 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/63885

Actions #8

Updated by Gerrit Code Review over 4 years ago

Patch set 2 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/63885

Actions #9

Updated by Gerrit Code Review over 4 years ago

Patch set 3 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/63885

Actions #10

Updated by Gerrit Code Review over 4 years ago

Patch set 4 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/63885

Actions #11

Updated by Gerrit Code Review over 4 years ago

Patch set 5 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/63885

Actions #12

Updated by Gerrit Code Review over 4 years ago

Patch set 6 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/63885

Actions #13

Updated by Gerrit Code Review over 4 years ago

Patch set 7 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/63885

Actions #14

Updated by Gerrit Code Review over 4 years ago

Patch set 1 for branch 9.5 of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/64153

Actions #15

Updated by Manuel Selbach over 4 years ago

  • Status changed from Under Review to Resolved
  • % Done changed from 0 to 100
Actions #16

Updated by Gerrit Code Review over 4 years ago

  • Status changed from Resolved to Under Review

Patch set 2 for branch 9.5 of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/64153

Actions #17

Updated by Manuel Selbach over 4 years ago

  • Status changed from Under Review to Resolved
Actions #18

Updated by Benni Mack over 4 years ago

  • Status changed from Resolved to Closed
Actions

Also available in: Atom PDF