[zeromq-dev] C++ assertion failed with Java client

AJ Lewis aj.lewis at quantum.com
Fri Feb 3 20:13:38 CET 2012

On Fri, Feb 03, 2012 at 12:58:10PM -0600, Chuck Remes wrote:
> On Feb 3, 2012, at 12:24 PM, AJ Lewis wrote:
> > On Sat, Feb 04, 2012 at 04:57:13AM +1100, john skaller wrote:
> >> 
> >> On 04/02/2012, at 4:37 AM, AJ Lewis wrote:
> >>> 
> >>> Definitely - just concerned that this model continues.  Some of
> >>> the talk about taking all patches blindly and waiting for other
> >>> contributers to revert them makes me nervous. 
> > 
> > <snip>
> > 
> >> So I would stop feeling nervous about vetting of patches .. and
> >> start feeling nervous about the lack of test code :)
> > 
> > Heh - that is true.  The key here is that test code will catch when
> > changes break what was previously working - whether that's a bug or
> > a change in interface.  If we has such tests, changes to the tests
> > themselves should get greater scrutiny, especially if they're
> > accompanied by library code changes, since there's more likely to be
> > interface changes (or bugs being worked around!) in that case.
> > 
> > I'm a big fan of the concept of Test Driven Design - having
> > "contracts" that are enforced by the test subsystem goes a long way
> > to keeping things sane.  At least then you *know* that you're
> > breaking an interface rather than finding out after the fact!
> The problem is trying to retrofit an existing codebase with tests. It
> is very difficult. I'd love to see a good C/C++ coder tackle it; I
> tried but it was beyond my capabilities.

Oh, certainly! It is very difficult if it wasn't part of the design from
the start. I've had this problem everywhere I've worked - there's always
some code or product that doesn't have a good integrated test system.
Unfortunately, I've not found a simple answer to getting that in place
either.  It seems to mostly require brute force. :(  That said, it's
definitely worth the time it takes to do it in the time saved in
detecting issues after it's in place!

IMO, it seems to me that a framework needs to be agreed upon (if it
hasn't been already - is the automake test framework good enough?) then
we need to start layering tests in that framework - especially around
the external API to begin with.

AJ Lewis
Software Engineer
Quantum Corporation

Work:    651 688-4346

The information contained in this transmission may be confidential. Any disclosure, copying, or further distribution of confidential information is not permitted unless such privilege is explicitly granted in writing by Quantum. Quantum reserves the right to have electronic communications, including email and attachments, sent across its networks filtered through anti virus and spam software programs and retain such messages in order to comply with applicable data security and retention requirements. Quantum is not responsible for the proper and complete transmission of the substance of this communication or for any delay in its receipt.

More information about the zeromq-dev mailing list