Change AutoCommit setting
authorAndreas Scherbaum <andreas@scherbaum.biz>
Wed, 15 Aug 2018 07:50:21 +0000 (09:50 +0200)
committerAndreas Scherbaum <andreas@scherbaum.biz>
Wed, 15 Aug 2018 07:50:21 +0000 (09:50 +0200)
(It's already in production for quite a while)
Add a few additional commit

db.pm
docbot.pl

diff --git a/db.pm b/db.pm
index fbaa0b5e63d7adc13c5308a2d89248f2b112e34a..724c5e63404d1392ce06e4bcddd5c94708d2d5a7 100644 (file)
--- a/db.pm
+++ b/db.pm
@@ -138,7 +138,7 @@ sub open_db_connection {
         {
             "RaiseError" => 0,
             "PrintError" => 0,
-            "AutoCommit" => 0
+            "AutoCommit" => 1
         }
     );
 
index b4a16c0fc4ce36aadcc520dcbaa12084c4dabb52..816b95e322f8e72ad64c9ca5f722aaac2c9be33a 100755 (executable)
--- a/docbot.pl
+++ b/docbot.pl
@@ -2141,6 +2141,7 @@ sub handle_command_grant {
                $answer = translate_text_for_channel($channel, 'database_error', $answer);
             return $answer;
         }
+        $main::db->commit();
         my $answer = "User added";
            $answer = translate_text_for_channel($channel, 'error_grant_user_added', $answer);
         return $answer;
@@ -2159,6 +2160,7 @@ sub handle_command_grant {
                    $answer = translate_text_for_channel($channel, 'database_error', $answer);
                 return $answer;
             }
+            $main::db->commit();
             my $answer = "User changed";
                $answer = translate_text_for_channel($channel, 'error_grant_user_canged', $answer);
             return $answer;
@@ -2345,6 +2347,7 @@ sub handle_command_learnuser {
                $answer = translate_text_for_channel($channel, 'database_error', $answer);
             return $answer;
         }
+        $main::db->commit();
         my $answer = "User added";
            $answer = translate_text_for_channel($channel, 'error_learnuser_user_added', $answer);
         return $answer;
@@ -2358,6 +2361,7 @@ sub handle_command_learnuser {
                $answer = translate_text_for_channel($channel, 'database_error', $answer);
             return $answer;
         }
+        $main::db->commit();
         my $answer = "User changed";
            $answer = translate_text_for_channel($channel, 'error_learnuser_user_canged', $answer);
         return $answer;
@@ -2448,6 +2452,7 @@ sub handle_command_forgetuser {
            $answer = translate_text_for_channel($channel, 'database_error', $answer);
         return $answer;
     }
+    $main::db->commit();
     my $answer = "User changed";
        $answer = translate_text_for_channel($channel, 'error_forgetuser_user_canged', $answer);
     return $answer;
@@ -3833,6 +3838,7 @@ sub handle_command_learn {
             }
             $st2->finish;
         }
+        $main::db->commit();
 
         if ($new_keys == 0) {
             # no new keys at all
@@ -3870,6 +3876,7 @@ sub handle_command_learn {
             $main::db->rollback();
             return $database_error;
         }
+        $main::db->commit();
 
         my $st2 = $main::db->query("SELECT currval(pg_get_serial_sequence('docbot_url', 'id'))");
         if (!$st2) {
@@ -3888,8 +3895,8 @@ sub handle_command_learn {
             }
             $new_keys++;
         }
-
         $main::db->commit();
+
         if ($new_keys == 1) {
             my $answer = "Successfully added URL with 1 keyword";
             print_msg($answer, DEBUG);