1. A method, comprising: writing source database transactions to a circular log file in order of their occurrence, the source database transactions being processed to commit to a source database; spilling log blocks from the circular log file in time order wherein the spilled log blocks comprise the database transactions, and further wherein all of the database transactions in the spilled log blocks are committed; and receiving the spilled log blocks and assembling the spilled log blocks into each of a plurality of messages, and sending the messages, in time order of the spilled log blocks they contain, to a location geographically remote from the source database.