[nanomsg] Re: Release plans for nanomsg

  • From: "Garrett D'Amore" <garrett@xxxxxxxxxx>
  • To: "nanomsg@xxxxxxxxxxxxx" <nanomsg@xxxxxxxxxxxxx>
  • Date: Fri, 13 Oct 2017 01:36:22 +0000

Ah, you were talking about nng (nng_recvmsg), so utterly irrelevant to
libnanomsg.

On Thu, Oct 12, 2017 at 6:35 PM Garrett D'Amore <garrett@xxxxxxxxxx> wrote:

Are you talking about bugs in libnng, or libnanomsg?  Most of our offline
convo was about libnng, which is not production ready.

On Thu, Oct 12, 2017 at 6:33 PM Michael Powell <mwpowellhtx@xxxxxxxxx>
wrote:

On Thu, Oct 12, 2017 at 9:07 PM, Garrett D'Amore <garrett@xxxxxxxxxx>
wrote:
Hey all,

I just wanted to indicate that I’m planning on a 1.1 release of nanomsg.
This will roll up a number of bug fixes that should improve stability of
inproc (I’ve convinced myself that the inproc thread-safety issues I
thought
existed before don’t really exist — long story, but it turns out that
the
bugs were in the test code), but there were some real bugs in the state
machines, which I think I’ve ironed out.

A little professional advice, I wouldn't be so quick at that. See our
offline convo.

I think I've uncovered a bug in nng_recvmsg that was being masked by a
nullified, not freed, message pointer. So whatever bookkeeping was
being done internally is likely still there when receive "sees" it,
and does not actually "receive" any message at all, but uses the
message that was appended approaching the send. Which results in a
false positive in the subsequent verification.

I've stripped back as much test framework as possible and still honor
the execution path, so at this point I am 99.97% confident this is a
bug.

Otherwise, it's been pretty solid up to that point.

It is my intention that this will be the *last* release of libnanomsg.
(That said, as they say, the best laid plans of mice and men…)

The reason for this is that I’m pretty focused, as you may know, on
libnng,
which has a compatible API.  (In fact, you can just take your nanomsg
code,
and link it against libnng directly. :)

libnng isn’t perfect yet, and it isn’t ready for prime time, but it is
getting there, and I really want to focus on that as the way forward —
it
has lots of extra capabilities and it should open a lot of new
opportunities.

In the mean time, libnanomsg 1.1 will most likely be released this
week.  If
you have a favorite bug that you feel *absolutely* needs to be fixed
(and
I’ve not already labeled it as a “release stopper”) please let me know
ASAP.
I can’t promise I will agree to hold the release for it, but it does
improve
the odds if I know the bug is critical to you somehow.

Thanks!

 - Garrett

Cheers,

Michael


Other related posts: