%SYS
BackgroundFileCompact Class Reference

Class to start, monitor and control the Database Compaction utiltity running in the background. More...

Inheritance diagram for BackgroundFileCompact:
Collaboration diagram for BackgroundFileCompact:

Public Attributes

 BlocksScanned
 Blocks scanned as part of compaction. More...
 
 Database
 Database directory on which to operate. More...
 
- Public Attributes inherited from BackgroundTask
 CancelIsAvailable
 True if cancel is allowed for this task and the state (as of load time) More...
 
 Class
 The subclass name of the task; accessible via SQL where oref. More...
 
 DisplayType
 A text string to display as the type of background task as defined by its subclass. More...
 
 FinalStatus
 Status code when finished. More...
 
 HasEnded
 True if the <PROPERTY>RunningState</PROPERTY> is one that will not progress. More...
 
 Namespace
 Namespace in which the task is run. More...
 
 PID
 PID of job performing the work, available once the "Running" state has been entered. More...
 
 PauseIsAvailable
 True if pause is allowed for this task and the state (as of load time) More...
 
 ProgressCurrent
 The current amount of progress made. More...
 
 ProgressTotal
 The total amount of progress that must be made to complete. More...
 
 ProgressUnits
 The units in which progress is measured. More...
 
 Request
 Request to the running task. More...
 
 ResumeIsAvailable
 True if pause is allowed and the utility is paused. More...
 
 RunningState
 Information about whether the task is running or not. More...
 
 StartTime
 Start time of run. More...
 

Static Public Attributes

 CANCELDISPOSITION = None
 Disposition for cancel requests. More...
 
- Static Public Attributes inherited from BackgroundTask
 CANCELDISPOSITION = None
 Disposition for cancel requests. More...
 
 PAUSEDISPOSITION = None
 Disposition for pause requests. More...
 

Additional Inherited Members

- Public Member Functions inherited from BackgroundTask
_.Library.Status Cancel ()
 Request cancellation.
 
_.Library.Status Pause ()
 Request pause.
 
_.Library.Status Resume ()
 Request to resume from pause.
 
- Static Public Member Functions inherited from BackgroundTask
_.Library.ObjectHandle Start (args)
 Starts this task in the background and returns on oref for monitoring and control. More...
 

Detailed Description

Class to start, monitor and control the Database Compaction utiltity running in the background.

The method run in the background is the FileCompact method of <CLASS>SYS.Database</CLASS>.

To start it

   set oref=##class(SYS.Database.BackgroundFileCompact).Start(Directory,TargetFree)

<METHOD>Start</METHOD> returns an oref to an object of this class that can be inspected and reloaded to get status and progress updates. See superclass <CLASS>SYS.BackgroundTask</CLASS> for detailed information on features of this object.

Member Data Documentation

◆ CANCELDISPOSITION

CANCELDISPOSITION = None
static

Disposition for cancel requests.

0 - not allowed
1 - polls for cancel requests
-1 - directly terminate the process

◆ BlocksScanned

BlocksScanned

Blocks scanned as part of compaction.

This includes blocks that have been relocated,

either explicity because they needed to be moved, or incidentally as part of the operation. Also includes blocks searched as required to move a big string storage block. The expected value is highly dependent on the physical structure of the databases and is hard to predict; it serves mostly as an indication of forward progress.  

◆ Database

Database directory on which to operate.