beef up direct log header
split out the next id logic
raise an exception if we have a primary key collision