The file used as argument in "compare using" or "repair using" used to be called config file when these command first come out. Subsequently they were also called synchronization routing file. Nowadays they are called just "files". This article delves on various choices available when specifying such files Hereinafter for the sake of brevity we will only mention “compare using” in the document though it also applies to “repair using”. Likewise since the functionality also applies to repair, all references to compare can be substituted with repair as appropriate.
The “compare using” is a powerful command that offers flexibility in specifying multiple objects when running compare on multiple tables with one command. It uses a file as argument.
Initially the command used a config file as argument.. That file was essentially a config file with datasource, source and target table entries along with the routing info though it need not be active as it only contained the tables that needed to be compared. Subsequently it was also called synchronization routing file. Nowadays it is just called "file" and is essentially a text file.
The content of the files can take many different forms. Here are some of them:
1. In its most basic form the file can contain the list of source tables that need to be compared as the following shows:
owner1.table1
owner2.table2
.
.
2. This is what all is required. However, there are be many other manifestations as the following shows:
a. The file can contain list of source and target tables:
owner1.source_table1 owner1.target_table1
owner1.source_table2 owner1.target_table2
.
.
b. The file can contain wildcard with or without “expand” keyword (both will work):
expand owner.table%
.
.
OR
owner.table%
.
.
c. The file can be a text file that has a format similar to that of a config file (datasource, source and target table names, route, named queue notations, etc) The file need not be an active config file. The following does not have a named queue notation but that is also permissible:
datasource:o.sourceSID
#source tables target tables routing map
owner1.source_table1 owner1.target_table1 targetserver@o.targetSID
d. The file can also be an active config file though you have to watch out for the size of that config file (in terms of # of tables and/or their size as it can be quite a task to compare such a config file). Anything that is acceptable in a config file like NOT clause, etc, can also exist in the entries in the file.
Essentially the “compare using” parses the file and retrieves the source table specifications and then extrapolates the target table and the named queues (if any) and the target route from the active config file. So the source table spec is all that is required. But at times it is more convenient to specify the file in the format of a config file otherwise the users will need to either create a text file containing source table specs only or edit a config file and remove other information so that it only contains the source table specs. What type of file to use in the command is driven more by the circumstances but as mentioned above, there are lot of flexibility.
© 2025 Quest Software Inc. ALL RIGHTS RESERVED. Terms of Use Privacy Cookie Preference Center