DatabaseTestsAndFixes-Firebird

How to make it working with Firebird DB

Created by: luciash d' being, Last modification: 13 Aug 2008 (17:44 UTC) by laetzer

Firebird and bitweaver on CVS HEAD

Usually works without problems, but HEAD may contain code that hasn't yet been tested with Firebird.

Firebird 2.0 and bitweaver 2.0

Just 'works'. Only known bug is updating stats throws a deadlock error. Firebird 2.1 should work equally well.

Firebird 1.5 and bitweaver 1.3.0

It was said that on development branch (CVS HEAD) of bitweaver Firebird database is much more stable, better supported, fixed and polished but the fixes were not backported to stable release yet. However bitweaver 1.3.0 can run with Firebird database too but at least the following tweaks and fixes are needed:

  1. Update utils/adodb/ with the last version of ADOdb library, otherwise after changing default English to another language bitweaver will fail to work anymore completely
  2. It's needed to shorten the names of sequences for generators (Firebird allows max. 30 chars for their names). Edit file articles/admin/schema_inc.php as follows:
    Replace this commented-out part of code
    
    <?php
    /* commented these out because these sequences are automatically generated
    $sequences = array (
            'tiki_article_topics_topic_id_seq' => array( 'start' => 1 ),
            'tiki_article_types_article_type_id_seq' => array( 'start' => 1 ),
            'tiki_articles_article_id_seq' => array( 'start' => 1 ),
    );
    $gBitInstaller->registerSchemaSequences( ARTICLES_PKG_NAME, $sequences );
    */
    ?>

    with this code
    
    <?php
    /* commented these out because these sequences are automatically generated */
    $sequences = array (
    #       'tiki_article_topics_article_type_id_seq' => array( 'start' => 1 ), FIX for Firebird on the next line:
            
    'tiki_article_topics_a_t_id_seq' => array( 'start' => ),
    #       'tiki_article_types_article_type_id_seq' => array( 'start' => 1 ), FIX for Firebird on the next line:
            
    'tiki_article_types_a_t_id_seq' => array( 'start' => ),
            
    'tiki_articles_article_id_seq' => array( 'start' => ),
    );
    $gBitInstaller->registerSchemaSequencesARTICLES_PKG_NAME$sequences );
    ?>

  3. Edit file articles/BitArticle.php:
    Because TYPE is Firebird's reserved word (this has been fixed in CVS HEAD branch) it needs to change all occurences of type. to types. in the file
  4. Edit file articles/BitArticleTopic.php:
    Yes, AT is reserved word too, so the same must be done with the three ocurrences of "at" in articles/BitArticleTopic.php
  5. Edit file articles/BitArticleType.php
  6. ...


this page is under composition... (feel free to rename it when the wiki page name doesn't fit)

Comments

DON'T CHANGE ADODB !!!

by Lester Caine, 13 Oct 2006 (20:11 UTC)
The Firebird version of ADOdb included in bitweaver has a number of fixes in the datadict in order to get the installer working at all. These are reflected into the driver.
Changing the ADOdb for a 'non-bitweaver' version will break things - such as those listed.

I skipped R1.3.1 as the next release will be based on the R2 code, which has dropped the major hassle of double quotes on all tables and field names. This is currently running on http://wiki.firebirdserver.org/ and any bugs found are being passed back to the CVS.
  Page 1 of 1  1