Advanced Replication Guide : Updating and maintaining the schema of a distributed system : Upgrading the schema of a distributed system : Introduction to Maintenance Mode
  
Introduction to Maintenance Mode
Advanced replication architecture allows you to distribute your data between a master and one or more replicas. The master creates publications, and replicas may subscribe to those publications.
In some cases, you may need to change the schema of your publication by altering the tables used by that publication. For example, you might want to add a new column to an existing table.
solidDB® provides a set of schema management and synchronization features that allow you to change the schema of master and replica databases in your system. Schema management features in solidDB® do not fully automate the schema upgrade process, but instead provide a powerful set of programming tools that make it possible to build a solution that best matches the application's needs.
Hence, for example, creating a new table or altering an existing one in the master database does not mean that the table is also automatically created or altered in the replica database. solidDB® lets the system administrator decide whether the table must be modified in the replica and, if so, when the modification should be done.
This chapter documents four features that are loosely categorized under the name "Maintenance Mode for Publications" (called "Maintenance Mode" for short). The primary purpose of these features is to reduce the effort required to upgrade the schema of a distributed system — that is, to alter the structure of a table that is used in a publication.
If you do not use the Maintenance Mode features, you cannot change a table without dropping the publication referencing to the table first. Re-creating the publication forces all replicas to do a full refresh (rather than an incremental refresh) the next time that they refresh from a publication that contains that table. This is true even if the publication uses only a subset of the columns in that table, and the ALTER TABLE command you used did not affect any of those columns.
Using Maintenance Mode, you can often avoid forcing full refreshes after altering tables. Maintenance mode also allows large 'maintenance' updates to databases without causing large amounts of data to be synchronized after schema upgrade. Write operations made to a master database's data in Maintenance Mode are not synchronized at all. Instead, it is assumed that the same updates are done in the replica database using similar kind of script that modified the master database's schema and data.
This chapter provides an example of implementing the schema upgrade functionality. To understand most of this chapter, you should be familiar with the solidDB® synchronization feature, including publications. For details about the various SQL statements used in the example, refer to solidDB® SQL Guide.
See also
Upgrading the schema of a distributed system