/* SQLite */
"BEGIN",
/* SQLite3 */
- "BEGIN"};
+ "BEGIN",
+ /* Ingres */
+ "BEGIN"
+};
const char *my_dbi_batch_lock_filename_query[4] = {
/* Mysql */
/* SQLite */
"BEGIN",
/* SQLite3 */
- "BEGIN"};
+ "BEGIN",
+ /* Ingres */
+ "BEGIN"
+};
const char *my_dbi_batch_unlock_tables_query[4] = {
/* Mysql */
/* SQLite3 */
"INSERT INTO Path (Path)"
" SELECT DISTINCT Path FROM batch"
- " EXCEPT SELECT Path FROM Path"};
+ " EXCEPT SELECT Path FROM Path",
+ /* Ingres */
+ "INSERT INTO Path (Path) "
+ "SELECT a.Path FROM "
+ "(SELECT DISTINCT Path FROM batch) AS a "
+ "WHERE NOT EXISTS (SELECT Path FROM Path WHERE Path = a.Path) "
+};
const char *my_dbi_batch_fill_filename_query[4] = {
/* Mysql */
/* SQLite3 */
"INSERT INTO Filename (Name)"
" SELECT DISTINCT Name FROM batch "
- " EXCEPT SELECT Name FROM Filename"};
+ " EXCEPT SELECT Name FROM Filename",
+ /* Ingres */
+ "INSERT INTO Filename (Name) "
+ "SELECT a.Name FROM "
+ "(SELECT DISTINCT Name FROM batch) as a "
+ "WHERE NOT EXISTS "
+ "(SELECT Name FROM Filename WHERE Name = a.Name)"
+};
#endif /* HAVE_BATCH_FILE_INSERT */
Dmsg0(500,"my_ingres_query: Start of transaction\n");
mdb->transaction = true;
return 0;
- } else if (strcasecmp(new_query, "END") != NULL) {
+ } else if (strcasecmp(new_query, "COMMIT") != NULL) {
/*
* End of a transaction.
*/
}
#ifdef HAVE_BATCH_FILE_INSERT
-const char *my_ingres_batch_lock_path_query =
- "BEGIN; LOCK TABLE Path IN SHARE ROW EXCLUSIVE MODE";
+const char *my_ingres_batch_lock_path_query = "BEGIN";
-
-const char *my_ingres_batch_lock_filename_query =
- "BEGIN; LOCK TABLE Filename IN SHARE ROW EXCLUSIVE MODE";
+const char *my_ingres_batch_lock_filename_query = "BEGIN";
const char *my_ingres_batch_unlock_tables_query = "COMMIT";