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

Pavel Moravec closed QPID-6232.
-------------------------------
       Resolution: Fixed
    Fix Version/s: Future

Committed revision 1640357.


> [C++ broker] Linearstore segfaults when ulimit prevents creating new file in 
> EFP
> --------------------------------------------------------------------------------
>
>                 Key: QPID-6232
>                 URL: https://issues.apache.org/jira/browse/QPID-6232
>             Project: Qpid
>          Issue Type: Bug
>          Components: C++ Broker
>    Affects Versions: 0.30
>            Reporter: Pavel Moravec
>            Assignee: Pavel Moravec
>            Priority: Minor
>              Labels: patch
>             Fix For: Future
>
>
> When EFP fails to open a new file (i.e. due to ulimit to nofiles), 
> linearstore segfaults with backtrace:
> #0  0x00000034d429c1b9 in std::basic_string<char, std::char_traits<char>, 
> std::allocator<char> >::rfind(char, unsigned long) const () from 
> /usr/lib64/libstdc++.so.6
> #1  0x00007fe466719b50 in 
> qpid::linearstore::journal::EmptyFilePool::takeEmptyFile (this=0xddb540, 
> destDirectory="/var/lib/qpidd/qls/jrnl/Durable_4_8")
>     at 
> /usr/src/debug/qpid-0.22/cpp/src/qpid/linearstore/journal/EmptyFilePool.cpp:109
> #2  0x00007fe4667327a0 in 
> qpid::linearstore::journal::LinearFileController::pullEmptyFileFromEfp 
> (this=0x3478288)
>     at 
> /usr/src/debug/qpid-0.22/cpp/src/qpid/linearstore/journal/LinearFileController.cpp:239
> #3  0x00007fe466748bfd in qpid::linearstore::journal::wmgr::flush_check 
> (this=0x34784f8, res=@0x7fe462f55f90, cont=@0x7fe462f55f9f, 
> done=@0x7fe462f55f9c)
>     at /usr/src/debug/qpid-0.22/cpp/src/qpid/linearstore/journal/wmgr.cpp:651
> #4  0x00007fe46674c134 in qpid::linearstore::journal::wmgr::enqueue 
> (this=0x34784f8, data_buff=<value optimized out>, tot_data_len=177, 
> this_data_len=<value optimized out>, dtokp=
>     0x7fe3e583ed60, xid_ptr=0x0, xid_len=0, tpc_flag=false, transient=false, 
> external=false) at 
> /usr/src/debug/qpid-0.22/cpp/src/qpid/linearstore/journal/wmgr.cpp:223
> The problem is EmptyFilePool::overwriteFileContents does not react anyhow if 
> ofs.good() is false.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to