We address this open problem by providing a general logarithmic-overhead transformation from partial to full retroactivity called “hierarchical checkpointing,” provided that the given data structure is “time-fusible” (multiple structures with disjoint timespans can be fused into a timeline supporting queries of the present). As an application, we construct a fully retroactive priority queue which can insert an element, delete the minimum element, and find the minimum element, at any point in time, in O(log2 m) amortized time per update and O(log2 m log log m) time per query, using O(m log m) space. Our data structure also supports the operation of determining the time at which an element was deleted in O(log2 m) time.