Eventual Binary Provider Configuration
To overcome potential latency, files are first written to a folder called “eventual” under the baseDataDir in local storage, and then later uploaded to persistent storage with the cloud provider. The default location of the eventual
folder is under the $JFROG_HOME/artifactory/data/artifactory
folder and is not configurable. You need to make sure that Artifactory has full read/write permissions to this location.
There are three additional folders under the eventua
l folder:
- _pre: part of the persistence mechanism that ensures all files are valid before being uploaded to the remote filestore
- _add: handles upload of files to the remote filestore
- _delete: handles deletion of files from the remote filestore
Example
The example below shows a configuration that uses S3 for persistent storage after temporary storage with an eventual binary provider. The eventual provider configures 10 parallel threads for uploading and a lock timeout of 180 seconds.
<!-- The S3 binary provider configuration --> <config version="v1"> <chain template="s3"/> <provider id="s3" type="s3"> <identity>XXXXXXXXX</identity> <credential>XXXXXXXX</credential> <endpoint><My OpenStack Server></endpoint> <bucketName><My OpenStack Container></bucketName> <httpsOnly>false</httpsOnly> <property name="s3service.disable-dns-buckets" value="true"></property> </provider> <!-- The eventual provider configuration --> <provider id="eventual" type="eventual"> <numberOfThreads>10</numberOfThreads> <timeout>180000</timeout> </provider> </config>
Where:
type | eventual |
timeout | The maximum amount of time a file may be locked while it is being written to or deleted from the filesystem. |
dispatcherInterval | Default: 5000 ms The interval between which the provider scans the “eventual” folder to check for files that should be uploaded to persistent storage. |
numberOfThreads | Default: 5 The number of parallel threads that should be allocated for uploading files to persistent storage. |