From c23cdb44df67f40f01571317867d31186daaece3 Mon Sep 17 00:00:00 2001 From: donghee yang Date: Fri, 5 Apr 2013 10:47:30 +0900 Subject: [PATCH] [Title] Added thread mutex on DB access --- src/build_server/BuildServer.rb | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/build_server/BuildServer.rb b/src/build_server/BuildServer.rb index c3c56eb..1187759 100644 --- a/src/build_server/BuildServer.rb +++ b/src/build_server/BuildServer.rb @@ -108,6 +108,7 @@ class BuildServer @db_passwd = nil @db_version = 3 @sqlite3_db_mutex = Mutex.new + @db_transaction_mutex = Mutex.new #DB upgrade SQL command @db_migrate = [] @@ -722,9 +723,11 @@ class BuildServer @db = DBI.connect("DBI:#{@db_dsn}", @db_user, @db_passwd) end end - @db['AutoCommit'] = false - @db.transaction do |dbh| - yield dbh if block_given? + @db_transaction_mutex.synchronize do + @db['AutoCommit'] = false + @db.transaction do |dbh| + yield dbh if block_given? + end end return true -- 2.34.1