ACC95: How Replication Increases Size of Database (138442)



The information in this article applies to:

  • Microsoft Access for Windows 95 7.0

This article was previously published under Q138442

SUMMARY

Advanced: Requires expert coding, interoperability, and multiuser skills.

Replication of a database increases the size of the database. When you replicate a database, Microsoft Access implements the following changes:
  • It adds three new fields to each existing table in your database: a unique identifier, a generation indicator, and a lineage indicator.
  • It adds new system tables to your database: mSysSidetables, MsysErrors, MSysSchemaProb, and MsysExchangeLog.
  • It adds new properties to your database.
  • It changes the behavior of AutoNumber fields.
  • It increases the physical size of the database.

MORE INFORMATION

Besides being aware that replication makes the above changes, you should also be aware that replication imposes the following two limitations on your tables:
  • First, the Microsoft Jet database engine allows a maximum of 2048 bytes (not counting Memo or OLE Object fields) in a record. Replication uses a minimum of 28 bytes to store unique identifiers and information about changes to the record. If the record contains either Memo or OLE Object fields, replication uses an additional 4 bytes for each of those fields. You can calculate the total number of bytes available in a record in a replicated table as follows:
          2048 bytes - 28 bytes for replication overhead - (4 bytes * the
          number of Memo fields) - (4 bytes * the number of OLE Object fields)
          = the maximum number of bytes available
    						
  • Second, the Jet database engine allows a maximum of 255 fields in a table of which at least three fields are used by replication. You can calculate the total number of fields available in a replicated table as follows:
          255 fields - 3 system fields - the number of Memo and OLE Object
          fields = the number of fields available
    						
Most well-designed applications do not use all the available fields in a table or all the available characters in a record. However, if you have a large number of Memo fields or OLE Object fields in your table, you should be aware of your remaining resources.

Just as the addition of three new fields to your tables adds to the size of each record, the addition of new system tables adds to the size of your database. Many of these new tables contain only a few records, but some of the new tables can grow significantly depending upon the frequency of synchronization between replicas.

The size of your database file can be significant for many reasons, including the following:
  • The Microsoft Jet data base engine supports files up to a maximum of 1 gigabyte in size.
  • Many users have limited space available on their hard drives and the creation of a replicable database that is larger than the original file can use up all available disk space.
  • If you choose to make a backup copy of the nonreplicable form of your database, you must have sufficient space on your hard drive.

REFERENCES



For more information about replication in DAO, search for "replication," and then "replication fields" using the Microsoft Access for Windows 95 Help Index.

Modification Type:MajorLast Reviewed:11/17/2000
Keywords:kbinfo kbusage KB138442