persist_io – Persistent IO Wrapper

March 26, 2020 Contributors

The persist_io module provides a non-volatile cache wrapper for any other IO wrapper. For example, one could load a file over the HTTP IO wrapper, such that if the HTTP server is down then the consumer of the file will be provided with the locally cached copy. An example of how to use the persist IO wrapper with the HTTP IO wrapper to load a script in the Sieve module is below:

**Configuration Change. ** In version 3.0, this module is loaded automatically as required and does not need to be explicitly included.

persist_io {
  dirmode = 0700
}
sieve "sieve1" {
  script "connect_phase1" {
    source = "persist://http://www.foo.com/mysievescript.siv"
  }
}

It should not be necessary to use this module in version 3.0, since the configuration repository functionality provides for persistent configurations that can be centrally managed.

Find below a description of the configuration options for the persist_io module.

dirmode

The octal representation of the permissions for the directory that holds the cached files. The default value is 0700

filemode

The octal representation of the permissions for cached files. The default value is 0600

persist_path

The path to the directory that holds the cached files. The default value is /var/log/ecelerity/persist.