Bug #67933

compatibility6 crashes TYPO3 BE

Added by Franz Holzinger over 6 years ago. Updated about 3 years ago.

Status:
Closed
Priority:
Must have
Assignee:
-
Category:
-
Target version:
-
Start date:
2015-07-06
Due date:
% Done:

100%

Estimated time:
TYPO3 Version:
7
PHP Version:
Tags:
Complexity:
Is Regression:
No
Sprint Focus:

Description

The extension compatibility6 leads to an exception which blocks the TYPO3 backend and Install Tool.

Uncaught TYPO3 Exception
#1320585902: $hookObject must implement interface TYPO3\CMS\Core\Database\TableConfigurationPostProcessingHookInterface (More information)

UnexpectedValueException thrown in file
/var/www/html/developer/typo3_src-7.3.1/typo3/sysext/core/Classes/Core/Bootstrap.php in line 1048.

5 TYPO3\CMS\Core\Core\Bootstrap::runExtTablesPostProcessingHooks()

This is because the class name "TYPO3\CMS\Compatibility6\Hooks\ExtTablesPostProcessing\TcaMigration" cannot be found in the file Bootstrap.php.

getUserObj $class "TYPO3\CMS\Compatibility6\Hooks\ExtTablesPostProcessing\TcaMigration"does not exist

getUserObj says: $class "TYPO3\CMS\Compatibility6\Hooks\ExtTablesPostProcessing\TcaMigration" does not exist .

    /**
     * Check for registered ext tables hooks and run them
     *
     * @throws \UnexpectedValueException
     * @return void
     */
    protected function runExtTablesPostProcessingHooks() {
        if (is_array($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['GLOBAL']['extTablesInclusion-PostProcessing'])) {
            foreach ($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['GLOBAL']['extTablesInclusion-PostProcessing'] as $classReference) {
                /** @var $hookObject \TYPO3\CMS\Core\Database\TableConfigurationPostProcessingHookInterface */
                $hookObject = Utility\GeneralUtility::getUserObj($classReference);

The $hookObject is always empty. Then an exception with the wrong message is given.
And the Backend has gone without any possibility to restore it.
I could not find the autoloader for the class of extension compatibility6. It seems to be missing.


Related issues

Related to TYPO3 Core - Bug #68480: compatibility6 crashes TYPO3 BE - part 2ClosedHelmut Hummel2015-07-23

Actions
Related to TYPO3 Core - Bug #71507: compatibility6 still crashes TYPO3 7.6 BE and InstalltoolClosedNicole Cordes2015-11-12

Actions
#1

Updated by Christian Kuhn over 6 years ago

know issue. helmut will hopefully handle this soon.

#2

Updated by Gerrit Code Review over 6 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 http://review.typo3.org/40961

#3

Updated by Gerrit Code Review over 6 years ago

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

#4

Updated by Gerrit Code Review over 6 years ago

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

#5

Updated by Helmut Hummel over 6 years ago

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

Updated by Franz Holzinger over 6 years ago

I did fetch the Git for this patch. However Compatibility6 still causes a crash.

The Install Tool hangs and shows these debug trace lines.


Uncaught TYPO3 Exception
#1320585902: $hookObject "TYPO3\CMS\Compatibility6\Hooks\ExtTablesPostProcessing\TcaMigration" must implement interface TYPO3\CMS\Core\Database\TableConfigurationPostProcessingHookInterface (More information)

UnexpectedValueException thrown in file
/var/www/html/developer/TYPO3.CMS-master/typo3/sysext/core/Classes/Core/Bootstrap.php in line 1023.

12 TYPO3\CMS\Core\Core\Bootstrap::runExtTablesPostProcessingHooks()

/var/www/html/developer/TYPO3.CMS-master/typo3/sysext/core/Classes/Core/Bootstrap.php:

00975:   ExtensionManagementUtility::loadExtTables($allowCaching);
00976:   $this->executeExtTablesAdditionalFile();

00977:   $this->runExtTablesPostProcessingHooks();

00978:   return $this;
00979:  }

11 TYPO3\CMS\Core\Core\Bootstrap::loadExtensionTables(boolean)

/var/www/html/developer/TYPO3.CMS-master/typo3/sysext/install/Classes/Controller/Action/AbstractAction.php:

00253:    ->unsetReservedGlobalVariables()
00254:    ->initializeTypo3DbGlobal()

00255:    ->loadExtensionTables(FALSE);

00256:  }
00257: 

10 TYPO3\CMS\Install\Controller\Action\AbstractAction::loadExtLocalconfDatabaseAndExtTables()

/var/www/html/developer/TYPO3.CMS-master/typo3/sysext/install/Classes/Controller/Action/Tool/ImportantActions.php:

00055:    || isset($this->postValues['set']['databaseAnalyzerAnalyze'])
00056:   ) {

00057:    $this->loadExtLocalconfDatabaseAndExtTables();

00058:   }
00059:   if (isset($this->postValues['set']['databaseAnalyzerExecute'])) {

9 TYPO3\CMS\Install\Controller\Action\Tool\ImportantActions::executeAction()

/var/www/html/developer/TYPO3.CMS-master/typo3/sysext/install/Classes/Controller/Action/AbstractAction.php:

00087:  public function handle() {
00088:   $this->initializeHandle();

00089:   return $this->executeAction();

00090:  }
00091: 

8 TYPO3\CMS\Install\Controller\Action\AbstractAction::handle()

/var/www/html/developer/TYPO3.CMS-master/typo3/sysext/install/Classes/Controller/ToolController.php:

00185:   $toolAction->setPostValues($this->getPostValues());
00186:   $toolAction->setLastError($this->getLastError());

00187:   $this->output($toolAction->handle());

00188:  }
00189: 

7 TYPO3\CMS\Install\Controller\ToolController::dispatchAuthenticationActions()

/var/www/html/developer/TYPO3.CMS-master/typo3/sysext/install/Classes/Controller/ToolController.php:

00061:   $this->outputLoginFormIfNotAuthorized();
00062:   $this->registerExtensionConfigurationErrorHandler();

00063:   $this->dispatchAuthenticationActions();

00064:  }
00065: 

6 TYPO3\CMS\Install\Controller\ToolController::execute()

/var/www/html/developer/TYPO3.CMS-master/typo3/sysext/install/Classes/Http/RequestHandler.php:

00058:     $controllerClassName = \TYPO3\CMS\Install\Controller\StepController::class;
00059:   }

00060:   GeneralUtility::makeInstance($controllerClassName)->execute();

00061:  }
00062: 

5 TYPO3\CMS\Install\Http\RequestHandler::handleRequest()

/var/www/html/developer/TYPO3.CMS-master/typo3/sysext/core/Classes/Core/Bootstrap.php:

00188:  public function handleRequest() {
00189:   $requestHandler = $this->resolveRequestHandler();

00190:   $requestHandler->handleRequest();

00191:   return $this;
00192:  }

4 TYPO3\CMS\Core\Core\Bootstrap::handleRequest()

/var/www/html/developer/TYPO3.CMS-master/typo3/sysext/install/Classes/Http/Application.php:

00070:    ->startOutputBuffering()
00071:    ->loadConfigurationAndInitialize(FALSE, \TYPO3\CMS\Core\Package\FailsafePackageManager::class)

00072:    ->handleRequest();

00073: 
00074:   if ($execute !== NULL) {

3 TYPO3\CMS\Install\Http\Application::run()

/var/www/html/developer/TYPO3.CMS-master/typo3/sysext/install/Start/Install.php:

00106: call_user_func(function() {
00107:  $classLoader = require __DIR__ . '/../../../contrib/vendor/autoload.php';

00108:  (new \TYPO3\CMS\Install\Http\Application($classLoader))->run();

00109: });

2 {closure}()

1 call_user_func(Closure)

/var/www/html/developer/TYPO3.CMS-master/typo3/sysext/install/Start/Install.php:

00107:  $classLoader = require __DIR__ . '/../../../contrib/vendor/autoload.php';
00108:  (new \TYPO3\CMS\Install\Http\Application($classLoader))->run();

00109: });

#7

Updated by Felix Kopp over 6 years ago

EXT: compatibility6 can not be activated in 7.3.1 without fatal error at the moment. Tried in two setups.

#8

Updated by Thomas Peterson about 6 years ago

Felix Kopp wrote:

EXT: compatibility6 can not be activated in 7.3.1 without fatal error at the moment. Tried in two setups.

Anyone have an tip how i can get it to work?

#9

Updated by Wolfgang Klinger about 6 years ago

I still get the error with 7.5 after running the update wizard and activating the extension compatibility6 via PackageStates.php

Uncaught TYPO3 Exception
#1320585902: $hookObject "TYPO3\CMS\Compatibility6\Hooks\ExtTablesPostProcessing\TcaMigration" must implement interface TYPO3\CMS\Core\Database\TableConfigurationPostProcessingHookInterface (More information)

UnexpectedValueException thrown in file
/var/www/dev.demo-7/typo3_src/typo3/sysext/core/Classes/Core/Bootstrap.php in line 983.

12 TYPO3\CMS\Core\Core\Bootstrap::runExtTablesPostProcessingHooks()

/var/www/dev.demo-7/typo3_src/typo3/sysext/core/Classes/Core/Bootstrap.php:
00935:   ExtensionManagementUtility::loadExtTables($allowCaching);
00936:   $this->executeExtTablesAdditionalFile();
00937:   $this->runExtTablesPostProcessingHooks();
00938:   return $this;
00939:  }

11 TYPO3\CMS\Core\Core\Bootstrap::loadExtensionTables(boolean)

/var/www/dev.demo-7/typo3_src/typo3/sysext/install/Classes/Controller/Action/AbstractAction.php:
00252:    ->unsetReservedGlobalVariables()
00253:    ->initializeTypo3DbGlobal()
00254:    ->loadExtensionTables(FALSE);
00255:  }
00256: 
#10

Updated by Franz Holzinger about 6 years ago

Wolfgang Podbregar Klinger:

see bug #68480

#11

Updated by Benni Mack about 3 years ago

  • Status changed from Resolved to Closed

Also available in: Atom PDF