src/Pure/Admin/build_log.scala
changeset 65850 5414c14c3984
parent 65804 73ed0ebac3b0
child 65851 c103358a5559
equal deleted inserted replaced
65849:d70d2d68f7f0 65850:5414c14c3984
   729     val universal_table: SQL.Table =
   729     val universal_table: SQL.Table =
   730     {
   730     {
   731       val table1 = meta_info_table
   731       val table1 = meta_info_table
   732       val table2 = pull_date_table
   732       val table2 = pull_date_table
   733       val table3 = sessions_table
   733       val table3 = sessions_table
   734 
   734       val table4 = ml_statistics_table
   735       val aux_columns = log_name :: pull_date :: meta_info_table.columns.tail
   735 
   736       val aux_table = SQL.Table("aux", aux_columns,
   736       val a_columns = log_name :: pull_date :: meta_info_table.columns.tail
   737         SQL.select(aux_columns.take(2) ::: aux_columns.drop(2).map(_.apply(table1))) +
   737       val a_table =
   738           table1 + SQL.join_outer + table2 + " ON " +
   738         SQL.Table("a", a_columns,
   739           Prop.isabelle_version(table1) + " = " + Prop.isabelle_version(table2))
   739           SQL.select(a_columns.take(2) ::: a_columns.drop(2).map(_.apply(table1))) +
   740 
   740             table1 + SQL.join_outer + table2 + " ON " +
   741       val columns = aux_columns ::: sessions_table.columns.tail
   741             Prop.isabelle_version(table1) + " = " + Prop.isabelle_version(table2))
   742       SQL.Table("isabelle_build_log", columns,
   742 
       
   743       val b_columns = a_columns ::: sessions_table.columns.tail
       
   744       val b_table =
       
   745         SQL.Table("b", b_columns,
       
   746           SQL.select(log_name(a_table) :: b_columns.tail) + a_table.query_named +
       
   747           SQL.join_inner + table3 + " ON " + log_name(a_table) + " = " + log_name(table3))
       
   748 
       
   749       SQL.Table("isabelle_build_log", b_columns ::: List(ml_statistics),
   743         {
   750         {
   744           SQL.select(log_name(aux_table) :: columns.tail) + aux_table.query_named +
   751           SQL.select(b_columns.map(_.apply(b_table)) ::: List(ml_statistics)) +
   745           SQL.join_inner + table3 + " ON " + log_name(aux_table) + " = " + log_name(table3)
   752             b_table.query_named + SQL.join_outer + table4 + " ON " +
       
   753             log_name(b_table) + " = " + log_name(table4) + " AND " +
       
   754             session_name(b_table) + " = " + session_name(table4)
   746         })
   755         })
   747     }
   756     }
   748   }
   757   }
   749 
   758 
   750 
   759