[
https://issues.apache.org/jira/browse/QPID-5485?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13874759#comment-13874759
]
Pavel Moravec commented on QPID-5485:
-------------------------------------
So code like:
std::string MemoryMappedFile::open(const std::string& name, const std::string&
directory)
{
std::string path = getFileName(name, directory);
int flags = O_CREAT | O_EXCL | O_RDWR;
int fd = ::open(path.c_str(), flags, S_IRUSR | S_IWUSR);
if (fd == -1) throw qpid::Exception(QPID_MSG("Failed to open memory mapped
file " << path << ": " << qpid::sys::strError(errno) << " [flags=" << flags <<
"]"));
state->fd = fd;
::unlink(path.c_str());
return path;
}
void MemoryMappedFile::close(const std::string& /*path*/)
{
::close(state->fd);
// ::unlink(path.c_str());
}
is better? Checking it, I see no real file exists after creating PagedQueue as
paged queue:
$ qpid-send -a "PagedQueue; {create:always, node: { x-declare: {arguments:
{'qpid.paging':'True' }}}}" -m 1000
$ file /home/pmoravec/.qpidd/PagedQueue
/home/pmoravec/.qpidd/PagedQueue: ERROR: cannot open
`/home/pmoravec/.qpidd/PagedQueue' (No such file or directory)
$ lsof -p $(pgrep qpidd) | grep PagedQueue
qpidd 30992 pmoravec DEL REG 253,3 11407785
/home/pmoravec/.qpidd/PagedQueue
qpidd 30992 pmoravec 13u REG 253,3 131072 11407785
/home/pmoravec/.qpidd/PagedQueue (deleted)
$
All operations I tried with the queue seem to work fine..
> 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]