From: donghee yang Date: Mon, 11 Mar 2013 16:02:00 +0000 (+0900) Subject: [Title] Fixed to update the status of sub-jobs in multi-job X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0766444771b5610467f00d88c6556810bd1accb2;p=sdk%2Ftools%2Fsdk-build.git [Title] Fixed to update the status of sub-jobs in multi-job --- diff --git a/src/build_server/JobManager.rb b/src/build_server/JobManager.rb index 2e4d2fb..4dd559e 100644 --- a/src/build_server/JobManager.rb +++ b/src/build_server/JobManager.rb @@ -491,9 +491,6 @@ class JobManager def commit_job(job) result = save_job_status(job) - job.sub_jobs.each do |j| - save_job_status(j) - end return result end @@ -501,6 +498,9 @@ class JobManager now = @server.db_now result = @server.get_db_connection() do |db| job.save(db, now) + job.sub_jobs.each do |j| + j.save(db, now) + end end return result diff --git a/src/build_server/MultiBuildJob.rb b/src/build_server/MultiBuildJob.rb index f387cce..c14b4df 100644 --- a/src/build_server/MultiBuildJob.rb +++ b/src/build_server/MultiBuildJob.rb @@ -105,6 +105,7 @@ class MultiBuildJob < CommonJob end # initialize all sub jobs and add them to "internal_jobs" + tstatus = @status @sub_jobs.each do |job| # initialize job if not job.init or job.status == "ERROR" then @@ -117,10 +118,17 @@ class MultiBuildJob < CommonJob job.status = "WAITING" else job.status = "ERROR" - @status = "ERROR" + tstatus = "ERROR" end end - if @status == "ERROR" then + if tstatus == "ERROR" then + # Changed the status of initialized sub-jobs if parent is in ERROR status + @sub_jobs.each do |job| + if job.status == "WAITING" then + job.status = "CANCELED" + end + end + @status = tstatus return false end