Multi root configuration (splitfilesystemv3, netappv3, icasv3)

This topic applies to the content service types splitfilesystemv3, netappv3, and icasv3, only.

It does not apply to any other content service type including splitfilesystemv2, netapp, and icas.

 

The multi root configuration allows to store the data in multiple archive root folders. By a selection process, the current root for creating new document folders is determined. The current root folder is re-selected in case of an I/O exception, and based on schedule with configurable frequency every n hours.

Although a root folder may not be currently selected, tia Content Server may write to it: All component files (ArchiveLink) belonging to the same document id get stored in the same folder on the same root. For existing document id folders, write operations are so still possible. It does not matter, if the root isn’t currently selected, free disc space limitation is exceeded or even the root is configured as non-selectable.

For that reason, recommendation is to configured with minimum of free disc space for each root folder, so creation of new folders stops leaving space for component files being added later.

 

Parent

Parameter

Description

Default

<repo>.contentservice.<type>

 

root.<n>

These parameters set the root folders.

<n> is a sequential number. So multiple root folders can be set up. (n=>0)

Each parameter must be set to a unique file system path.

In order to add a new root folder, just use the next higher sequential number.

Removing a root.<n> parameter, however, results in inaccessibility of the data stored in this location.

-

<repo>.contentservice.<type>.root.<n>

freespacegb

With this value it is possible to control the behavior of the selecting algorithm.
-1 means that this root folder will be skipped (expect the one with the highest number)
For any other value > 0 the space left is checked.

The folder with the smallest number and enough free space will be used.

see also https://kgs-software.atlassian.net/wiki/spaces/DOCUEN/pages/3526557741/Multi+root+configuration+splitfilesystemv3+netappv3+icasv3#Root-Folder-Selection-Rules

-1

<repo>.contentservice.<type>.root.<n>

rootSelectionIntervalH

Time interval in hours to find a new root directory. The algorithm is also triggered, when an IOException occures.

see https://kgs-software.atlassian.net/wiki/spaces/DOCUEN/pages/3526557741/Multi+root+configuration+splitfilesystemv3+netappv3+icasv3#Root-Folder-Selection-Rules

12

 

Root Folder Selection Rules

Starting with smallest root, each configured root folder:

  1. If freespacegb for the root is -1, it is blocked by configuration for creation of new doc Id’s.

  2. If enough free space is found on the root, it is selected and selection process ends.

  3. If not enough free space is found, the next root folder is inspected.

Example:

<repo>.contentservice.splitfilesystemv3.root.1 = C:/Doc_Base <repo>.contentservice.splitfilesystemv3.root.2 = C:/Doc_Base_Disk2 <repo>.contentservice.splitfilesystemv3.root.2.freespacegb=-1 <repo>.contentservice.splitfilesystemv3.root.3 = C:/Doc_Base_Disk3 <repo>.contentservice.splitfilesystemv3.root.3.freespacegb=10 <repo>.contentservice.splitfilesystemv3.root.4 = C:/Doc_Base_Disk4 <repo>.contentservice.splitfilesystemv3.root.4.freespacegb=50

 

In this example root.1 is skipped and only used for reading because freespacegb is not set and therefore defaults to -1.

root.2 is also skipped because freespacegb is -1.

root.3 is only used when C:/Doc_Base_Disk3 has more than 10 GB of disc space available.
root.4 is only used when C:/Doc_Base_Disk4 has more than 50 GB of disc space available and root.3 has no more space left..
In case the remaining free space on root.3 and root.4 falls below the limit configured, an exception is thrown and logged. No content can be stored.