Project

General

Profile

Actions

Bug #27195

closed

1-2-3 Wizard fails with AdoDB/DBAL errors

Added by Steffen Gebert over 13 years ago. Updated almost 13 years ago.

Status:
Rejected
Priority:
Should have
Assignee:
-
Category:
Install Tool
Target version:
-
Start date:
2011-06-02
Due date:
% Done:

0%

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

Description

  • When selecting an existing database to install to, the 1-2-3 installer quits in step4 (after selecting the Introduction Package or blank) with
    ADONewConnection: Unable to load database driver ''
    
    Fatal error: Call to a member function Connect() on a non-object in 
    /opt/local/apache2/vhosts/master/typo3_src/typo3/sysext/dbal/class.ux_t3lib_db.php on line 3073
    Call Stack
    #    Time    Memory    Function    Location
    1    0.0001    641280    {main}( )    ../index.php:0
    2    0.0003    643488    require( '/opt/local/apache2/vhosts/master/typo3_src/typo3/init.php' )    ../index.php:140
    3    0.0183    2756224    tx_install->init( )    ../init.php:354
    4    0.0317    2756224    tx_install->stepOutput( )    ../class.tx_install.php:574
    5    0.0325    3042232    tx_install->checkTheConfig( )    ../class.tx_install.php:951
    6    0.0429    3048512    tx_install->checkDatabase( )    ../class.tx_install.php:1321
    7    0.0430    3048832    ux_t3lib_DB->sql_pconnect( )    ../class.tx_install.php:3177
    8    0.0430    3050408    ux_t3lib_DB->handler_init( )    ../class.ux_t3lib_db.php:2559
    
  • When I select to create a new database, I get this error:
    Your database connection failed

Occurs on MacOS with 4-5 and master. PHP pdo extension is loaded (but that's default IIRC).


Files

existing-db.png (83.8 KB) existing-db.png Steffen Gebert, 2011-06-02 18:21
new-db.png (21.7 KB) new-db.png Steffen Gebert, 2011-06-02 18:21

Related issues 1 (0 open1 closed)

Is duplicate of TYPO3 Core - Feature #24283: DBAL error in INSTALL TOOL > ADONewConnection: Unable to load database driver ''Closed2010-12-03

Actions
Actions #1

Updated by Steffen Gebert over 13 years ago

Now I can't reproduce anymore after a few webserver restarts. It occurred since a few weeks, when I tried to install the IP.

Actions #2

Updated by Steffen Gebert over 13 years ago

  • Status changed from New to Rejected
Actions #3

Updated by Steffen Gebert over 13 years ago

  • Status changed from Rejected to New

here we go again..

Actions #4

Updated by Hartmut Müller over 13 years ago

If used with Chrome Browser, Installer writes the following line at the end of localconf.php and show the "ADONewConnection: Unable to load database driver '':" error in the frontend:
$TYPO3_CONF_VARS['EXTCONF']['dbal']['handlerCfg'] = array('_DEFAULT' => array('type' => 'adodb','config' => array('driver' => '',)));;

Using Firefox, the installer does not write the above line. If the above line is deleted from localconf.php, neither Firefox or Chrome show errors.

Actions #5

Updated by Steffen Gebert over 13 years ago

Wow, thanks for this great observation! This really explains this weird Heisenbug to me - I always use Firefox for Debugging, thus the bug always disappeared, once I tried to investigate ;-)

Never thought that this could be browser-dependent. If you find the reason, please update! Could take a few days, until I find some time.

Actions #6

Updated by Steffen Gebert over 13 years ago

  • Category set to Install Tool
  • Priority changed from Should have to Must have
  • Target version set to 4.6.0-beta1
Actions #7

Updated by Steffen Gebert over 13 years ago

Hartmut, have you tried this with 4.6 or 4.6? This one is really incredible!! Again, I can't reproduce now, after fixing #28324.

Actions #8

Updated by Steffen Gebert over 13 years ago

Well, I spent some hours on this, but was still not able to figure out, why it occurs in Chrome, but not in Firefox. The whole thing is very weird, with the Install Tool's redirects and sending contradictory data in $_GET and $_POST.

  • I was able to reproduce it in Firefox, too, following this procedure:
    • Go through the wizard, until you have to select Introduction Package or Blank Package
    • Click on (1) to go back to the first step
    • Hit the Continue button.
  • Somehow, the tx_dbal_installtool::executeWriteLocalconf() is called for a second time in Chrome (after the HTTP redirect?), but as this time $instObj->INSTALL['localconf.php']['typo_db_driver'] is NULL, after passing the case. it writes the wrong information without an driver to @localconf.php.

Stack trace:

tx_dbal_installtool::executeWriteLocalconf(array, 4, tx_install)

/opt/local/apache2/vhosts/master/typo3_src/typo3/sysext/install/mod/class.tx_install.php:
03774:       foreach ($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['ext/install/mod/class.tx_install.php']['writeLocalconf'] as $classData) {
03775:        $hookObject = t3lib_div::getUserObj($classData);
03776:        $hookObject->executeWriteLocalconf($lines, $this->step, $this);
03777:       }
03778:      }

3 tx_install::setupGeneral()

/opt/local/apache2/vhosts/master/typo3_src/typo3/sysext/install/mod/class.tx_install.php:
00480:    // Setting stuff...
00481:   $this->check_mail();
00482:   $this->setupGeneral();
00483:   $this->generateConfigForm();
00484:   if (count($this->messages)) {

2 tx_install::init()

/opt/local/apache2/vhosts/master/typo3_src/typo3/init.php:
00342:  $install_check = t3lib_div::makeInstance('tx_install');
00343:  $install_check->allowUpdateLocalConf = 1;
00344:  $install_check->init();
00345:  exit;
00346: }

1 require("/opt/local/apache2/vhosts/master/typo3_src/typo3/init.php")

/opt/local/apache2/vhosts/master/typo3_src/typo3/install/index.php:
00138:  // Defining this variable and setting it non-false will invoke the install-screen called from init.php
00139: define('TYPO3_enterInstallScript', '1');
00140: require ('../init.php');
00141: 
00142: ?>

Actions #9

Updated by Stefan Neufeind over 13 years ago

Just wondering, could it be related to the browser maybe prefetching the next page or so and by that causing a "half" request (triggering an action it should not)?

Actions #10

Updated by Xavier Perseguers over 13 years ago

  • Target version changed from 4.6.0-beta1 to 4.6.0-beta2
Actions #11

Updated by Steffen Gebert about 13 years ago

Is somebody else able to reproduce this?

Actions #12

Updated by Xavier Perseguers about 13 years ago

  • Target version changed from 4.6.0-beta2 to 4.6.0-beta3
Actions #13

Updated by Oliver Hader about 13 years ago

  • Target version changed from 4.6.0-beta3 to 4.6.0-RC1
Actions #14

Updated by Ralf Merz about 13 years ago

Steffen Gebert wrote:

Is somebody else able to reproduce this?

Hi,

i´ve just tried to reproduce this on Macbook with MAMP Pro v 1.9 and Chrome (just made a fresh install), using introduction package TYPO3 4.6beta3.
All went fine... could not reproduce the error. All 4 steps ok.

After that I went to Database Analyzer and made a compare... again: everything ok.

Maybe this helps.

Regards
Ralf
(t3quetsche, merzilla)

Actions #15

Updated by Steffen Gebert about 13 years ago

  • Priority changed from Must have to Should have
  • Target version deleted (4.6.0-RC1)

Thanks for testing, Ralf! So I'm setting the priority down, as long as it's really only me. Nevertheless, I still can reproduce.

Actions #16

Updated by Ralf Merz about 13 years ago

Steffen Gebert wrote:

Thanks for testing, Ralf! So I'm setting the priority down, as long as it's really only me. Nevertheless, I still can reproduce.

You´re welcome! :)

Actions #17

Updated by Steffen Gebert almost 13 years ago

  • Status changed from New to Rejected

Not reproducible anymore.. :-)

Actions

Also available in: Atom PDF