#!/usr/bin/env ruby

usage = <<US
merge-back <trace table> <slice trace table>
Example: merge-back ABCD_20090201 ABCD_20090201s09451045
Will update ABCD_20090201_Flows from ABCD_20090201s09451045_Flows
US

trace = ARGV[0] || abort('Expecting trace name: ' + usage)
slice = ARGV[1] || abort('Expecting slice trace name: ' + usage)

sql = <<SQL
UPDATE `#{trace}_Flows` AS d
LEFT JOIN `#{slice}_Flows` AS s
ON d.FlowId = s.FlowId
SET d.GtProto = s.GtProto, d.GtApp = s.GtApp, d.GtState = s.GtState
WHERE s.GtState != 'unverified';
SQL

puts sql
load 'update-agg'

