equal
deleted
inserted
replaced
546 |
546 |
547 def stamp_worker( |
547 def stamp_worker( |
548 db: SQL.Database, |
548 db: SQL.Database, |
549 worker_uuid: String, |
549 worker_uuid: String, |
550 serial: Long, |
550 serial: Long, |
551 stop: Boolean = false |
551 stop_now: Boolean = false |
552 ): Unit = { |
552 ): Unit = { |
|
553 val sql = Workers.worker_uuid.where_equal(worker_uuid) |
|
554 |
|
555 val stop = |
|
556 db.execute_query_statementO( |
|
557 Workers.table.select(List(Workers.stop), sql = sql), _.get_date(Workers.stop)).flatten |
|
558 |
553 db.execute_statement( |
559 db.execute_statement( |
554 Workers.table.update(List(Workers.stamp, Workers.stop, Workers.serial), |
560 Workers.table.update(List(Workers.stamp, Workers.stop, Workers.serial), sql = sql), |
555 sql = Workers.worker_uuid.where_equal(worker_uuid)), |
|
556 body = { stmt => |
561 body = { stmt => |
557 val now = db.now() |
562 val now = db.now() |
558 stmt.date(1) = now |
563 stmt.date(1) = now |
559 stmt.date(2) = if (stop) Some(now) else None |
564 stmt.date(2) = if (stop_now) Some(now) else stop |
560 stmt.long(3) = serial |
565 stmt.long(3) = serial |
561 }) |
566 }) |
562 } |
567 } |
563 |
568 |
564 |
569 |
1036 } |
1041 } |
1037 } |
1042 } |
1038 |
1043 |
1039 protected final def stop_worker(): Unit = synchronized_database { |
1044 protected final def stop_worker(): Unit = synchronized_database { |
1040 for (db <- _build_database) { |
1045 for (db <- _build_database) { |
1041 Build_Process.Data.stamp_worker(db, worker_uuid, _state.serial, stop = true) |
1046 Build_Process.Data.stamp_worker(db, worker_uuid, _state.serial, stop_now = true) |
1042 } |
1047 } |
1043 } |
1048 } |
1044 |
1049 |
1045 |
1050 |
1046 /* run */ |
1051 /* run */ |