]> git.sur5r.net Git - bacula/bacula/commitdiff
Ensure that bvfs SQL link is not shared
authorEric Bollengier <eric@eb.homelinux.org>
Thu, 2 Feb 2012 20:11:20 +0000 (21:11 +0100)
committerKern Sibbald <kern@sibbald.com>
Sat, 20 Apr 2013 12:50:32 +0000 (14:50 +0200)
bacula/src/cats/cats.c
bacula/src/cats/cats.h
bacula/src/cats/dbi.c
bacula/src/cats/ingres.c
bacula/src/cats/mysql.c
bacula/src/cats/postgresql.c
bacula/src/cats/sqlite.c

index eed774c71c96451efd88a5ec287c229649dfcf38..4aef7206e37f27b86919aaa0257344b587e694a1 100644 (file)
@@ -49,11 +49,13 @@ bool B_DB::db_match_database(const char *db_driver, const char *db_name,
       match = strcasecmp(m_db_driver, db_driver) == 0 &&
               bstrcmp(m_db_name, db_name) &&
               bstrcmp(m_db_address, db_address) &&
-              m_db_port == db_port;
+              m_db_port == db_port &&
+              m_dedicated == false;
    } else {
       match = bstrcmp(m_db_name, db_name) &&
               bstrcmp(m_db_address, db_address) &&
-              m_db_port == db_port;
+              m_db_port == db_port &&
+              m_dedicated == false;
    }
    return match;
 }
index a22878c37514aefc5f13bc006dbca2628dd29e85..d46ba164f9fae90dce5db630e11844ac2b7fc547 100644 (file)
@@ -458,6 +458,7 @@ protected:
    char *m_db_password;                   /* database password */
    int m_db_port;                         /* port for host name address */
    bool m_disabled_batch_insert;          /* explicitly disabled batch insert mode ? */
+   bool m_dedicated;                      /* is this connection dedicated? */
 
 public:
    POOLMEM *errmsg;                       /* nicely edited error message */
index 3181e8b49beb422d2ceb20a8ac3173a7808cc584..1bf948fecc2dfcc56670001464dbf36f55ea3cf6 100644 (file)
@@ -171,6 +171,13 @@ B_DB_DBI::B_DB_DBI(JCR *jcr,
    esc_obj = get_pool_memory(PM_FNAME);
    m_allow_transactions = mult_db_connections;
 
+   /* At this time, when mult_db_connections == true, this is for 
+    * specific console command such as bvfs or batch mode, and we don't
+    * want to share a batch mode or bvfs. In the future, we can change
+    * the creation function to add this parameter.
+    */
+   m_dedicated = mult_db_connections; 
+
    /*
     * Initialize the private members.
     */
index feb1aecf4983aa1574b638f6e9afd1ee9f00eab4..b48fcf9052024eb17f5b71b648b78e51998b29f9 100755 (executable)
@@ -204,6 +204,13 @@ B_DB_INGRES::B_DB_INGRES(JCR *jcr,
    esc_obj = get_pool_memory(PM_FNAME);
    m_allow_transactions = mult_db_connections;
 
+   /* At this time, when mult_db_connections == true, this is for 
+    * specific console command such as bvfs or batch mode, and we don't
+    * want to share a batch mode or bvfs. In the future, we can change
+    * the creation function to add this parameter.
+    */
+   m_dedicated = mult_db_connections; 
+
    /*
     * Initialize the private members.
     */
index 0cdf19d733386c40ddf1967bd4b1edb5aca2c15d..513e4bb5f8f3ce8ee9beca98f61fd9c0a2d275d9 100644 (file)
@@ -116,6 +116,13 @@ B_DB_MYSQL::B_DB_MYSQL(JCR *jcr,
    esc_obj = get_pool_memory(PM_FNAME);
    m_allow_transactions = mult_db_connections;
 
+   /* At this time, when mult_db_connections == true, this is for 
+    * specific console command such as bvfs or batch mode, and we don't
+    * want to share a batch mode or bvfs. In the future, we can change
+    * the creation function to add this parameter.
+    */
+   m_dedicated = mult_db_connections; 
+
    /*
     * Initialize the private members.
     */
index 1f35b1634f282856f4c51d0daaab83f47193ab65..618b45b0abb938a8ee5b010ef6299b51a20e7ca8 100644 (file)
@@ -122,6 +122,13 @@ B_DB_POSTGRESQL::B_DB_POSTGRESQL(JCR *jcr,
    m_buf =  get_pool_memory(PM_FNAME);
    m_allow_transactions = mult_db_connections;
 
+   /* At this time, when mult_db_connections == true, this is for 
+    * specific console command such as bvfs or batch mode, and we don't
+    * want to share a batch mode or bvfs. In the future, we can change
+    * the creation function to add this parameter.
+    */
+   m_dedicated = mult_db_connections; 
+
    /*
     * Initialize the private members.
     */
index 0bb0e8533ac36e52c7a904c8b99a4d38529267ca..e012a7fd8e62673ad3f5899612ec3a029d4e0e27 100644 (file)
@@ -112,6 +112,13 @@ B_DB_SQLITE::B_DB_SQLITE(JCR *jcr,
    esc_obj  = get_pool_memory(PM_FNAME);
    m_allow_transactions = mult_db_connections;
 
+   /* At this time, when mult_db_connections == true, this is for 
+    * specific console command such as bvfs or batch mode, and we don't
+    * want to share a batch mode or bvfs. In the future, we can change
+    * the creation function to add this parameter.
+    */
+   m_dedicated = mult_db_connections; 
+
    /*
     * Initialize the private members.
     */