There are some typical errors that we have committed during test installations. Here we list these mistakes together with the solution.
After successful compilation and installation the test program resulted Module Specific error:
# scriba testbdbtransaction.bas
(0): error 0x80000002:Extension specific error
# scriba testbdbtransaction.bas (0): error 0x80000002:Extension specific error
The reason for this failure is that the example program tries to test the transactional behavior of the module bdb. The transaction handling is not automatically started. In order to have transaction support you have to insert the lines:
flags ( init_lock yes init_log yes init_mpool yes init_txn yes )
into the ScriptBasic configuration file and compile the configuration file to binary format.
After we have inserted these lines into the configuration file we still got the same error. The reason was that the transactional lock and log files were not yet present. In order to create these you have to tell the Berkeley Database to automatically create the files if they are not present to reach this you have to insert the line
flags ( create yes )
into the configuration file. This is needed even if the flag bdb::Create was used in the bdb::Open statement. The flag says to create the database file itself, but does not order the Berkeley Database to automatically create the log and lock files for the transactions.