Using S3 managed content service (s3managedbucketsblobstore)

Parameters for automatic bucket creation

S3 buckets are created by tia Core.

Parameters for creating multiple buckets for object distribution. (Requires that several searches need to be executed in order to find objects).

bucketGroups = number of bucketgroups (may be increased later, never decreased)

bucketsPerGroup = number of buckets within a group (must not change, because the algorithm for storing and finding is based on this)

Buckets are only created when they are accessed. Only required buckets are created. Objects in a folder (e.g. AL components) may be distributed in several buckets. This also includes kgs meta information. Thus, an AL document can be distributed in several buckets.

During storage, an algorithm is used to decide which buckets are created.

During the search (e.g. AL-Info Command for an AL document), all buckets are searched, even if they have not yet been created, in order to find all AL components.

With AL-Get, the possible target bucket is found using the algorithm. The number of searches is equal to the setting of bucketGroups. The search is parallelized in this case.

Creation of Buckets:

Required Buckets are created when accessing (e.g. by document creation).

Timeout for bucket creation:

When the bucket is created, the process waits for a maximum of 40 seconds.

10 seconds is waited for the bucket creation. A maximum of 30 seconds is then used to check whether the bucket has been created. This results in a maximum waiting time of 40 seconds.

If the bucket cannot be created, the error message "Bucket '<Bucketname>' cannot be created" is written as error log.

Script execution

After creation of a bucket the "onBucketCreate" script is executed, tia Core waits until the execution was successful to finish or rejected with an error. No timeout is set.

There are two possible errors:

  • Error before execution (script not found, command wrong ...) leads to log entry: "createBucket failed <Bucketname> with Eception Message: <Error message>.

  • Error executing the script (script cannot finish successfully): "ScriptExecution failed in create-bucket <bucketname> for repository <repository> failed".

Timeout consideration for accessing applications

If multiple buckets are needed (e.g. a document can be split into multiple buckets) these times add up. Per created bucket there is a maximum waiting time of 40 seconds for the creation plus the time for script execution. It must be ensured that accessing applications have their own timeouts. These must be configured accordingly and observed during initial storage. If the buckets are already created, only the direct access takes place.