Remove race condition (in TaskLog)
Delete all duplicate rows with same (task_name, host, period_beginning, period_ending) expect one with the biggest value in `id` column. Create UC on fields (task_name, host, period_beginning, period_ending) Replace Select then Insert -> Try to Insert. blueprint db-unique-keys Change-Id: I99f45a6de6630482e9c56738f894cc55a37fffaf
This commit is contained in:
		| @@ -1792,6 +1792,13 @@ class TaskLogTestCase(test.TestCase): | |||||||
|                                  self.end, self.host) |                                  self.end, self.host) | ||||||
|         self.assertEqual(result['task_name'], 'fake') |         self.assertEqual(result['task_name'], 'fake') | ||||||
|  |  | ||||||
|  |     def test_task_log_begin_task_duplicate(self): | ||||||
|  |         params = (self.context, 'fake', self.begin, self.end, self.host) | ||||||
|  |         db.task_log_begin_task(*params, message=self.message) | ||||||
|  |         self.assertRaises(exception.TaskAlreadyRunning, | ||||||
|  |                           db.task_log_begin_task, | ||||||
|  |                           *params, message=self.message) | ||||||
|  |  | ||||||
|     def test_task_log_end_task(self): |     def test_task_log_end_task(self): | ||||||
|         errors = 1 |         errors = 1 | ||||||
|         db.task_log_end_task(self.context, self.task_name, self.begin, |         db.task_log_end_task(self.context, self.task_name, self.begin, | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Boris Pavlovic
					Boris Pavlovic