From: donghee yang Date: Tue, 30 Oct 2012 08:37:01 +0000 (+0900) Subject: [Title] Fixed not to use "INSERT OR REPLACE" X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1d7347d4b48852949699d12132e5a06f5eaaf5fb;p=sdk%2Ftools%2Fsdk-build.git [Title] Fixed not to use "INSERT OR REPLACE" --- diff --git a/src/build_server/BuildServer.rb b/src/build_server/BuildServer.rb index 4c98eaa..30133b2 100644 --- a/src/build_server/BuildServer.rb +++ b/src/build_server/BuildServer.rb @@ -322,7 +322,7 @@ class BuildServer get_db_connection() do |db| row = db.select_one("SELECT * FROM supported_os WHERE name='#{os_name}'") if not row.nil? then return false end - db.do "INSERT OR REPLACE INTO supported_os VALUES ('#{os_name}')" + db.do "INSERT INTO supported_os VALUES ('#{os_name}')" end return true diff --git a/src/build_server/DistributionManager.rb b/src/build_server/DistributionManager.rb index 7b4dec2..8801f4f 100644 --- a/src/build_server/DistributionManager.rb +++ b/src/build_server/DistributionManager.rb @@ -93,7 +93,12 @@ class PackageDistribution def save(db) dist_addr = @pkgsvr_ip + ":" + @pkgsvr_port.to_s - db.do "INSERT OR REPLACE INTO distributions VALUES ('#{@name}','#{@pkgsvr_url}','#{dist_addr}','#{@status}')" + row = db.select_one("SELECT * FROM distributions WHERE name='#{@name}'") + if row.nil? then + db.do "INSERT INTO distributions VALUES ('#{@name}','#{@pkgsvr_url}','#{dist_addr}','#{@status}')" + else + db.do "UPDATE distributions SET pkgsvr_url='#{@pkgsvr_url}', pkgsvr_addr='#{dist_addr}', status='#{@status}' WHERE name='#{@name}'" + end end end diff --git a/test/build-server.basic1/buildsvr.init b/test/build-server.basic1/buildsvr.init index 9432b2b..4187763 100755 --- a/test/build-server.basic1/buildsvr.init +++ b/test/build-server.basic1/buildsvr.init @@ -10,7 +10,8 @@ rm -rf ~/.build_tools/build_server/testserver3 ../../build-svr remove -n testserver3 mkdir buildsvr01 cd buildsvr01 -${RUBY} ../../../build-svr create -n testserver3 +${RUBY} ../../../build-svr create -n testserver3 +${RUBY} ../../../build-svr migrate -n testserver3 --dsn Mysql:testserver3:localhost --dbuser root --dbpassword ehdgml cd .. ${RUBY} ../../build-svr add-dist -n testserver3 -D BASE -u `pwd`/pkgsvr01/unstable -d 127.0.0.1:3333 ${RUBY} ../../build-svr add-svr -n testserver3 -d 127.0.0.1:2224