     IB Replicator  (C) Alex V. Malinin 1998 (E-mail: a_malinin@iname.com)

- BLOB support;
- No redundant data to transfer;
- Collision detecting and resolving;
- Selecting replicatable tables

1. Overview
2. Restrictions
3. License agreement


      1. Overview

     IB Replicator is intended for fullfilling the following tasks:
- prepare your database for cloning;
- make clone.gdb;
- make synchro.gdb - file for information exchange;
- fill synchro.gdb;
- read information from synchro.gdb and update master DB data.


     Prepare process includes the following steps:
- define list of working tables, that is tables subject to replication,
- define list of generators used for primary key generation 
  (PK generators);
- add R$Code Integer field to all working tables in master DB;
- create R$Gen generator;
- enumerate all records in all working tables by filling R$Code field with 
  help of R$Gen;
- create 3 triggers for each working table (after insert, after update, 
  after delete);
- create one service stored procedure.

Note: You may remove all additional metadata at any moment.

     Clone making process includes the following steps:
- define clone name and offset;
- make BACKUP of master DB;
- make RESTORE to clone.gdb;
- increment clone DB PK generators by offset;
- adjust R$Code max value for this clone.

     Make synchro.gdb includes the following steps:
- run Extract metadata command and create master.ddl file;
- convert master.ddl to synchro.ddl file;
- create empty synchro.gdb;
- run synchro.ddl script.

     For replication master DB data you have to fill synchro.gdb file, 
backup it, compress it and send to all clone sides. On clone side 
synchro.gdb must be read.

     For replication clone DB data you have to fill synchro.gdb file,
backup it, compress it and send to master side. On master side
synchro.gdb must be read.

ATTENTION: You have to send Master synchro.gdb to all clones. Before
next synchro.gdb filling you must receive synchro.gdb from all clones and
read them to Master.

Note: Synchro.gdb from master side must be sent to all clone sides.
      Synchro.gdb from all clone sides must be read before next
synchronization.
      You must make all triggers inactive before read data from 
synchro.gdb. Then you have to make them active again. You have to press
special buttons MANUALLY! Do not forget it!


      2. Restrictions

- Only Windows-95/Windows NT are supported.
- Only 32 bit BDE is supported.
- There is limit = (2 147 483 646)*(2 147 483 646) records for master 
  and all clones.
- All operations must be done in the single user mode.


      3. Copyright, License & Warranty

IBReplicator Copyright  1998 by Alex V. Malinin
All rights reserved.

	License Agreement
You should carefully read the following terms and conditions before using 
this software.

	License and Royalties

Once registered, the user is granted a non-exclusive license to use IBReplicator.

You may not use, copy, emulate, clone, rent, lease, sell, modify, decompile, 
disassemble, otherwise reverse engineer, or transfer the licensed program, 
or any subset of the licensed program, except as provided for in this agreement.  
Any such unauthorized use shall result in immediate and automatic termination of 
this license and may result in criminal and/or civil prosecution.

All rights not expressly granted here are reserved by authors.

	Disclaimer of Warranty

IBReplicator is distributed "as is".  No warranty of any kind is expressed or implied.  
The user must assume the entire risk of using the program. The authors will not be 
liable for data loss, damages, loss of profits or any other kind of loss while using 
or misusing this software.

Window NT, and Windows 95 are a registered trademarks of Microsoft Corporation.
InterBase is a registeger trademark of Borland International,Inc.


Copyright  1998  Alex V. Malinin

E-mail: a_malinin@iname.com