Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301, USA.
- Bacula® is a registered trademark of John Walker.
+ Bacula® is a registered trademark of Kern Sibbald.
The licensor of Bacula is the Free Software Foundation Europe
(FSFE), Fiduciary Program, Sumatrastrasse 25, 8006 Zürich,
Switzerland, email:ftf@fsfeurope.org.
mdb->path = get_pool_memory(PM_FNAME);
mdb->esc_name = get_pool_memory(PM_FNAME);
mdb->esc_path = get_pool_memory(PM_FNAME);
+ mdb->allow_transactions = mult_db_connections;
qinsert(&db_list, &mdb->bq); /* put db in list */
Dmsg3(100, "initdb ref=%d connected=%d db=%p\n", mdb->ref_count,
mdb->connected, mdb->db);
}
if ((errstat=rwl_init(&mdb->lock)) != 0) {
+ berrno be;
Mmsg1(&mdb->errmsg, _("Unable to initialize DB lock. ERR=%s\n"),
- strerror(errstat));
+ be.bstrerror(errstat));
V(mutex);
return 0;
}
Dmsg3(100, "opendb ref=%d connected=%d db=%p\n", mdb->ref_count,
mdb->connected, mdb->db);
+ /* Set connection timeout to 8 days specialy for batch mode */
+ sql_query(mdb, "SET wait_timeout=691200");
+ sql_query(mdb, "SET interactive_timeout=691200");
+
V(mutex);
return 1;
}
* Submit a general SQL command (cmd), and for each row returned,
* the sqlite_handler is called with the ctx.
*/
-int db_sql_query(B_DB *mdb, const char *query, DB_RESULT_HANDLER *result_handler, void *ctx)
+bool db_sql_query(B_DB *mdb, const char *query, DB_RESULT_HANDLER *result_handler, void *ctx)
{
SQL_ROW row;
bool send = true;
if (sql_query(mdb, query) != 0) {
Mmsg(mdb->errmsg, _("Query failed: %s: ERR=%s\n"), query, sql_strerror(mdb));
db_unlock(mdb);
- return 0;
+ return false;
}
if (result_handler != NULL) {
if ((mdb->result = sql_use_result(mdb)) != NULL) {
}
}
db_unlock(mdb);
- return 1;
+ return true;
}