Bug #59829
closedUncaught TYPO3 Exception #1310027933
0%
Description
An exception occured during the rendering of an Extbase query in a custom extension. My method in the repository:
public function findAllByGroupUid($groupUid) { $query = $this->createQuery(); $query->matching( $query->equals('group', intval($groupUid)) ); $query->setOrderings(array( 'title' => $query::ORDER_ASCENDING, )); return $query->execute(); }
The error which occured:
Uncaught TYPO3 Exception #1310027933: DBAL fatal error: No handler found in handler_getFromTableList() for: "" (SQL engine parse ERROR: No table name found as expected in parseFromTables()!: near " ") (More information) RuntimeException thrown in file /var/www/vhosts/mysite.local/typo3_src/typo3/sysext/dbal/class.ux_t3lib_db.php in line 3028.
Cause:
When analyzing the call stack (see also http://wiki.typo3.org/Exception/CMS/1310027933) call #42 states this:
$this->replacePlaceholders($statement, $parameters, $statementParts['tables'][0]);
$statementParts has been initialized with a hashed index for $statementParts['tables'], not a numbered index, see Tx_Extbase_Persistence_Storage_Typo3DbBackend::parseSource(). The call to replacePlaceholders() will logically fail because of this.
Workaround 1: uninstall EXT:dbal
Workaround 2: apply attached patch. No negative effects have been found by my (limited) testing, but I'm not sure if this is the correct solution.
Bug affects TYPO3 CMS v4.5.35-dev and v4.7.20-dev, possibly others
Files