Loading...
 

CX_DB_UTILITY::MoveFrameBatch

CX_DB_UTILITY::MoveFrameBatch

213694
Description:

This method performs the same operation as MoveFrame, but with the difference that the objects are not loaded from a collection but from a file and therefore the process does not have to keep all objects in the address space throughout and can be continued at any time.

The file from which the objects are read must first be created using DumpCollection.

As with MoveFrame, the second parameter can be used to control the number of objects per transaction. 0 here also means that all objects are processed in one transaction. Because MoveFrameBatch can be continued after each completed transaction and a large transaction log slows down the process, you should not choose too high a value (1000 is OK). Before each transaction MoveFrameBatch writes additionally into the log file (Logger: cx.main - Level: INFO) which objects are touched in the current transaction, so that if the process is aborted or crashed, the process can be continued from the log file after the last completed transaction.

MoveFrameBatch also shows a progress window, but the remaining time estimation is currently very unreliable.

Code example:
Var(util)
GetManager(OBJECT) Call(GetDBUtility) -> util

objects "CX_SYSTEM_OUT\\objects.coll" util Call(DumpCollection)
"CX_SYSTEM_OUT\\objects.coll" 1000 0 util Call(MoveFrameBatch)

Stack
Stack Position Object type Brief description
Stack(In) Top CX_DB_UTILITY DB Utility
Top 1 INTEGER Start object index (starting at 0)
top 2 INTEGER Objects per transaction
top 3 STRING Path to the file created by DumpCollection.
Stack(Out) Top - -

Function call: Call(MoveFrameBatch)