On Tue, Sep 7, 2010 at 12:37 AM, Ilja Golshtein <[email protected]> wrote: > Hello, > > you are lucky because I've got > > == > dev:~/projects/zmq-test/build >./zmq-test 1 > Too many open files > epoll_fd != -1 (epoll.cpp:40) > Aborted (core dumped) > ==
Probably io_threads_ in ctx_t() is getting corrupt. > against master b4740c14e7fc68040037d65bdfac4233b08c5a08 with your patch. > > Besides this I had to switch -werror off because of > == > pipe.hpp:50: warning: 'struct zmq::i_reader_events' has virtual functions but > non-virtual destructor > pipe.hpp:117: warning: 'struct zmq::i_writer_events' has virtual functions > but non-virtual destructor > == > What's your gcc/g++ version? We don't set -Wnon-virtual-dtor flag, but it's a default in g++ 3.x > According to strace, enormous number of threads were started. > > I'm running your sample code with g++ 4.4. But I don't see a crash or a corruption :-( > > > The initial issue http://github.com/zeromq/zeromq2/issues#issue/64 > is very important for me and I do appreciate any assistance. > > Thanks. > > > 07.09.10, 08:36, "Dhammika Pathirana" <[email protected]>: > >> Hi Ilja, >> >> Works ok with master branch, but there's a bug in initializing >> zmq::context_t with 0 io threads. >> I've attached following patch, >> >> diff --git a/src/ctx.cpp b/src/ctx.cpp >> index 65c5316..ec8a045 100644 >> --- a/src/ctx.cpp >> +++ b/src/ctx.cpp >> @@ -64,7 +64,7 @@ zmq::ctx_t::ctx_t (uint32_t io_threads_) : >> } >> >> // In the unused part of the slot array, create a list of empty slots. >> - for (uint32_t i = slot_count - 1; i >= io_threads_; i--) { >> + for (uint32_t i = io_threads_; i < slot_count; i++) { >> empty_slots.push_back (i); >> slots [i] = NULL; >> } >> > > -- > Best regards, > Ilja Golshtein. > _______________________________________________ > zeromq-dev mailing list > [email protected] > http://lists.zeromq.org/mailman/listinfo/zeromq-dev > _______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
