Public Member Functions | |
LSDCheckInDBThreadedDualLimitML (LSDLoadConfig llc) | |
Static Public Member Functions | |
static void | main (String[] args) |
Static Public Attributes | |
static boolean | errorFreeLegacy = true |
static LSDLoadConfig | llc = null |
Protected Member Functions | |
int | initializeArgs (String[] args, int curargs) |
boolean | checkLID () |
boolean | checkDBConsistency () |
Protected Attributes | |
long | idip = LSDConstants.invalide_idx |
long | opFix = LSDConstants.invalide_idx |
long | lid = LSDConstants.invalide_idx |
LSDDbAdmin | admin = null |
LSDDbLegacy | legacy = null |
LSDLegacy | lsdlegacy = null |
LSDDbIpPort | ipportAdmin = null |
boolean | repairlsd = false |
boolean | repairdb = false |
boolean | repairupdb = false |
boolean | updateDate = false |
boolean | nodate = false |
boolean | useCfunc = false |
openlsd.multiple.admin.LSDCheckInDBThreadedDualLimitML.LSDCheckInDBThreadedDualLimitML | ( | LSDLoadConfig | llc | ) |
Create a LSDCheck from args
llc |
static void openlsd.multiple.admin.LSDCheckInDBThreadedDualLimitML.main | ( | String[] | args | ) | [static] |
Start the connexion and runs the commands to check DB <-> LSD. This function is intend to be used only in ML context to check consistency of one Storage against database but never correct the database. To correct database against LSD, you have to use the LSDCheckInDBThreaded without the ML option, but to be sure that all files are there before since one MLegacy could have an absent file but not in another MLegacy.
args | with the config filename (db config) as first arg, then the LSD config filename. A third argument can be '-nbthread' following by nb of thread, '-nbstep' follow by the minimal nb of directories by thread, '-nomd5' to not check md5, '-noout' to only have a summary of checking, '-update' to update the last time check in no repair mode and without any error found '-nodate' to ignore the last time a check were done else check from that date, '-cfunc' to use native C procedure to check the files on the filesystem (getFileFromPath), '-nonio' to use no Nio function as Java procedure to check the file one the filesystem, '-idip' follow by the idip of the Protected IpPort of the local LSD Server, '-opfix' follow by the idip of the Protected IpPort of the valid LSD Server to repair all problems (if -repair or -repairlsd is set) through OpHandler, '-repair' to repair all problems only in LSD (not in database, so same as -repairlsd) (optional), '-repairlsd' to repair LSD references A fourth argument must be the legacy on which the check will be applied, since in dual mode, the principle is to check one Legacy during a short time of disabling any action on it (for instance 1 minute before and after check is launch), in order to allow the production to be running during check. '-nodate' is allow as only the upper date can be set (current date). One should however not allow delete operation during the check, since they can be not taken correctly into account. |
int openlsd.multiple.admin.commoncheck.limit.LSDCheckInDBAbstractDualML.initializeArgs | ( | String[] | args, | |
int | curargs | |||
) | [protected, inherited] |
Get arguments
args | ||
curargs |
Reimplemented from openlsd.server.admin.commoncheck.LSDCheckInDBAbstract.
boolean openlsd.multiple.admin.commoncheck.limit.LSDCheckInDBAbstractDualML.checkLID | ( | ) | [protected, inherited] |
Check from LSD to DB and reverse for one Legacy
Reimplemented from openlsd.server.admin.commoncheck.limit.LSDCheckInDBAbstractDual.
boolean openlsd.server.admin.commoncheck.LSDCheckInDBAbstract.checkDBConsistency | ( | ) | [protected, inherited] |
Check only DB consistency
long openlsd.multiple.admin.commoncheck.limit.LSDCheckInDBAbstractDualML.idip = LSDConstants.invalide_idx [protected, inherited] |
IdIp of local LSD Server in ML case (option -idip)
long openlsd.multiple.admin.commoncheck.limit.LSDCheckInDBAbstractDualML.opFix = LSDConstants.invalide_idx [protected, inherited] |
ML Support: OpFix as the idip of the remote server to use (as valid) if the check should use OpHandler function to correct problem.
long openlsd.server.admin.commoncheck.LSDCheckInDBAbstract.lid = LSDConstants.invalide_idx [protected, inherited] |
current Legacy id
LSDDbAdmin openlsd.server.admin.commoncheck.LSDCheckInDBAbstract.admin = null [protected, inherited] |
The DBAdmin connector
LSDDbLegacy openlsd.server.admin.commoncheck.LSDCheckInDBAbstract.legacy = null [protected, inherited] |
The DB Legacy object
LSDLegacy openlsd.server.admin.commoncheck.LSDCheckInDBAbstract.lsdlegacy = null [protected, inherited] |
The LSD Legacy object
LSDDbIpPort openlsd.server.admin.commoncheck.LSDCheckInDBAbstract.ipportAdmin = null [protected, inherited] |
The IpPort Admin object
boolean openlsd.server.admin.commoncheck.LSDCheckInDBAbstract.repairlsd = false [protected, inherited] |
LSD is to be repaired
boolean openlsd.server.admin.commoncheck.LSDCheckInDBAbstract.repairdb = false [protected, inherited] |
DB is to be repaired
boolean openlsd.server.admin.commoncheck.LSDCheckInDBAbstract.repairupdb = false [protected, inherited] |
DB is to be repaired with MD5 to be updated
boolean openlsd.server.admin.commoncheck.LSDCheckInDBAbstract.updateDate = false [protected, inherited] |
No repair will be done but the date will be update if no error is found
boolean openlsd.server.admin.commoncheck.LSDCheckInDBAbstract.errorFreeLegacy = true [static, inherited] |
Is the current Legacy error free
boolean openlsd.server.admin.commoncheck.LSDCheckInDBAbstract.nodate = false [protected, inherited] |
Don't take previous date in consideration
boolean openlsd.server.admin.commoncheck.LSDCheckInDBAbstract.useCfunc = false [protected, inherited] |
Use C Functions to check File Systems instead of Java Functions
LSDLoadConfig openlsd.server.admin.commoncheck.LSDCheckInDBAbstract.llc = null [static, inherited] |
Object to load XML configuration