git.net

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RFC: "persistent state" directory default/config/API


I'd like to add a "persistent state" directory with a hard-coded 
default, config directive and API equivalent to the runtimdir in 
config.layout, DefaultRuntimeDir directive and 
ap_runtime_dir_relative().  The "runtime" directory is used for 
transient state which disappears and can be deleted once the server is 
stopped.  This can be safely stored in tmpfs or even created & deleted 
on the fly.  A "persistent state" directory would be for data which is 
expected to persist across restarts.

Example users are the mod_dav_fs lock database, mod_md's MD data store. 
With an API & default, these can have hard-coded default paths so the 
modules work without needing configuration.  The proxy cache root could 
count here too.

Any thoughts/objections?

I'm not sure about naming, maybe simply:

DefaultStateDir -- ap_state_dir_relative() 

and use "statedir" in config.layout since localstatedir is already used 
and is typically set to /var or $prefix.

For Linux/FHS type layouts, statedir could be set to e.g. /var/lib/httpd 
and for layouts like "Apache", maybe $prefix/state or something like 
that would be fine.

Regards, Joe