Comments (10)
And indeed, ppc64 has the same failures.
from libdap4.
Dan,
Do these tests fail with the latest libdap4 b177716?
from libdap4.
yes, those failures are present in latest master branch
from libdap4.
What's your platform ? Could you also provide the details of the failures?
If we cannot duplicate, it will be hard to fix.
from libdap4.
As I mentioned earlier I am seeing these failures on s390x and ppc64, both are big endian platforms. Which makes me assume the change from commit 5b419ac isn't endian-safe as everything was passing before that.
details from DMRTest.log
## ------------------------ ##
## Summary of the failures. ##
## ------------------------ ##
Failed tests:
libdap 3.21.0 test suite: dmr-test test groups:
NUM: FILE-NAME:LINE TEST-GROUP-NAME
KEYWORDS
139: DMRTest.at:465 trans ce test_simple_8.xml outer test_simple_8.xml.1.trans_base
trans_ce
140: DMRTest.at:466 trans ce test_simple_8.xml outer.s.s test_simple_8.xml.2.trans_base
trans_ce
141: DMRTest.at:467 trans ce test_simple_8.xml outer{s{s}} test_simple_8.xml.2.trans_base
trans_ce
## ---------------------- ##
## Detailed failed tests. ##
## ---------------------- ##
# -*- compilation -*-
139. DMRTest.at:465: testing trans ce test_simple_8.xml outer test_simple_8.xml.1.trans_base ...
./DMRTest.at:465: $abs_builddir/dmr-test -x -t $input -c "outer" || true
stderr:
stdout:
Parse successful
<?xml version="1.0" encoding="ISO-8859-1"?>
<Dataset xmlns="http://xml.opendap.org/ns/DAP/4.0#" xml:base="file:dap4/test_simple_8.xml" dapVersion="4.0" dmrVersion="1.0" name="test_simple_8">
<Structure name="outer">
<Sequence name="s">
<Int32 name="i1"/>
<String name="s"/>
</Sequence>
</Structure>
</Dataset>
<?xml version="1.0" encoding="ISO-8859-1"?>
<Dataset xmlns="http://xml.opendap.org/ns/DAP/4.0#" xml:base="file:dap4/test_simple_8.xml" dapVersion="4.0" dmrVersion="1.0" name="test_simple_8">
<Structure name="outer">
<Sequence name="s">
<Int32 name="i1"/>
<String name="s"/>
</Sequence>
<Attribute name="DAP4_Checksum_CRC32" type="String">
<Value>c6f12441</Value>
</Attribute>
</Structure>
</Dataset>
The data:
{ { { { 123456789, "Silly test string: 1" }, { 123456789, "Silly test string: 1" }, { 123456789, "Silly test string: 1" }, { 123456789, "Silly test string: 1" } } } }
./DMRTest.at:465: diff -b -B $baseline stdout || diff -b -B $baseline stderr
stdout:
20c20
< <Value>66950c7d</Value>
---
> <Value>c6f12441</Value>
1,26d0
< Parse successful
< <?xml version="1.0" encoding="ISO-8859-1"?>
< <Dataset xmlns="http://xml.opendap.org/ns/DAP/4.0#" xml:base="file:dap4/test_simple_8.xml" dapVersion="4.0" dmrVersion="1.0" name="test_simple_8">
< <Structure name="outer">
< <Sequence name="s">
< <Int32 name="i1"/>
< <String name="s"/>
< </Sequence>
< </Structure>
< </Dataset>
<
< <?xml version="1.0" encoding="ISO-8859-1"?>
< <Dataset xmlns="http://xml.opendap.org/ns/DAP/4.0#" xml:base="file:dap4/test_simple_8.xml" dapVersion="4.0" dmrVersion="1.0" name="test_simple_8">
< <Structure name="outer">
< <Sequence name="s">
< <Int32 name="i1"/>
< <String name="s"/>
< </Sequence>
< <Attribute name="DAP4_Checksum_CRC32" type="String">
< <Value>66950c7d</Value>
< </Attribute>
< </Structure>
< </Dataset>
<
< The data:
< { { { { 123456789, "Silly test string: 1" }, { 123456789, "Silly test string: 1" }, { 123456789, "Silly test string: 1" }, { 123456789, "Silly test string: 1" } } } }
./DMRTest.at:465: exit code was 1, expected 0
139. DMRTest.at:465: 139. trans ce test_simple_8.xml outer test_simple_8.xml.1.trans_base (DMRTest.at:465): FAILED (DMRTest.at:465)
# -*- compilation -*-
140. DMRTest.at:466: testing trans ce test_simple_8.xml outer.s.s test_simple_8.xml.2.trans_base ...
./DMRTest.at:466: $abs_builddir/dmr-test -x -t $input -c "outer.s.s" || true
stderr:
stdout:
Parse successful
<?xml version="1.0" encoding="ISO-8859-1"?>
<Dataset xmlns="http://xml.opendap.org/ns/DAP/4.0#" xml:base="file:dap4/test_simple_8.xml" dapVersion="4.0" dmrVersion="1.0" name="test_simple_8">
<Structure name="outer">
<Sequence name="s">
<Int32 name="i1"/>
<String name="s"/>
</Sequence>
</Structure>
</Dataset>
<?xml version="1.0" encoding="ISO-8859-1"?>
<Dataset xmlns="http://xml.opendap.org/ns/DAP/4.0#" xml:base="file:dap4/test_simple_8.xml" dapVersion="4.0" dmrVersion="1.0" name="test_simple_8">
<Structure name="outer">
<Sequence name="s">
<String name="s"/>
</Sequence>
<Attribute name="DAP4_Checksum_CRC32" type="String">
<Value>03a807fd</Value>
</Attribute>
</Structure>
</Dataset>
The data:
{ { { { "Silly test string: 1" }, { "Silly test string: 1" }, { "Silly test string: 1" }, { "Silly test string: 1" } } } }
./DMRTest.at:466: diff -b -B $baseline stdout || diff -b -B $baseline stderr
stdout:
19c19
< <Value>5bd779e9</Value>
---
> <Value>03a807fd</Value>
1,25d0
< Parse successful
< <?xml version="1.0" encoding="ISO-8859-1"?>
< <Dataset xmlns="http://xml.opendap.org/ns/DAP/4.0#" xml:base="file:dap4/test_simple_8.xml" dapVersion="4.0" dmrVersion="1.0" name="test_simple_8">
< <Structure name="outer">
< <Sequence name="s">
< <Int32 name="i1"/>
< <String name="s"/>
< </Sequence>
< </Structure>
< </Dataset>
<
< <?xml version="1.0" encoding="ISO-8859-1"?>
< <Dataset xmlns="http://xml.opendap.org/ns/DAP/4.0#" xml:base="file:dap4/test_simple_8.xml" dapVersion="4.0" dmrVersion="1.0" name="test_simple_8">
< <Structure name="outer">
< <Sequence name="s">
< <String name="s"/>
< </Sequence>
< <Attribute name="DAP4_Checksum_CRC32" type="String">
< <Value>5bd779e9</Value>
< </Attribute>
< </Structure>
< </Dataset>
<
< The data:
< { { { { "Silly test string: 1" }, { "Silly test string: 1" }, { "Silly test string: 1" }, { "Silly test string: 1" } } } }
./DMRTest.at:466: exit code was 1, expected 0
140. DMRTest.at:466: 140. trans ce test_simple_8.xml outer.s.s test_simple_8.xml.2.trans_base (DMRTest.at:466): FAILED (DMRTest.at:466)
# -*- compilation -*-
141. DMRTest.at:467: testing trans ce test_simple_8.xml outer{s{s}} test_simple_8.xml.2.trans_base ...
./DMRTest.at:467: $abs_builddir/dmr-test -x -t $input -c "outer{s{s}}" || true
stderr:
stdout:
Parse successful
<?xml version="1.0" encoding="ISO-8859-1"?>
<Dataset xmlns="http://xml.opendap.org/ns/DAP/4.0#" xml:base="file:dap4/test_simple_8.xml" dapVersion="4.0" dmrVersion="1.0" name="test_simple_8">
<Structure name="outer">
<Sequence name="s">
<Int32 name="i1"/>
<String name="s"/>
</Sequence>
</Structure>
</Dataset>
<?xml version="1.0" encoding="ISO-8859-1"?>
<Dataset xmlns="http://xml.opendap.org/ns/DAP/4.0#" xml:base="file:dap4/test_simple_8.xml" dapVersion="4.0" dmrVersion="1.0" name="test_simple_8">
<Structure name="outer">
<Sequence name="s">
<String name="s"/>
</Sequence>
<Attribute name="DAP4_Checksum_CRC32" type="String">
<Value>03a807fd</Value>
</Attribute>
</Structure>
</Dataset>
The data:
{ { { { "Silly test string: 1" }, { "Silly test string: 1" }, { "Silly test string: 1" }, { "Silly test string: 1" } } } }
./DMRTest.at:467: diff -b -B $baseline stdout || diff -b -B $baseline stderr
stdout:
19c19
< <Value>5bd779e9</Value>
---
> <Value>03a807fd</Value>
1,25d0
< Parse successful
< <?xml version="1.0" encoding="ISO-8859-1"?>
< <Dataset xmlns="http://xml.opendap.org/ns/DAP/4.0#" xml:base="file:dap4/test_simple_8.xml" dapVersion="4.0" dmrVersion="1.0" name="test_simple_8">
< <Structure name="outer">
< <Sequence name="s">
< <Int32 name="i1"/>
< <String name="s"/>
< </Sequence>
< </Structure>
< </Dataset>
<
< <?xml version="1.0" encoding="ISO-8859-1"?>
< <Dataset xmlns="http://xml.opendap.org/ns/DAP/4.0#" xml:base="file:dap4/test_simple_8.xml" dapVersion="4.0" dmrVersion="1.0" name="test_simple_8">
< <Structure name="outer">
< <Sequence name="s">
< <String name="s"/>
< </Sequence>
< <Attribute name="DAP4_Checksum_CRC32" type="String">
< <Value>5bd779e9</Value>
< </Attribute>
< </Structure>
< </Dataset>
<
< The data:
< { { { { "Silly test string: 1" }, { "Silly test string: 1" }, { "Silly test string: 1" }, { "Silly test string: 1" } } } }
./DMRTest.at:467: exit code was 1, expected 0
141. DMRTest.at:467: 141. trans ce test_simple_8.xml outer{s{s}} test_simple_8.xml.2.trans_base (DMRTest.at:467): FAILED (DMRTest.at:467)
The details contain "CRC32" and different values between expected and computed, so likely wrong computation of the CRC32 on big endian platform.
I can provide access to our public s390x system if needed.
from libdap4.
Dan, I have an idea - how about we address these issues using the same approach we use in the BES code? That is, we assume that the CRC checksums are tested and that, for these new tests and others going forward, we can filter out the checksums from the baselines and test responses. That way we do not have to maintain two sets of baselines?
from libdap4.
If it's good enough for verifying the functionality from your point of view, then I have no objections. If needed I can regenerate the big endian baselines too.
from libdap4.
OK. I'll try to get the tests updated ASAP.
from libdap4.
FYI the tests are now all passing on all platforms (including s390x) after commit 11e6695
from libdap4.
Great - I was just going to tell you the fix was in. I'll close this issue.
Thanks for reporting it.
from libdap4.
Related Issues (20)
- avoid mkstemps HOT 2
- unit-tests/HTTPCacheTest expects filesystem with 4KB blocks HOT 4
- SHA256 mismatch for libdap 3.19.1 HOT 7
- NULL pointer dereference in D4ParserSax2 HOT 2
- heap-buffer-overflow in libdap::XDRFileUnMarshaller::get_vector HOT 2
- 3.19.2 missing? HOT 1
- newly added tests are broken on big endian arches HOT 7
- using libtirpc instead of glibc RPC breaks EXPR tests on big endian arches HOT 3
- 3.20.5: test suite is failing HOT 6
- Clients using DAP4? HOT 3
- Please consider change git tagging convention HOT 1
- This is function should take an unsigned long long type as it's parameter HOT 1
- Grid::get_map_iter() function never returns an iterator for the first map HOT 2
- getdap4 some options not work HOT 3
- test suite fails on big endian arches after recent commit HOT 2
- error: 'uint32_t' does not name a type when compiling Vector.cc with gcc 13 HOT 2
- 404 with `https://www.opendap.org/pub/source/` HOT 2
- Build fails with LTO HOT 2
- ASAN misaligned address 0x611000006a99 for type 'dods...
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from libdap4.