A system, method, and processor readable medium containing code for
causing a processor to synchronize a secondary database system, such as
one stored on a palmtop electronic device, with a distributed database
system, comprising a main database and at least one replica database. The
system further comprises a modification module that contains entries for
modifications that have been made to the secondary database since a
previous synchronization between the secondary database and the
distributed database system and a synchronization module that
synchronizes the secondary database with one of the databases of the
distributed database system using the modification module. Each database
in the distributed database system stores an identification mapping
database having an assigned version number. The system further comprises
a replica identification database associated with the secondary database
that contains an entry for each source database of the distributed
database system, each entry comprising information regarding the last
synchronization between the secondary database and the source database
including the version of the identification mapping database associated
with the source database when the synchronization occurred. A pruning
module is provided for pruning entries from the modification module using
the replication identification database.