Home > Class Reference > ENSLIB namespace > %Storage.Shard

%Storage.Shard

class %Storage.Shard extends %Library.Storage

This class contains a set of storage interface methods for use in sharded environments. It is not for customer use.

Method Inventory

Parameters

parameter STORAGECOMPILERCLASS = %Compiler.Storage.Persistent;
parameter STORAGEINTERFACE = persistent;
STORAGEINTERFACE defines the type of serialization implemented by this class. The value has to match the classtype of the class that is inheriting the serialization interface.

Methods

classmethod %BuildIndices(pIndexList As %Library.RawString = "", pAutoPurge As %Library.Integer = 1, pLockFlag As %Library.Integer = 0, pJournalFlag As %Library.Integer = "", pStartID As %Library.RawString = "", pEndID As %Library.RawString = "", pIgnoreIndexList As %Library.RawString = "") as %Status [ Language = objectscript ]
Intercept calls to %BuildIndices and cause them to be executed on all the shards
classmethod %LockExtent(shared As %Boolean = 0) as %Status [ Language = objectscript ]
%LockExtent acquires a lock on the entire extent of the class. If shared is true then a shared lock is acquired, otherwise an exclusive lock is acquired. If the requested lock cannot be acquired then a failure %Status value is returned. The default implementation returns an error indicating that the method is not implemented. This method is automatically generated for persistent classes using %Storage.Persistent or %Storage.SQL.
classmethod %PurgeIndices(idxlist As %List = "", lockExtent As %Boolean = 0, pIgnoreIndexList As %RawString = "") as %Status [ Language = objectscript ]
Intercept calls to %PurgeIndices and cause them to be executed on all the shards
abstract classmethod %ShardKey(args... As %String) as %String [ Language = objectscript ]
Generate the shard key from the fields that make up the key. Not used currently.
classmethod %UnlockExtent(shared As %Boolean = 0, immediate As %Boolean = 0) as %Status [ Language = objectscript ]
%UnlockExtent releases a lock on the entire extent of the class. If shared is true then a shared lock is acquired, otherwise an exclusive lock is acquired. If the requested lock cannot be acquired then a failure %Status value is returned. The default implementation returns an error indicating that the method is not implemented. This method is automatically generated for persistent classes using %Storage.Persistent or %Storage.SQL.

Inherited Members

Inherited Methods