Skip to content

dap4.ce in Sequences: adding a filter-by-value yields bogus data #363

Description

@Mikejmnez

Given a sequence, I can request a constrained sequence by column name, but when I add a filter by value the data is off by a lot.

Minimal example

Consider this (flat) sequence: gsodock.dat. To make it easier say I only want to request the columns Time and Depth (Time is monotonically increasing). To make it even easier, say I want the first 2 values of Time, or values of Time<35234.01. Thus, I want a 2x2 table (two columns, two rows). Click here to look at the complete ascii data on the browser, to corroborate that I only want the first 2 rows based on the value of the first column.

The URL with the constraint expression is:

url = "http://test.opendap.org/opendap/hyrax/data/ff/gsodock.dat.dap?dap4.ce=/URI_GSO-Dock{Time;Depth}|Time<35234.01"

or encoded:

http://test.opendap.org/opendap/hyrax/data/ff/gsodock.dat.dap?dap4.ce=/URI_GSO-Dock%7BTime%3BDepth%7D%7CTime%3C35234.01

What do I get?

I get a correctly constrained DMR, but the serialized data has ~ 40 rows, way more than the expected 2.

The following is the CSV of the response (adding .csv to the url before the ? parameter)

Dataset: gsodock.dat
/URI_GSO-Dock.Time, /URI_GSO-Dock.Depth
35234.0078, 1.95
4.80000020565093, 21
2.00000048917718, 337.5
-6.55360316485167, 7.03763
0.110000029411098, 18.08
2048.00052068226, 1.86136e-19
1228.80005258942, 20.3
2.00000048892107, 270
8.27887769825157e-153, 7.03763
0.0287500061606816, 18.05
32768.0083309472, nan
19.2000008217692, 19.9
0.00781250191021172, 315
0.155000001601737, 18.47
5.30498947741318e-315, 765.3
8.0000019367151, 19.3
32768.0080070496, 45
-6.5536013081437, 7.03763
2.87999964415807, 17.91
25.6000099773631, 21
8.27887778389724e-153, 7.03763
2.32000017821569, 18.11
1.2000000513969, 22.5
0.0799999984166828, 19.44
14.4000034630485, 21.8
2048.0005010128, 45
-6.55360131582711, 7.03764
0.053750015897642, 19.74
0.125000030268362, 20.3
512.000125163794, 67.5
8.27887773548278e-153, 7.03764
0.48000007949742, 19.84
2048.00052070878, nan
2.79999972135341, 18.7
512.000125068426, 90
3.76000071227331, 19.69
0.00781250198635348, -2.4096
0.225000054106524, 17.7
0.00781250190784704, 67.5
-6.55360127240419, 7.03764
1.17497569842504e-310, 19.29

What did I expect to get?

Dataset: gsodock.dat
/URI_GSO-Dock.Time, /URI_GSO-Dock.Depth
35234, 1.95
35234.0078, 1.89

NOTE: From all the tests I have done, the first row seems always correct, but everything after seems corrupted

Metadata

Metadata

Labels

bugdap4Work related to DAP4 support

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions