public class ConfigDB extends CommonShell implements UpgConstants
The -l parameter can be used for previewing the configuration process or verbose logging.
This runs independently of MXServer. MXServer should NOT be running at the same time as this program, otherwise the database may be changing at the same time that this program is trying to determine what to output.
This program is also run as part of the upgrade process, when called by Upgrade.
For tables that require being dumped to a temp table and recreated, this program does NOT
reload the new base table with the original data. This is done via a separate program,
RestoreFromBackup.
The commandline parameters for ConfigDB are as follows, in addition to those in the superclass
CommonShell.
| Parameter ID | Parameter Value | Description |
|---|---|---|
| -g | (none) | This is optional. It indicates that this class has been instanciated by the Upgrade. |
| -r | (none) | This is optional. It indicates that RestoreFromBackup will be launched immediately following ConfigDB, assuming there were no errors. Care should be taken when using this param, as there are occasions when the data in the temp tables (XX+tablename) must be modified before attempting the Restore. (The -r param will NOT launch DropBackup.) |
| -z | (none) | The -z parameter is used ONLY for DB2. When the -z parameter is used and this
is DB2, then the logic that enables text search for all tables is not performed from
ConfigDB. Instead, ConfigDB will output a script containing all the relevant commands.
The script name is db2text_configdb.bat, and it is output to the same directory as the logfile.
A second script, db2text_configdb.sh, is output for Unix shell script.
The reason this parameter is provided is because in DB2, text search procedures cannot be initiated from a remote machine. If Maxinst is run on a different machine than the machine where the database is located, it cannot run the text search commands. They will have to be run manually by a user on the database's machine by using the script output by ConfigDB. |
CommonShell| Modifier and Type | Field and Description |
|---|---|
protected java.io.File |
db2TextFile
The output file when using the -z parameter.
|
protected java.io.File |
db2TextFile2
Second output file when using the -z parameter.
|
protected java.io.PrintStream |
db2TextOut
The print stream when using the -z parameter.
|
protected java.io.PrintStream |
db2TextOut2
Second print stream when using the -z parameter.
|
classShortName, con, conKey, conService, dbIn, driver, execute, externalConnection, forceCreateOutfile, hostname, lastSqlIssued, listStream, log, mxs, myLogger, out, outFileNameDefault, outputFile, port, propFileNameDefault, schemaOwner, servername, session, sNo, sYes, thisIsNested, url, userLangCode, userName, utilDB2, doNotUpdateACTION, doNotUpdateALNDOMAIN, doNotUpdateAPPLICATIONAUTH, doNotUpdateAUTOKEY, doNotUpdateCONDITION, doNotUpdateCONTRACTPROPERTY, doNotUpdateCONTRACTTYPE, doNotUpdateCROSSOVERDOMAIN, doNotUpdateDOCTYPES, doNotUpdateLANGUAGE, doNotUpdateMAXAPPS, doNotUpdateMAXCONDDETAIL, doNotUpdateMAXCONTROLVALUE, doNotUpdateMAXDOMAIN, doNotUpdateMAXLOGAPPENDER, doNotUpdateMAXLOGGER, doNotUpdateMAXMENU, doNotUpdateMAXMESSAGES, doNotUpdateMAXMODULES, doNotUpdateMAXPROP, doNotUpdateMAXPROPVALUE, doNotUpdateMAXROLE, doNotUpdateMAXSEQUENCE, doNotUpdateMAXSERSECURITY, doNotUpdateMAXSERVICE, doNotUpdateMAXTABLEDOMAIN, doNotUpdateMAXVARS, doNotUpdateMAXVARTYPE, doNotUpdateMXCOLLAB, doNotUpdateMXCOLLABREF, doNotUpdateNUMERICDOMAIN, doNotUpdateNUMRANGEDOMAIN, doNotUpdatePORTLET, doNotUpdatePRICALC, doNotUpdateSECURITYRESTRICT, doNotUpdateSIGOPTION, doNotUpdateSYNONYMDOMAIN, doNotUpdateTAXTYPE, doNotUpdateWORKPRIORITY, doNotUpdateWORKTYPE, doNotUpdateWPEDITSETTING, messageCache, NEWONLY, OLDANDNEW, OLDONLY, ORACLE, SQLINET, SQLMICROSOFT, SQLSERVER, SYSDATATABLES, SYSTEMTABLES, UNKNOWN| Constructor and Description |
|---|
ConfigDB()
This constructor does nothing.
|
ConfigDB(MXServer server)
This constructor accepts parameter for MXServer and
sets value for
mxs. |
| Modifier and Type | Method and Description |
|---|---|
void |
addMTPermissions(java.lang.String tablename,
java.lang.String uniqueColumnName,
MTStorageType storageType)
Add MT permissions and activate row access to table if MT Enabled.
|
java.lang.String |
addQuotes(java.lang.String value)
Use this when you have to construct a Sql update statement using values from
one of our maps.
|
void |
addRowstamp(java.lang.String tablename)
Add rowstamp column to table.
|
void |
addTenantid(java.lang.String tablename,
java.lang.String uniqueColumnName,
MTStorageType storageType)
Add tenantid column to table if MT Enabled.
|
int |
addUniqueColumnToImportedTable(java.lang.String tablename,
java.lang.String uniqueColumnName,
java.lang.String sequenceName,
java.util.TreeMap attrs)
Add uniquecolumnname column to imported table.
|
void |
adjustMetadata()
Perform any last updates to the metadata before we start processing.
|
void |
alterTable(java.util.HashMap objInfo)
Alter a table (maxobjectcfg.changed = "A").
|
void |
callRestoreFromBackup()
Call RestoreFromBackup.
|
void |
changingVarcharMultiplier(boolean val)
This should be invoked ONLY from the VarcharMultiplier utility.
|
boolean |
checkForBackup()
If any of the following is true, an error will be generated and this method will return False.
|
void |
configureIndexes()
Add, change or drop the indexes requiring such, then recreate the
metadata in maxsysindexes and maxsyskeys.
|
void |
configureTables()
Perform all the required changes to the native tables, and update the
column metadata.
|
void |
configureViews()
Perform all the required changes to the views.
|
void |
createRowstampTrigger(java.lang.String tablename)
Create the rowstamp trigger.
|
void |
createTable(java.util.HashMap objInfo)
Create a table (maxobjectcfg.changed = "I").
|
void |
disableControlTS() |
void |
doCommit()
Execute a "commit."
|
void |
doLastUpdates()
Some miscellaneous final database updates after the bulk of the work is done.
|
void |
doSql(java.util.ArrayList list) |
void |
doSql(java.util.List list)
Loops through an array and calls
doSql for each element. |
void |
doSql(java.lang.String sql)
Looks at params to determine whether the execute only, log only, or both execute and log.
|
void |
doSqlCatchReorg(java.util.AbstractList list) |
void |
doSqlCatchReorg(java.lang.String sql)
Try to execute Sql.
|
void |
dropTable(java.lang.String tablename)
Drop a table (maxobjectcfg.changed = "R").
|
void |
endProcessInstance()
At start of
endProcess,
call endProcess for restoreClass. |
void |
endSetupInstance(java.lang.String outdir,
java.lang.String outfile,
java.util.HashMap params)
|
void |
getMetadata()
Get the new metadata for all the objects being modified.
|
TextSearch |
getTextSearchHelper()
Return instance of TextSearch.
|
java.util.ArrayList |
getUpgradeDefaultSql(java.lang.String tablename,
java.lang.String columnname)
When this is the upgrade and the table is being altered (not rebuilt) and the column does
not allow nulls, this gets the sql needed to provide values for this column prior to
altering it to "not null."
|
static void |
main(java.lang.String[] argv)
Main.
|
void |
process()
Main processing method for this program.
|
void |
rebuildExtensionView(java.lang.String objectName,
java.lang.String tableName,
boolean isView)
Drop a table (maxobjectcfg.changed = "R").
|
void |
rebuildIndexes(java.util.TreeMap indexMeta)
Loop through the index metadata we already retrieved, drop the indexes,
and recreate the native indexes that are not being deleted.
|
void |
rebuildTable(java.lang.String tempTbName,
java.util.HashMap objInfo)
Rebuild a table (maxobjectcfg.changed = "M").
|
void |
refreshAttributes()
Refresh all the attribute metadata for all objects.
|
void |
refreshObjects()
Refresh the table metadata for the tables being changed.
|
void |
remindUserBadTriggers()
If any triggers have become uncompileable, warn the user.
|
void |
remindUserToCheckIndexes()
If any new tables were added (and they are persistent and not audit tables),
remind the user to doublecheck to make sure they have indexes.
|
void |
remindUserToRestoreData()
If any tables were rebuilt (and they are persistent and not audit tables),
remind the user to restore data from backup tables.
|
int |
renumberAttributeNumber(java.lang.String objectname,
java.util.TreeMap attrs)
Renumber attributeno on maxattributecfg, in case we deleted any attributes.
|
void |
setBypassTextSearchForUpgrade(boolean value)
This method is provided for the Upgrade.
|
void |
setDoReorgCheck(boolean value)
This method is provided for patch scripts that call ConfigDB from AutoUpgradeTemplate
and which intend to handle the final DB2 Reorg themselves (rather than doing in
ConfigDB alterTable).
|
void |
setObjectNames(java.util.HashSet objects)
Called from ConfigureService when doing a non-structural configuration.
|
void |
setSRTableExists() |
void |
setThrowErrorFromPrechecks(boolean value)
The prechecks by default do not throw an error.
|
void |
setUpgradeCallout(java.lang.String val)
This is called from
Upgrade so that
upgradeCallout can determine which subdirectory
contains the class files that indicate special processing for this upgrade. |
void |
setUserIfno(UserInfo ui) |
void |
showLastMessages()
Some final messages to display to the person running this program.
|
void |
showMsg(java.lang.String str)
Call super, then add message in ConfigureService, if appropriate.
|
boolean |
spaceCheck()
Check for sufficient tablespace for running ConfigDB.
|
void |
syncEauditParams()
Some final "just in case" updates to make sure there's no mismatch between
the eaudit parameters and the existence (or not) of the audit table.
|
void |
updateDelta(java.sql.Connection tenantCon,
int tenanatId,
java.util.TreeMap cfgAttrs,
java.util.Map lastNumbers)
Calls
getRemoveChanges
for each storage partition in the valuelist,
and executes the statements returned, with the appropriate commit and rollback logic. |
void |
updateMaxvars()
Update maxvars DBVERSION and NUMBEROFTAXCODES
|
void |
updateStoragePartition()
Update storagepartition on maxtable and maxtablecfg, using the native value.
|
void |
updateTenantsDelta(java.util.HashMap changedObjects,
java.util.TreeMap cfgAttrs,
java.util.Map lastNumbers)
Checks to see whether a tenant is using a given column on the extension table before allowing the DA to delete the attribute
through the database configuration app.
|
void |
upgradeCallout(java.lang.String methodName,
java.lang.String methodPlace,
java.lang.String objectname)
If this is running in Upgrade mode (called from the Upgrade program), then various points
in ConfigDB provide hooks for calling specialized methods to perform any
complex upgrade processing that is not supported by the regular ConfigDB
logic.
|
auditProcess, createOutfile, doCall, doDB2TextSearchCall, doSql, doSql, doWait, endProcess, endSetup, execRuntime, getDisplayMessage, getDisplayMessage, getMessage, getOutfile, getOutstream, getProperty, getRootDirName, isXmlOut, loadMessageCache, loadMessageCacheSub, logMessage, logSql, reformatForDB2, reformatForSqlsvr, reformatForSqlsvrMaxSequence, setConnection, setDB2TextOutput, setup, setupFromMXServer, setupFromPropfile, setupInstance, setupNested, setupNestedInstance, setUserLangCode, setXmlOut, showMXException, showMXExceptionprotected java.io.File db2TextFile
protected java.io.PrintStream db2TextOut
protected java.io.File db2TextFile2
protected java.io.PrintStream db2TextOut2
public ConfigDB()
public void disableControlTS()
public void setUpgradeCallout(java.lang.String val)
Upgrade so that
upgradeCallout can determine which subdirectory
contains the class files that indicate special processing for this upgrade.
Sets value of calloutSubdir.public void process()
throws java.lang.Exception
checkForBackup returns False, then this method returns
without configuring the database.process in class CommonShelljava.lang.ExceptionConfigDB.checkForBackup(),
TextSearch.stopTextSearchJobs(boolean, boolean),
Util.setConfigInProcess(boolean),
ConfigDB.adjustMetadata(),
ConfigDB.spaceCheck(),
ConfigDB.getMetadata(),
ConfigDB.configureTables(),
ConfigDB.configureViews(),
ConfigDB.refreshAttributes(),
ConfigDB.refreshObjects(),
ConfigDB.configureIndexes(),
ConfigDB.doLastUpdates(),
TextSearch.restartTextJobs(),
ConfigDB.showLastMessages()public void setObjectNames(java.util.HashSet objects)
objects - Object names to be configuredConfigureService.ConfigDBThread.run()public void setSRTableExists()
throws java.lang.Exception
java.lang.Exceptionpublic boolean checkForBackup()
throws java.lang.Exception
java.lang.ExceptionUtil.getUnrestoredTables(java.lang.String),
Util.getOldBackupTables(java.lang.String),
Util.mxServerIsUp(java.lang.String)public void adjustMetadata()
throws java.lang.Exception
cleanStatisticNames.
java.lang.ExceptionUtil.getKeyAttribute(java.lang.String, java.lang.String)public boolean spaceCheck()
throws java.lang.Exception
java.lang.ExceptionUtil.spaceCheckForDBConfig()public void getMetadata()
throws java.lang.Exception
cfgObjects and cfgIndexes.java.lang.ExceptionUtil.getObjectMeta(java.lang.String, boolean, boolean, boolean, boolean, boolean, boolean, boolean),
Util.getIndexMeta(java.lang.String, boolean)public void configureTables()
throws java.lang.Exception
upgradeCallout is called in the following places:
("configureTables", "01", null)
("configureTables", "02", null)
public void rebuildExtensionView(java.lang.String objectName,
java.lang.String tableName,
boolean isView)
throws java.lang.Exception
upgradeCallout is called in the following place:
("dropTable", null, tbname)
tablename - Table namejava.lang.Exceptionpublic void dropTable(java.lang.String tablename)
throws java.lang.Exception
upgradeCallout is called in the following place:
("dropTable", null, tbname)
tablename - Table namejava.lang.Exceptionpublic void createTable(java.util.HashMap objInfo)
throws java.lang.Exception
upgradeCallout is called in the following places:
("createTable", "01", tbname)
("createTable", "02", tbname)
objInfo - Configuration parameters for the table and its columns.java.lang.ExceptionUtil.buildCreateTableStatement(java.util.HashMap, boolean, boolean, java.lang.String, boolean),
Util.getUniqueIndexSpace(java.lang.String, java.lang.String),
ConfigDB.createRowstampTrigger(java.lang.String),
ConfigDB.addRowstamp(java.lang.String),
Util.indexMetaExistsForPrikeycolseq(java.lang.String, java.lang.String, boolean),
Util.buildIndexStatement(String, TreeMap, String),
ConfigDB.updatePrimaryKeyNameForDB2(java.lang.String, java.lang.String, java.lang.String, com.ibm.tivoli.maximo.dbmanage.connection.MTStorageType)public void addRowstamp(java.lang.String tablename)
throws java.lang.Exception
java.lang.ExceptionUtil.getAddRowstampSql(java.lang.String),
ConfigDB.createRowstampTrigger(java.lang.String)public void addTenantid(java.lang.String tablename,
java.lang.String uniqueColumnName,
MTStorageType storageType)
throws java.lang.Exception
java.lang.ExceptionUtil.enableForMultiTenancy(java.lang.String, java.lang.String, java.lang.String, java.lang.String, com.ibm.tivoli.maximo.dbmanage.connection.MTStorageType),
#enableForMultiTenancy,
This is a similar method.public int addUniqueColumnToImportedTable(java.lang.String tablename,
java.lang.String uniqueColumnName,
java.lang.String sequenceName,
java.util.TreeMap attrs)
throws java.lang.Exception
tablename - uniqueColumnName - sequenceName - attrs - java.lang.Exceptionpublic void createRowstampTrigger(java.lang.String tablename)
throws java.lang.Exception
java.lang.ExceptionUtil.getRowstampTriggerSql(java.lang.String, boolean)public void rebuildTable(java.lang.String tempTbName,
java.util.HashMap objInfo)
throws java.lang.Exception
The new Maximo table is NOT loaded with data in this program.
The data loading is done via the program RestoreFromBackup.
upgradeCallout is called in the following places:
("rebuildTable", "01", tbname)
("rebuildTable", "02", tbname)
("rebuildTable", "03", tbname)
tempTbName - The name of the temporary table that will store the data
from the base table during the rebuild process.
This should equals "XX" + the base table name. This temp table is
dropped, created and loaded via this method, but is not dropped afterward.objInfo - Configuration parameters for the table and its columns.java.lang.ExceptionUtil.getDropStatisticsStatementsForConfig(java.lang.String),
Util.getStorageClause(java.lang.String, boolean),
Util.buildGrants(java.lang.String, boolean, boolean),
Util.getColumnNames(java.util.TreeMap, boolean, boolean),
Util.nativeTableExists(java.lang.String),
Util.getDisableTriggerStatement(java.lang.String, java.lang.String),
Util.getRenameTableStatement(java.lang.String, java.lang.String),
Util.buildDefaultDataStatement(java.lang.String, java.util.TreeMap, java.lang.String, java.util.TreeMap),
Util.buildShortenStringStatement(java.lang.String, java.util.TreeMap, java.util.TreeMap),
Util.buildChangeCaseStatement(String, TreeMap, TreeMap),
Util.buildCreateTableStatement(java.util.HashMap, boolean, boolean, java.lang.String, boolean),
Util.getUniqueIndexSpace(java.lang.String, java.lang.String),
Util.getIndexMeta(java.lang.String, boolean),
ConfigDB.createRowstampTrigger(java.lang.String),
ConfigDB.updatePrimaryKeyNameForDB2(java.lang.String, java.lang.String, java.lang.String, com.ibm.tivoli.maximo.dbmanage.connection.MTStorageType),
ConfigDB.rebuildIndexes(java.util.TreeMap),
Util.getSysIndexRefresh(java.lang.String, java.lang.String)public void changingVarcharMultiplier(boolean val)
val - public void alterTable(java.util.HashMap objInfo)
throws java.lang.Exception
upgradeCallout is called in the following place:
("alterTable", "01", tbname).
buildDefaultDataStatement,
this method calls (in the calloutSubdir)
UpgradeDefaults + tbname, which (if it exists) must be an
extension of UpgDefaultsTemplate.
buildDefaultDataStatement
("alterTable", "02", tbname).
objInfo - Configuration parameters for the table and its columns.java.lang.ExceptionConfigDB.getUpgradeDefaultSql(java.lang.String, java.lang.String),
Util.buildDefaultDataStatement(String, HashMap, HashMap),
Util.buildChangeCaseStatement(String, String, String, String),
Util.buildColumnLine(HashMap, boolean, boolean, boolean)public void addMTPermissions(java.lang.String tablename,
java.lang.String uniqueColumnName,
MTStorageType storageType)
throws java.lang.Exception
java.lang.ExceptionUtil.createPermission(java.lang.String, java.lang.String, java.lang.String, java.lang.String, com.ibm.tivoli.maximo.dbmanage.connection.MTStorageType)public java.util.ArrayList getUpgradeDefaultSql(java.lang.String tablename,
java.lang.String columnname)
throws java.lang.Exception
This is determined by the presence of an extension of
UpgDefaultsTemplate in the
calloutSubdir, which returns Sql via
getDefaultSql.
This is called from alterTable.
tablename - Table namecolumnname - Columnjava.lang.Exceptionpublic void refreshAttributes()
throws java.lang.Exception
upgradeCallout is called in the following place:
("refreshAttributes", null, null)
java.lang.ExceptionConfigDB.renumberAttributeNumber(java.lang.String, java.util.TreeMap),
Util.getAttributeRefresh(),
Util.getViewColumnRefresh()public void updateTenantsDelta(java.util.HashMap changedObjects,
java.util.TreeMap cfgAttrs,
java.util.Map lastNumbers)
throws java.lang.Exception
attributeName - objectName - MXExceptionjava.rmi.RemoteExceptionjava.lang.Exceptionpublic void updateDelta(java.sql.Connection tenantCon,
int tenanatId,
java.util.TreeMap cfgAttrs,
java.util.Map lastNumbers)
throws MXException,
java.rmi.RemoteException
getRemoveChanges
for each storage partition in the valuelist,
and executes the statements returned, with the appropriate commit and rollback logic."configure" - "RemoveChangesFailure"MXExceptionjava.rmi.RemoteExceptionUtil.getRemoveChanges(),
Util.rebuildMetadataSequences()public int renumberAttributeNumber(java.lang.String objectname,
java.util.TreeMap attrs)
throws java.lang.Exception
objectname - Object nameattrs - Attributes, key = attributeno.java.lang.Exceptionpublic void configureViews()
throws java.lang.Exception
upgradeCallout is called in the following place:
("configureViews", null, null)
java.lang.ExceptionUtil.buildCreateViewStatement(java.util.HashMap, boolean, boolean)public void refreshObjects()
throws java.lang.Exception
upgradeCallout is called in the following place:
("refreshObjects", null, null)
java.lang.ExceptionUtil.getObjectRefresh(),
Util.getTableRefresh(),
Util.getViewRefresh()public void configureIndexes()
throws java.lang.Exception
This affects only those indexes that were marked for changes via the metadata. It does not completely reload all the metadata, as Centura used to.
upgradeCallout is called in the following places:
("configureIndexes", "01", null)
("configureIndexes", "02", null)
java.lang.ExceptionConfigDB.rebuildIndexes(java.util.TreeMap),
Util.getSysIndexRefresh(java.lang.String, java.lang.String)public void rebuildIndexes(java.util.TreeMap indexMeta)
throws java.lang.Exception
indexMeta - Index metadata, from getIndexMeta.java.lang.ExceptionUtil.rebuildIndexes(java.util.TreeMap, boolean, boolean, boolean, boolean),
Util.adjustPrimaryKeyColSeq(java.util.TreeMap)public void doLastUpdates()
throws java.lang.Exception
upgradeCallout is called in the following place:
("doLastUpdates", null, null)
java.lang.ExceptionConfigDB.updateStoragePartition(),
Util.getDisallowPageLocks(),
Util.rebuildMetadataSequences(),
ConfigDB.syncEauditParams(),
ConfigDB.updateMaxvars()public void updateStoragePartition()
throws java.lang.Exception
java.lang.ExceptionUtil.getPartitionRefresh()public void syncEauditParams()
throws java.lang.Exception
java.lang.Exceptionpublic void updateMaxvars()
throws java.lang.Exception
java.lang.Exceptionpublic void showLastMessages()
throws java.lang.Exception
java.lang.ExceptionConfigDB.remindUserToCheckIndexes(),
ConfigDB.remindUserBadTriggers(),
ConfigDB.remindUserToRestoreData()public void remindUserToCheckIndexes()
throws java.lang.Exception
java.lang.Exceptionpublic void remindUserBadTriggers()
throws java.lang.Exception
java.lang.ExceptionConfigDB.badTriggerspublic void remindUserToRestoreData()
throws java.lang.Exception
java.lang.Exceptionpublic void callRestoreFromBackup()
throws java.lang.Exception
java.lang.ExceptionRestoreFromBackup.process()public java.lang.String addQuotes(java.lang.String value)
value - The value of a String attribute.Util.singleToDoubleQuotes(java.lang.String)public void doCommit()
throws java.lang.Exception
java.lang.Exceptionpublic void doSql(java.util.ArrayList list)
throws java.lang.Exception
java.lang.Exceptionpublic void doSql(java.util.List list)
throws java.lang.Exception
CommonShelldoSql for each element.doSql in class CommonShelllist - Any instance or extension of AbstractList, including ArrayList, etc.java.lang.ExceptionCommonShell.doSql(String)public void doSql(java.lang.String sql)
throws java.lang.Exception
CommonShelldoSql in class CommonShellsql - The Sql statementjava.lang.Exceptionpublic void doSqlCatchReorg(java.util.AbstractList list)
throws java.lang.Exception
java.lang.ExceptionConfigDB.doSqlCatchReorg(String)public void doSqlCatchReorg(java.lang.String sql)
throws java.lang.Exception
java.lang.Exceptionpublic void showMsg(java.lang.String str)
showMsg in class CommonShellstr - The one-line message to be displayed.ConfigureService.addConfigMsg(java.lang.String)public void setBypassTextSearchForUpgrade(boolean value)
value - True to bypass native text search commands, False to perform them normally.ConfigDB.bypassTextSearchForUpgradepublic void setDoReorgCheck(boolean value)
isReorgPending ,
reorgTable,
revalidateTextSearchIndexes,
adjustTextSearchOneTable.
For reference, see end of the alterTable method.public TextSearch getTextSearchHelper()
public void upgradeCallout(java.lang.String methodName,
java.lang.String methodPlace,
java.lang.String objectname)
throws java.lang.Exception
The name of the class being called is "UpgCdb" + methodName + methodPlace + tbname.
For example, if this is called from method rebuildTable, place 01,
table Item, then the name of this class would be:
UpgCdbRebuildTable01ITEM
The subdirectory containing these classes is identified by calloutSubdir.
The class should be extended from UpgTemplate. If the class is not found, there is no error. If the class needs to exit the configuration process, it should throw an error.
methodName - The name of the method that is invoking this hook. Required.methodPlace - If the method provides more than one hook, each hook
needs an identifier. If the method provides only one hook,
this will be null.objectname - The object name currently being processed.
If object name is not relevant to the calling method, this
will be null.java.lang.ExceptionUpgTemplatepublic void setThrowErrorFromPrechecks(boolean value)
throws java.lang.Exception
value - java.lang.Exceptionpublic void endSetupInstance(java.lang.String outdir,
java.lang.String outfile,
java.util.HashMap params)
throws java.lang.Exception
endSetupInstance in class CommonShelloutdir - Not used.outfile - Not used.params - Parameters (see class javadocs).java.lang.Exceptionpublic void endProcessInstance()
throws java.lang.Exception
endProcess,
call endProcess for restoreClass.endProcessInstance in class CommonShelljava.lang.Exceptionpublic void setUserIfno(UserInfo ui)
public static void main(java.lang.String[] argv)