Home > Class Reference > %SYS namespace > Config.Journal

Config.Journal

persistent class Config.Journal extends %Library.Persistent, Config.CommonSingleMethods, Config.CommonProperties, %SYSTEM.Help

SQL Table Name: Config.Journal

This class allows you to modify and view the [Journal] section of the CPF file through programatic APIs. While properties are usually modified through the System Management portal, there may be some occasion where modifying them through the API's is best for your system. In all the Config methods, if you do not specify the CPFFile parameter, the currently active CPF file is used. If you wish to modify a CPF file which is not the currently active one, then specify the CPFFile you wish to modify in the method call.
The Flags parameter does not normally need to be specified; the defaults are usually sufficient for most cases.
You can use the provided API's (Get/Modify) to modify the properties by passing in the correct parameters.

NOTE: You cannot use object syntax to directly modify the [Journal] parameters. You MUST use the API's found in this class.

EXAMPLE:

; Use class methods to modify properties
%SYS>s Status=##Class(Config.Journal).Get(.Properties)
%SYS>i Status w !,"Error="_$SYSTEM.Status.GetErrorText(Status)
%SYS>zw Properties
Properties("AlternateDirectory")="C:\AppDB1\Mgr\Journal\"
Properties("BackupsBeforePurge")=2
Properties("CurrentDirectory")="C:\AppDB1\Mgr\Journal\"
Properties("DaysBeforePurge")=2
Properties("FileSizeLimit")=2048
Properties("FreezeOnError")=0
Properties("JournalFilePrefix")=""
Properties("JournalcspSession")=1
%SYS>s Properties("FileSizeLimit")=1024
%SYS>s Status=##Class(Config.Journal).Modify(.Properties)
%SYS>i Status w !,"Error="_$SYSTEM.Status.GetErrorText(Status)

Property Inventory (Including Private)

Parameters

parameter NOTRANSACTIONS = 1;
Setting this flag keeps the journal updates outside of a transaction When %Save() is called in the API's.

Properties (Including Private)

property AlternateDirectory as %SysPath (MAXLEN = 256);
Alternate journal directory.
Property methods: AlternateDirectoryDisplayToLogical(), AlternateDirectoryGet(), AlternateDirectoryGetStored(), AlternateDirectoryIsValid(), AlternateDirectoryLogicalToDisplay(), AlternateDirectoryLogicalToOdbc(), AlternateDirectoryNormalize(), AlternateDirectorySet()
property BackupsBeforePurge as %Integer (MAXVAL = 10, MINVAL = 0) [ InitialExpression = 2 , Required ];
Number of backups before the journal files are automatically purged.
Property methods: BackupsBeforePurgeDisplayToLogical(), BackupsBeforePurgeGet(), BackupsBeforePurgeGetStored(), BackupsBeforePurgeIsValid(), BackupsBeforePurgeLogicalToDisplay(), BackupsBeforePurgeNormalize(), BackupsBeforePurgeSet(), BackupsBeforePurgeXSDToLogical()
property CurrentDirectory as %SysPath (MAXLEN = 256);
Primary journal directory.
Property methods: CurrentDirectoryDisplayToLogical(), CurrentDirectoryGet(), CurrentDirectoryGetStored(), CurrentDirectoryIsValid(), CurrentDirectoryLogicalToDisplay(), CurrentDirectoryLogicalToOdbc(), CurrentDirectoryNormalize(), CurrentDirectorySet()
property DaysBeforePurge as %Integer (MAXVAL = 100, MINVAL = 0) [ InitialExpression = 2 , Required ];
Number of days before the journal files are purged.
Property methods: DaysBeforePurgeDisplayToLogical(), DaysBeforePurgeGet(), DaysBeforePurgeGetStored(), DaysBeforePurgeIsValid(), DaysBeforePurgeLogicalToDisplay(), DaysBeforePurgeNormalize(), DaysBeforePurgeSet(), DaysBeforePurgeXSDToLogical()
property FileSizeLimit as %Integer (MAXVAL = 4079, MINVAL = 0) [ InitialExpression = 1024 , Required ];
Maximum size of each journal file in MB.
Property methods: FileSizeLimitDisplayToLogical(), FileSizeLimitGet(), FileSizeLimitGetStored(), FileSizeLimitIsValid(), FileSizeLimitLogicalToDisplay(), FileSizeLimitNormalize(), FileSizeLimitSet(), FileSizeLimitXSDToLogical()
property FreezeOnError as Security.Datatype.BooleanYN [ InitialExpression = 0 , Required ];
Freeze the system if there is an error writing to the journal.
If this option is set to true (1), as soon as the error occurs all global activities that are normally journaled are blocked, which causes other jobs to block. The typical outcome is that the system goes into a hang state until the journaling problem is resolved, and then resumes running. While InterSystems IRIS is hanging, the administrator can take corrective measures, such as freeing up space on a disk that is full, switching the journal to a new disk, etc. This option has the advantage that once the problem is fixed and InterSystems IRIS resumes running, no journal information has been lost. It has the disadvantage that the system is less available while the problem is being solved.
If this option is set to false (0), when a journaling error occurs journaling is entirely disabled, while the system continues running as normal. The system sends a console message to alert the administrator, who can fix the problem and then run ^JRNSWTCH at the console to restart journaling.
Property methods: FreezeOnErrorDisplayToLogical(), FreezeOnErrorGet(), FreezeOnErrorGetStored(), FreezeOnErrorIsValid(), FreezeOnErrorLogicalToDisplay(), FreezeOnErrorLogicalToOdbc(), FreezeOnErrorLogicalToXSD(), FreezeOnErrorNormalize(), FreezeOnErrorSet(), FreezeOnErrorXSDToLogical()
property JournalFilePrefix as %String (MAXLEN = 64, MINLEN = 0);
Prefixes journal file names with this string.
May be used to distinguish journal files from different instances in the same directory.
Property methods: JournalFilePrefixDisplayToLogical(), JournalFilePrefixGet(), JournalFilePrefixGetStored(), JournalFilePrefixIsValid(), JournalFilePrefixLogicalToDisplay(), JournalFilePrefixLogicalToOdbc(), JournalFilePrefixNormalize(), JournalFilePrefixSet()
property JournalcspSession as Security.Datatype.BooleanYN [ InitialExpression = 0 , Required ];
%cspSession global will be mapped to the TEMP database and not journaled.
Property methods: JournalcspSessionDisplayToLogical(), JournalcspSessionGet(), JournalcspSessionGetStored(), JournalcspSessionIsValid(), JournalcspSessionLogicalToDisplay(), JournalcspSessionLogicalToOdbc(), JournalcspSessionLogicalToXSD(), JournalcspSessionNormalize(), JournalcspSessionSet(), JournalcspSessionXSDToLogical()

Indexes

index (CPFNameSectionHeaderName on CPFName,SectionHeader,Name) [IdKey, Type = key, Unique];
Index methods: CPFNameSectionHeaderNameCheck(), CPFNameSectionHeaderNameDelete(), CPFNameSectionHeaderNameExists(), CPFNameSectionHeaderNameOpen(), CPFNameSectionHeaderNameSQLCheckUnique(), CPFNameSectionHeaderNameSQLExists(), CPFNameSectionHeaderNameSQLFindPKeyByConstraint(), CPFNameSectionHeaderNameSQLFindRowIDByConstraint()

Inherited Members

Inherited Properties (Including Private)

Inherited Methods (Including Private)

Storage

Storage Model: Storage (Config.Journal)

^|"^^"_$ZU(12)|SYS("CONFIG")(ID)
=
%%CLASSNAME
AlternateDirectory
BackupsBeforePurge
CurrentDirectory
DaysBeforePurge
FileSizeLimit
FreezeOnError
JournalcspSession
JournalFilePrefix
Comments
FeedbackOpens in a new window