HDF5 I/O broken with integer variables
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
octave (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Wily |
Fix Released
|
Undecided
|
Unassigned | ||
Xenial |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
As described in the upstream report [1], HDF5 I/O using load/save is broken in 4.0.0. This is a regression with the potential for data loss (almost happened to us!).
The bug is fixed upstream with [2], and I plan on asking for an SRU nomination.
[Test Case]
1. Extract the attached .tar.gz, which contains test_hdf5_save.m and test_hdf5_load.m from the upstream report.
2. Run:
2.1. On Octave 3.8:
octave:1> test_hdf5_save
x = 123456789
2.2. On Octave 4.0.0:
octave:1> test_hdf5_load
x = 255
3. Run (the other way around):
3.1. On Octave 4.0.0:
octave:2> test_hdf5_save
x = 123456789
3.2. Octave 3.8:
octave:1> test_hdf5_load
x = 21
As you can see, in both cases the result is wrong.
With the updated package installed (see attached debdiff), the result is instead
octave:1> test_hdf5_save
x = 123456789
octave:1> test_hdf5_load
x = 123456789
in both directions (3.8 -> 4.0.0 and 4.0.0 -> 3.8), as expected.
[Regression Potential]
There's really no risk of any regressions. The fix is small and self contained, and the behavior before the fix is completely wrong and could result in data loss.
[1] http://
[2] http://
description: | updated |
description: | updated |
Changed in octave (Ubuntu): | |
status: | New → Fix Released |
tags: |
added: verification-done-xenial verification-needed removed: verification-done |
Add test case