[data]

Settings for the Data Manager

[data] alertDpList

Type
bool
Default
1
Range
0|1
Can be used for a faster query of historical alerts when using the RAIMA alert database. An internal list of DP elements available in an alert file set is created. By using the list you can check whether a queried element is available in this alert file set.

[data] archiveReqTimeout

Type
unsigned short
Default
0
Range
>= 0
Specifies the amount of retries the DataBG tries to open the database before stopping. This setting is used to ensure that, if an archive is stopped, running queries will still be answered "sometime" (that is, after maximum xxx seconds). With the config entry you define how many seconds the Data Manager (=History DB) should wait (maximum) for these answers from archives (with dpPeriodRequest(), dpGetAsynch() and dpQuery()). If no answer has been received from all the archives during this period, the query will be terminated with an error. The value should remain 0 (default value), meaning unlimited waiting time. Otherwise, values beginning from 120 [secs] would be meaningful as some queries can take longer. e.g. [data] archiveReqTimeout = 120

[data] bgOpenRetryCount

Type
int
Default
5
Range
0 - 25
Specifies the amount of retries the DataBG tries to open the database before stopping.

[data] checkDiskSpace

Type
bool
Default
1
Range
0|1
With this config entry the disc checking can be enabled or disabled. A disabling is only required if the specified value for EmergencyKBLimit in the DiskSpaceCheck datapoint is too high and thus the Data manager changes to the emergency mode already at start-up.

[data] checkMemory

Type
bool
Default
1
Range
0|1
With this config entry the memory checking can be enabled or disabled. A disabling is only required if the specified value for EmergencyKBLimit in the MemoryCheck datapoint is too high and thus the Data manager changes to the emergency mode already at start-up.

[data] checkNetworkBackupPath

Type
bool
Default
1
Range
0|1
Enabling (=1) this entry allows the data manager, using an icmp ping, to check if the configured backup path is available. This avoids a blocking data manager if the network resource is not available. The config entry is only required for Windows operating systems. This config entry is recommended if the backup path for the data manager is located on a windows network drive or shared folder and it is likely or common that the network connection to the backup path is unstable.

[data] dataBgName

Type
string
Default
WCCILdatabg
Specifies the name of the Data Background Manager. The given Data Background Manager will be started automatically by the Data Manager. If you specify "", the Data Background Manager will not be started.

When using only Oracle archiving the DataBG manager is not required and can be deactivated using the value "". In this case the recovery of the database can be directly started after starting your project as the data manger is already running in multi-user mode.

For projects with default archiving you must wait for the start of the DataBG manager before a recovery can be performed.

[data] dbTmpDir

Type
string
Default
OS specific tmp directory
Defines the temporary directory for lock manager files of the RAIMA database. An empty string "" means that the lock manager uses its default directory.

[data] DP_AlertDataSet

Type
string
Default
_AlertDataSet
Defines the name of the datapoint of the type _DataSet that is used for administering data sets of the alert history.

[data] DP_AlertSaveRestore

Type
string
Default
_AlertSaveRestore
Defines the name of the datapoint of the type _AlertSaveRestore that is used when managing and importing stored data of the alert history.

[data] DP_DataBgManager

Type
string
Default
_DataBgManager
Range
-
Internal data point name of the Data Background Manager.

[data] DP_DataManager

Type
string
Default
_DataManager
Internal datapoint name of the Data Manager.

[data] DP_DataSaveRestore

Type
string
Default
_DataSaveRestore
Defines the name of the datapoint of the type _DataSaveRestore that is used when managing and importing exported data of the value history.

[data] DP_DataSet

Type
string
Default
_DataSet
Defines the name of the datapoint of the type _DataSet that is used for administering data sets of the value history.

[data] DP_DiskCheck

Type
string
Default
All DP from type _DiskSpaceCheck
Range
-
Defines for what data points of the type _DiskSpaceCheck a check will be performed. The entry specifies a data point name and can be executed several times. The disk check can be disabled with DP_DiskCheck = "" or checkDiskSpace = 0.

[data] DP_MemoryCheck

Type
string
Default
_MemoryCheck
Range
-
Defines the name of the data point of the type _MemoryCheck. Through this data point, the checking of the virtual memory will be realized. The memory check can be disabled with checkMemory = 0.

[data] DP_RaimaErr

Type
string
Default
_RaimaErr
Range
-
When setting the [data] config entry "DP_RaimaErr" to a DPE element name of type Integer, whenever a RAIMA error occurs, the code of the error is written to this DPE. When a problem during DB repair at DataManager startup happens, the DPE is set to -1000. 1 The DPE is not cleared by itself except after (successful) DataManager startup, where it is reset to 0 (= no error). Note that all "relevant" error codes are negative (e.g. -27), positive codes are warnings (and normally should not be shown). In a redundant system, on the secondary system the DPE name gets an "_2" added to the base name (i.e. "RaimaErr_2.value" when the config entry is "RaimaErr.value"). The DPE has to be considered as "forward DP" in the redu config file.

[data] DP_RDBArchive

Type
string
Default
_RDBArchive
Defines the name of the datapoint of the type _RDBArchive containing the settings for archiving using the relational database. See also RDB archiving.

[data] DP_RDBArchiveGroup

Type
string
Default
_RDBArchiveGroups
Defines the name of the datapoint of the type _RDBArchiveGroups containing the settings of the archive groups. See also Setting archive group parameters.

[data] DP_ValueArchiveMedia

Type
string
Default
_ValueArchiveMedia
Defines the name of the datapoint of the type _ValueArchivMedia containing the settings of the data transfer when an archive set changes and the settings when archives are exported. See also History DB.

[data] fileSwitchRoundOff

Type
unsigned integer
Default
360
Range
Seconds
The config entry "fileSwitchRoundOff" can be used to round up the time so that the directory names of the alert archives are identical in redundant systems. The name of the alert archives corresponds to seconds since 01.01.1970.

[data] flushTimeForAliasCache

Type
ushort
Default
2
Range
0..maxshort
Delay time (in seconds) between flushes of cache for alias changes. Higher value = better performance but higher chance of data loss on system crash.

[data] flushTimeForDpConfigCache

Type
ushort
Default
2
Range
0..maxshort
Delay time (in seconds) between flushes of cache for config changes. Higher value = better performance but higher chance of dataloss on system crash.

[data] ignoreCorruptDB

Type
bool
Default
0
Range
0|1
This config entry specifies whether the Data manager should be started when the database is broken. If you specify the option "-repair", the system tries to repair the database. If the database cannot be repaired, the Data manager cannot start. This behavior can be changed via the config entry "ignoreCorruptDB = 1" in the [data] section. When this config entry is used the data manager also starts if the database was not repaired. If the entry "ignoreCorruptDB = 0" or no entry is used, the Data manager does not start in case of a broken database.

[data] keepLastTimeSmoothedValue

Type
bool
Default
0
Range
0|1
With the config entry keepLastTimeSmoothedValue = 1 it is possible to archive the current value at the end of a smoothing period if it is different than the last archived value which started the smoothing period. The value will be archived when a new value change occurs after the smoothing period and not at the end of the period. This feature only applies to time based smoothing and smoothing periods configured using the "archive" config; see _archive (Archiving). This feature is deactivated by default and no additional value is archived.

[data] lastValBgUpdateCycle

Type
unsigned integer
Default
600
Range
>= 0
If values in the past have changed, the DataBg manager sends messages for the update of last values to the data manager. Since this is realized per DPE, a significant load for the data manager can result. When using this entry, the requests of the DataBG are collected and only executed every "lastValBgUpdateCycle" seconds.

[data] lmcType

Type
string
Default
LMC_IP (UNIX) / LMC_INTERNAL (Windows)
Range
LMC_INTERNAL, LMC_IP
Defines the type of the lock manager to be used. CAUTION: The internal lock manager is not working across multiple processes under Linux. Therefore, it can only be used if it is ensured that only ONE process access the database at one time (thus only the data manager, only the ascii manager or only the dataBG manager). E.g. if the RAIMA is used for alarm archiving the internal lock manager must not be used under Linux. In this case the dataBG manager and the data manager can access the RAIMA database at the same time. This also applies to data export via the ascii manager.

[data] lockVATimeout

Type
int
Default
600
Range
1..7200
Specifies how long the data manager waits for the value archives to report that the archive sets are closed (during a redundancy balancing). Time is specified in seconds.

CAUTION! If you change the [data] passiveRecoveryTimeout to a value smaller than lockVATimeout, it can cause a Redu project not to start.

[data] maxAlertRequestCount

Type
int
Default
1000000
Range
>= 0
Defines the number of elements (=number of rows x number of columns) that are queried in a query with alarms. If the set number is exceeded the query is canceled as soon as possible and an error is returned. This config entry is valid for dpQuery() and dpGetPeriod(). Queries for the history DB are also limited with this config entry. If the entry is set to 0 there is no limitation.

NOTE: If you set higher values than the default values for this config entry, this can lead to a significant increase in memory consumption (RAM) by the WinCC OA runtime.

[data] maxLinesInQuery

Type
unsigned long
Default
80000
Range
<number of dpe>.. MAX_UINT
Defines the maximum number of lines in a table.

NOTE: If you set higher values than the default values for this config entry, this can lead to a significant increase in memory consumption (RAM) by the WinCC OA runtime.

[data] maxRequestLineCount

Type
int
Default
0
Range
>= 0
The entry maxRequestLineCount defines the limit (in returned lines) for an answer of a query (dpGetPeriod, dpQuery). Exceeding the limit causes a query break and an error message. Use getLastError() in CTRL to find out the occurring error. With queries no data are returned, with dpGetPeriod()all data until the break (+ some more) are returned. Only for History DB and RAIMA. This entry is additional to maxRequestMemSize, i.e. only one limit have to exceed for a query break. In case of data queries (no alarm data) this config entry is only used for RDB archiving. Default 0: no limit.

[data] maxRequestMemSize

Type
int
Default
0
Range
>= 0
The entry maxRequestMemSize defines the limit for the memory request in a query (dpQuery, dpGetPeriod). Exceeding the limit causes a query break and an error message. Only for HistoryDB and RAIMA. Default 0: no limit.

[data] maxUpdateMsgCount

Type
unsigned
Default
1000
Range
>=0
This entry specifies how many identification changing messages (DP_MSG_MANIP_xxx) the data manager will buffer. If there are more messages as specified in the queues the data manager will remove some messages. When a client connects to the data manager and request the identification the data manager will try to send only updates from these queues. Only if the request cannot be satisfied this way the data manager will send the entire identification.

[data] maxValueRequestCount

Type
int
Default
1000000
Range
>= 0
Defines the number of elements (=number of rows x number of columns)that are queried. If the set number is exceeded the query is canceled as soon as possible and an error is returned. This config entry is valid for dpQuery() and dpGetPeriod(). Queries for the history DB are also limited with this config entry. If the entry is set to 0 there is no limitation.

NOTE: If you set higher values than the default values for this config entry, this can lead to a significant increase in memory consumption (RAM) by the WinCC OA runtime.

[data] multiUserMode

Type
bool
Default
1
Range
0|1
If 1, the database is opened in multiple-user mode. If 0, in multiple-user mode.

[data] numberOfAlertsToBuffer

Type
short
Default
500
Range
10..500
Maximum number of alerts read from the incoming-message queue until the alerts are flushed. The alerts are not flushed after this counter only. There can also be an implicit flush if, for example, the buffer is full or the Data manager currently does not receive messages. Realistic values are between 10 and 500. The value is project-dependent.

[data] numberOfDatapointsToCache

Type
int
Default
10
Range
>= 1
Number of blocks created in the memory as a cache. Each block reserves 1 KB of memory. The number should be modified depending on the total of values to be archived. The value is project-dependent.

[data] numberOfValuesInOneInitMessage

Type
int
Default
10
Range
1..100
Number of items that are sent in a initialization message. Larger values mean faster start-up, but other processes are slowed down by it.

[data] numberOfValuesToBuffer

Type
short
Default
500
Range
10..500
Maximum number of values read from the incoming-message queue until the blocks are flushed. The blocks are not flushed after this counter only. There can also be an implicit flush if, for example, a block is full. Realistic values are between 10 and 500 (the larger the numberOfDatapointsToCache, the larger the resource may be, up to a maximum of 10*numberOfDatapointsToCache). The value is project-dependent.

[data] passiveRecoveryTimeout

Type
unsigned integer
Default
1800
The maximum time that may be used for the copying of the database files.

CAUTION! If you change the passiveRecoveryTimeout to a value smaller than [data] lockVATimeout, it can cause a redu project not to start.

[data] quickStart

Type
bool
Default
1
Range
0|1
Defines whether the DataBGManager will be started at the end of the project startup (0) or at the start of Data manager (1). The first method is faster, the second more compatible with original behaviour. When using the quickstart mode no other manager (ASCII, DataBG) can access the database until all processes before the DataBG process are started. For Linux the quickstart mode can be disabled as the RAIMA performance differences are not significant. Depending on the particular use case it might be beneficial to disabe the quickstart.

[data] repair

Type
string
Default
on
Range
on, off, ignore, last, lastonly, only:dbname
If the Data manager option "-repair" is used, the system tries to fix the specified database. If the database cannot be fixed, the Data manager does not start anymore. This behavior can be changed by using the config entry "ignoreCorruptDB = 1" in the [data] section. When this config entry is used, the Data manager starts even in case of a broken database. If you do not specify the -repair option, the Data manager tries to detect whether the database was correctly stopped and whether the database should be repaired. The alert database is not automatically repaired. Mode of database repair:
  • on = checks and repairs the DB, if the file dbase.status' exists.
  • off = if the file dbase.status' exists, then exit DM
  • ignore = ignore the file 'dbase.status' and start DM
  • last = repairs only the last data, if 'dbase.status' exists.
  • lastonly = repairs the last changed data and exit.
  • only:dbname = repairs only the specified data and exit.

[data] repairDchain

Type
bool
Default
1
Range
0|1
Specifies whether the RAIMA utility "dchain" shall be started for a defective database. RAIMA data sets that shall be deleted are only marked as deleted at first. This "marked as deleted" entries are stored in the dchain (delete chain). If the data manager is shut down unexpectedly it may occur that the actual deleted entries as well as the entries that are marked as deleted do not match the dchain. This config entry repairs this by using the "dchain" utility.

[data] sendAlertsToRAIMA

Type
bool
Default
0
Range
0|1
Requires useRDBArchive = 1. A value of 1 indicates that alerts are sent to RAIMA as well as to the RDB. Caution: No comparison is performed which can lead to gaps inside the archiving. A value of 0 indicates that the alerts are only sent to the RDB.

[data] sendUDAGNullValues

Type
bool
Default
1
Range
0|1
Using this config entry you can specify whether the Data manager should send a null (sendUDAGNullValues =1) or the latest value (sendUDAGNullValues =0) to the RDB database when a single value is changed. This means that when there are several data point elements and the value of only one element is changed, the value of the other elements is set to the latest value of the element or to zero.

[data] smoothBit

Type
string
Range
Userbit 1.. Userbit 32, _active, _exp_default, _aut_default, _out_prange, _out_range, _exp_inv, _aut_inv, _online_bad, _default_bad, _from_GI, _from_SI, _per_active, _stime_inv, _uncertain
This entry specifies which status bits should be considered for a smoothing (low-level old/new comparison before archiving). If one of these user bits changes, the value is not smoothed out even if the original values would not have changed. This entry has to exist for each user bit that should be considered. Possible values for the user bits are:

smoothBit = "_active"
smoothBit = "_exp_default"
smoothBit = "_aut_default"
smoothBit = "_out_prange"
smoothBit = "_out_range"
smoothBit = "_exp_inv"
smoothBit = "_aut_inv"
smoothBit = "_online_bad"
smoothBit = "_default_bad"
smoothBit = "_from_GI"
smoothBit = "_from_SI"
smoothBit = "_per_active"
smoothBit = "_stime_inv"
smoothBit = "_uncertain"
smoothBit = "Userbit 1"
smoothBit = "Userbit 2"
smoothBit = "Userbit 3"
smoothBit = "Userbit 4"
smoothBit = "Userbit 5"
...
smoothBit = "Userbit 30"
smoothBit = "Userbit 31"
smoothBit = "Userbit 32"

[data] startTimeVACorrection

Type
bool
Default
1
Range
0|1
With the config entry startTimeVACorrection = 1 changes Data Manager last value timestamp in start message sent to the Valarch Manager to the start time of the current archive record, if the first time is before that. With startTimeVACorrection = 0 is this feature disabled.

Note: It is not recommended to disable this feature.

[data] statFctInitInterval

Type
unsigned integer
Default
7200
Range
0..7200
Specifies (when using RDB) the time how long after an archive is finished, value changes of static datapoints that are dated back (can be detected via time stamp milliseconds = 0) are still sent to the archive when the archive is restarted. If an archive is e.g. finished at 14:30 , the Data Manager normally sends all last values with a time stamp after 14:30 to a new starting archive. For statistical datapoints, however, all last values are sent with the time stamp after 12:30 (7200) and thus sent to the old archive (since statistical functions are calculated delayed and the last calculated value could otherwise get lost.). Maximum value: 2 hours (7200) old values are sent to the old archive.

[data] transactionLogging

Type
bool
Default
0
Range
0|1
Since the data is written only block by block into the RAIMA database an unsaved block can be lost at system crash and the stored data can be corrupted. The transaction logging, however, prevents a permanent damage of the database since an internal (data internal) transaction is only finished after all data is written to the disk. When the transactionLogging is activated (= 1), no database repair is necessary. If transaction logging is used, it takes priority over the values in the internal data manager DP. Activated transaction logging causes the data manager to operate slower as without transaction logging.

In order to disable transactionLogging, set the config entry to 0. TransactionLogging cannot be disabled by deleting the config entry.

[data] useAlertDpListCache

Type
bool
Default
1
Range
0|1
Increases read performance for historic alerts (RAIMA database) by creating an "index" database (adplist.db, adplist.key) in each alertset directory to record which alerts for a given DP are saved in this alert dataset.

The entry is used by the Data and DataBG managers.

[data] useCurrentTimeForStartValue

Type
bool
Default
0
Range
0|1
With this config entry it is possible to force that a datapoint element value is written to the database with the current timestamp at a specific point of time (but not at start-up) when setting the _archive.._archive config (useCurrentTimeForStartValue = 1).

[data] waitForRecoveryFlag

Type
int
Default
1800 sec
Range
0-MAXINT, negative values are not allowed
The entry specifies the waiting period when connecting to the other redundant partner during the run-up of passive recovery. This is the time within the redundant partner must connect to the partner. If the redundant partner does not connect to the partner and the time elapses, the computer restarts (active).

[data] waitTimeForBGStart

Type
unsigned integer
Default
60
Range
>= 0
Accelerates the project start by not starting the DataBG immediately. The config entry defines the time that is waited after the initialization of managers, before the DataBGManager is started. The DataBG supports the Data manager in case of none time-critical operations. The time is specified in seconds. The default value is 60. If an incorrect value is specified the default value is used.