You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@qpid.apache.org by Baptiste Robert <ba...@gmail.com> on 2018/04/17 15:36:06 UTC
QPid-proton cpp 0.21 - Crash
Hello,
When I create a proton::container and use it, I have a crash when I delete
the proton object:
void pn_proactor_free(pn_proactor_t *p) {
-> DeleteTimerQueueEx(p->timer_queue, INVALID_HANDLE_VALUE);
I'm using proton 0.21 compiled in CXX03 mode.
Is anyone have an idea ?
Thank you,
Baptiste
Re: QPid-proton cpp 0.21 - Crash
Posted by Baptiste Robert <ba...@gmail.com>.
I do not use any kind of timer on my side, but maybe it's a similar
internal proton issue as this one :
https://issues.apache.org/jira/browse/DISPATCH-945
2018-04-18 2:21 GMT+02:00 Chris Richardson <ch...@apache.org>:
> A couple of suggestions spring to mind - I've experienced problems with
> timers in other libraries where a timer fires after (or indeed during) its
> callback or associated data has been deleted, resulting in a segfault.
> Could this be relevant? Probably capturing a core dump and inspecting with
> gdb would be enlightening and would be my first port of call. Another
> approach might be some code introspection to verify that timers are
> cancelled and that their handlers have completed before relevant garbage
> collection takes place. Rather general comments I'm afraid but I thought it
> might be worth consideration.
>
> Chris
>
>
>
> On 17 April 2018 at 16:36, Baptiste Robert <ba...@gmail.com>
> wrote:
>
> > Hello,
> >
> > When I create a proton::container and use it, I have a crash when I
> delete
> > the proton object:
> >
> > void pn_proactor_free(pn_proactor_t *p) {
> > -> DeleteTimerQueueEx(p->timer_queue, INVALID_HANDLE_VALUE);
> >
> > I'm using proton 0.21 compiled in CXX03 mode.
> >
> > Is anyone have an idea ?
> >
> > Thank you,
> >
> > Baptiste
> >
>
--
Baptiste Robert
Re: QPid-proton cpp 0.21 - Crash
Posted by Chris Richardson <ch...@apache.org>.
A couple of suggestions spring to mind - I've experienced problems with
timers in other libraries where a timer fires after (or indeed during) its
callback or associated data has been deleted, resulting in a segfault.
Could this be relevant? Probably capturing a core dump and inspecting with
gdb would be enlightening and would be my first port of call. Another
approach might be some code introspection to verify that timers are
cancelled and that their handlers have completed before relevant garbage
collection takes place. Rather general comments I'm afraid but I thought it
might be worth consideration.
Chris
On 17 April 2018 at 16:36, Baptiste Robert <ba...@gmail.com>
wrote:
> Hello,
>
> When I create a proton::container and use it, I have a crash when I delete
> the proton object:
>
> void pn_proactor_free(pn_proactor_t *p) {
> -> DeleteTimerQueueEx(p->timer_queue, INVALID_HANDLE_VALUE);
>
> I'm using proton 0.21 compiled in CXX03 mode.
>
> Is anyone have an idea ?
>
> Thank you,
>
> Baptiste
>