Francesco, you are sooo right.
ROFL sorry for shouting, but it is such a stupid mistake of me, that leads to that error. But it's very entertaining as well, so here is the story. No matter what stage of experience one has using zmq, but if you write real world software using it, it is just fun and sometimes it gets really exciting. So, for sure you guys, at least the linux guild of you, knows about the workspaces one can use on linux desktop systems. So you can spill all your open terminal windows and virtual machines grouped by task's over a lot of workspaces, can watch the fruits of your work processing tons of messages exactly the manner you have told them to do and still have a workspace left, you run your favorite IDE in. Then, because programmers are lacy guys, they use tools like make to hide their boring work. So do I, and because scp'ing the ready binary to the right virtual machine is such a boring work, I have a "deploy" target to do that job in some automated fashion. General work-flow now is get your bugs out of the program and build it. If it looks good, kill the running program in the VM's terminal it runs in, then hit the deploy button in my IDE, start the program again. Sometimes the binary directly sometimes using valgrind. And because programmers in some moments are just humans, they miss some tasks, they early defined on their very own. So happened to me. Occasional I hit the deploy button instead of the build button, then you go to the workspace and terminal your program runs in, just to see, your program crashed. Sh.t, what happened? If you run the program directly, it sits in RAM and OS is complaining that you cannot copy the new binary over the one it is running. Using valgrind to run the program, the OS doesn't know about the binary in use and just copies the new one over the old one, but valgrind isn't happy with that, and terminates the program throwing tons of text on you. That exactly was happening in my case. It took me a time to figure that out, because if I hit the deploy button in my IDE, running in one workspace, I don't see that in the very same moment the program crashes, because it's output is shown in the another workspace. Really stupid. Sorry if I have been raising bug flags on some of you. Ju ________________________________ From: zeromq-dev <[email protected]> on behalf of Francesco <[email protected]> Sent: Friday, December 8, 2017 4:52 AM To: ZeroMQ development list Subject: Re: [zeromq-dev] how to debug that case? Hi Jürgen, Just a guess: could it be a signal received by your software that interrupted a ZMQ operation which returned EINTR instead of zero ? Actually I never used CZMQ so that's just a wild guess. Francesco 2017-12-07 19:39 GMT+01:00 Juergen Gnoss <[email protected]<mailto:[email protected]>>: I've written a program using czmq. Current ØMQ version is 4.2.3 built from git zcmq built against that lib My program generally runs very well and handles a good amount of messeges every day. But in occasional cases (once in 2 or 3 days) it just asserts with. E: 17-12-07 13:17:56 zsock: invalid picture element 'a' dcs_BSD_PortHandler: src/zsock.c:1149: zsock_vrecv: Assertion `0' failed. I'm sure I'm not using zsock_vrecv in my program. So I guess it's somewhere in the libs. Any hints how I can find where the problem comes from. Ju _______________________________________________ zeromq-dev mailing list [email protected]<mailto:[email protected]> https://lists.zeromq.org/mailman/listinfo/zeromq-dev
_______________________________________________ zeromq-dev mailing list [email protected] https://lists.zeromq.org/mailman/listinfo/zeromq-dev
