[ 
https://issues.apache.org/jira/browse/QPID-780?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ted Ross updated QPID-780:
--------------------------

    Attachment: qpid-patch22.diff

Diff file.

> Added --data-dir feature for persistent storage
> -----------------------------------------------
>
>                 Key: QPID-780
>                 URL: https://issues.apache.org/jira/browse/QPID-780
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Broker
>            Reporter: Ted Ross
>            Priority: Minor
>         Attachments: qpid-patch22.diff
>
>
> Added a feature originally spec'd by aconway.  Here is the description of the 
> requirement:
> Description of problem:
> Need a place to store broker data: files from other qpid
> components, e.g. management identity, cluster roles etc. 
> It should be
>  - collected: all data for a broker in one directory.
>  - locked: can't be used by 2 brokers simultaneously.
>  - open: new services can add their own files.
> Proposed solution:
> Changes for qpid:
>  --data-dir DIR (/var/lib/qpidd) Directory to contain persistent data 
> generated
> by the broker. 
> On startup: qpidd creates <data-dir>/lock, startup fails if data-dir does not
> exist, has wrong permissions or is already locked.
> --data-dir="" is allowed - it means "disable all features that need data-dir"
> Provides an easy way to run a transient broker for tests etc. 
> Features that can use the data-dir may run with reduced functionality e.g.
> management works but wont give history over restarts, can join a cluster but
> cant resume a previous cluster identity etc. 
> Justifications:
> - Why default to /var/lib/qpidd? 
> This is the sane default for qpidd running as a system service, we want qpidd 
> to
> run properly as a system service by default.
> Why not /var/lib if run as root, something else otherwise?
>  
> It's common to run system services as a non-root special user, so root isn't
> always the special case.
> Why not default to something convenient for developers like ~/.qpidd?
> 1. We want to default to deployed behavior not developer behavior.
> 2. The default will always be overridden if there is an /etc/qpidd.conf with a
> data-dir setting. Thats more confusing than helpful.
> For clarity & sanity you *must* to specify something on the command line if 
> you
> are not running the default deployed broker. Note that it's very easy though. 
> 3
> cases:
> 1. Transient broker for demos/tests: qpidd --data-dir=
> 2. Broker with own storage, but use /etc/qpidd.conf & defaults for everything
> else: qpidd --data-dir=mydata
> 3. Broker with a private config file: qpidd --config=myconf

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to