Home > Class Reference > %SYS namespace > %DeepSee.IndexBuilder


abstract class %DeepSee.IndexBuilder

Method Inventory (Including Private)


BITMAPCHUNKINMEMORY is used during code generation to decide whether or not bitmap chunks can be constructed in memory. It is faster to construct bitmap chunks in memory but if there are a lot of bitmaps, the indexed property or properties have very low selectivity or the index values are large then STORE errors can be encountered. If BITMAPCHUNKINMEMORY is 1 then bitmap chunks are constructed in memory by %ConstructIndices. Otherwise, bitmap chunks are constructed using process-private globals. The default is 0, meaning that bitmap chunks are built using process-private globals.

Methods (Including Private)

classmethod %ConstructIndices(pStartId As %Integer, pEndId As %Integer) as %Status [ Language = objectscript ]
classmethod %ConstructIndicesParallel(pTaskId="", pStartId As %Integer = 0, pEndId As %Integer = -1, pSortBegin As %Integer = 1, pDroneCount As %Integer = 0) as %Status [ Language = objectscript ]
classmethod %ConstructIndicesStartTask(pTaskId, pSortBegin) as %String [ Language = objectscript ]
classmethod %NextId(pId As %Integer, pDirection As %Integer = 1) as %Integer [ Language = objectscript ]
NextId(pId,pDirection) returns the ID value following pId if pDirection is 1 or the ID value preceding pId if pDirection is -1.
classmethod %SaveIndices(pStartId As %String(MAXLEN="")="", pEndId As %String(MAXLEN="")="", lockExtent As %Boolean = 0) as %Status [ Language = objectscript ]
Files the indices for all objects whose ID is in the range defined by pStartId and pEndId. If pEndId is null then it defaults to pStartId. If pStartId is null then the range is empty and no filing will occur. If lockExtent is true then an extent lock will be acquired before the indices are built. If the lock cannot be acquired then an error is returned. The lock is released after the index filing is completed.

Returns a %Status value indicating success or failure.