<Dimension> elements in a constrained DMR sometimes have 'random' order

Description

Reported by: alastair.mckinstry@sceal.ie

We have a report from aleksander.vines@nersc.no that four of the DMR tests are failing for him when building libdap on travis. He has these failures with both libdap 3.18.0 and 3.18.1

I'm building with libxml2 2.9.4.

You can see the entire build output at https://travis-ci.org/nansencenter/libdap4-feedstock

Attached is the DMRTest log. Here is an excerpt showing the error. Note the order of the Dimension elements in the first and second XML docs:

According to StackOverflow, element order is significant and libxml2 preserves it, so this is a bug.

Environment

None

Activity

Show:
James Gallagher
February 8, 2018, 12:05 AM

I learned two things about this issue recently:

  1. It is a function of the compilation options with gcc. when using -O2, the issues does not show up, but with -O0 it does (which means it shows up with the new ASan build feature I'm working on in HYRAX-601.

  2. It seems to show up only with DAP4 functions, not CEs.

Here's what's in the function evaluator code that I suspect is the source of the problem:

Using the STL set container.

Done

Assignee

James Gallagher

Reporter

James Gallagher

Labels

None

Time tracking

0m

Time remaining

6h

Epic Link

Sprint

None

Priority

Medium