[
https://issues.apache.org/jira/browse/QPID-5485?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13875608#comment-13875608
]
Pavel Moravec commented on QPID-5485:
-------------------------------------
FYI there is broker option --paging-dir available. Note that having approach
"don't ulink after creating" and "prevent file overwrite" can cause infinite
broker restart loop when:
1) broker abruptly died due to some reason, leaving the orphaned files
2) Broker set to automatically restart (i.e. due to rgmanager or whatever else
way), but its kick-off is terminated when durable paged queue is to be restored
So what about the approach:
1) if paging-dir is set:
- allow overwriting files (O_TRUNC), assuming the directory contains only
paged queue files
- don't ulink files just after created them (do so only when deleting the
queue)
2) if paging-dir is _not_ set:
- preventivelly disallow overwriting files (O_EXCL), to protect lock file,
sasldb or so
- ulink files just after created them - to prevent potential broker restart
infinite loop as above
First option is for those admins who likely see everything on their place, the
second option is for those who dont care (and want everything working somewhere
on (not visible) background).
Or is the idea too complicated? (and also I need to review the code how easy to
implement the "is paging-dir set?" test on the _right_ place)
> Deleting paged queue does not remove underlying file
> -----------------------------------------------------
>
> Key: QPID-5485
> URL: https://issues.apache.org/jira/browse/QPID-5485
> Project: Qpid
> Issue Type: Bug
> Components: C++ Broker
> Affects Versions: 0.24
> Environment: (any posix system)
> Reporter: Pavel Moravec
> Assignee: Pavel Moravec
> Priority: Minor
> Labels: easyfix, easytest, patch
> Fix For: 0.27
>
>
> Description of problem:
> When deleting a paged queue, the broker does not delete the underlying file
> it created in /var/lib/qpidd directory.
> Version-Release number of selected component (if applicable):
> MRG-M 3.0 EA (qpid-cpp 0.22-29)
> How reproducible:
> 100%
> Steps to Reproduce:
> 0. service qpiddd restart
> 1. qpid-send -a "PagedQueue; {create:always, delete:always, node: {
> x-declare: {arguments: {'qpid.paging':'True' }}}}"
> 2. file /var/lib/qpidd/PagedQueue
> Actual results:
> /var/lib/qpidd/PagedQueue: data
> Expected results:
> /var/lib/qpidd/PagedQueue: cannot open `/var/lib/qpidd/PagedQueue' (No such
> file or directory)
> Additional info:
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]