In synchronizing data across a database, time-dependent and
time-constrained data may be synchronized, using grouping value(s) that
may themselves be time-dependent. When a time constraint prohibits data
timelines from exhibiting time gaps, data included in the timeline may be
mapped to a directed graph. In this way, any time gaps may be filled by
extending data records that precede the gap(s), and this operation may be
reflected in a coloring of the directed graph. Then, recursive processing
may be performed using the directed graph, so as to account for any
unanticipated effects of the extended data records.