equal
deleted
inserted
replaced
26 sealed case class Session_Info( |
26 sealed case class Session_Info( |
27 sources: List[String], |
27 sources: List[String], |
28 input_heaps: List[String], |
28 input_heaps: List[String], |
29 output_heap: Option[String], |
29 output_heap: Option[String], |
30 return_code: Int) |
30 return_code: Int) |
|
31 { |
|
32 def ok: Boolean = return_code == 0 |
|
33 } |
31 |
34 |
32 |
35 |
33 /* queue with scheduling information */ |
36 /* queue with scheduling information */ |
34 |
37 |
35 private object Queue |
38 private object Queue |
395 selected0.flatMap(name => |
398 selected0.flatMap(name => |
396 store.find_database(name) match { |
399 store.find_database(name) match { |
397 case Some(database) => |
400 case Some(database) => |
398 using(SQLite.open_database(database))(store.read_build(_, name)) match { |
401 using(SQLite.open_database(database))(store.read_build(_, name)) match { |
399 case Some(build) |
402 case Some(build) |
400 if build.return_code == 0 && |
403 if build.ok && build.sources == sources_stamp(deps0, name) => None |
401 build.sources == sources_stamp(deps0, name) => None |
|
402 case _ => Some(name) |
404 case _ => Some(name) |
403 } |
405 } |
404 case None => Some(name) |
406 case None => Some(name) |
405 }) |
407 }) |
406 val (selected, selected_sessions) = |
408 val (selected, selected_sessions) = |
564 store.find_database_heap(name) match { |
566 store.find_database_heap(name) match { |
565 case Some((database, heap_stamp)) => |
567 case Some((database, heap_stamp)) => |
566 using(SQLite.open_database(database))(store.read_build(_, name)) match { |
568 using(SQLite.open_database(database))(store.read_build(_, name)) match { |
567 case Some(build) => |
569 case Some(build) => |
568 val current = |
570 val current = |
569 build.return_code == 0 && |
571 build.ok && |
570 build.sources == sources_stamp(deps, name) && |
572 build.sources == sources_stamp(deps, name) && |
571 build.input_heaps == ancestor_heaps && |
573 build.input_heaps == ancestor_heaps && |
572 build.output_heap == heap_stamp && |
574 build.output_heap == heap_stamp && |
573 !(do_output && heap_stamp.isEmpty) |
575 !(do_output && heap_stamp.isEmpty) |
574 (current, heap_stamp) |
576 (current, heap_stamp) |