MantisBT - JANA
View Issue Details
0000220JANABugpublic2012-03-26 14:332013-01-22 13:23
davidl 
davidl 
normalminorhave not tried
resolvedfixed 
0000220: CalibDB position ordering defeated by more than 10 columns
When an ASCII file is used to hold a table for the JCalibrationFile mechanism, and column names are not specified with "#%", then column names are automatically generated like "0", "1", "2", ...

When an 11th column is added, it comes alphabetically before the column named "2" causing the columns to be placed out of order due to the underlying map storage.

The fix is to just add leading zeros to the column names.
No tags attached.
Issue History
2012-03-26 14:33davidlNew Issue
2012-03-26 19:41davidlNote Added: 0000321
2012-03-26 19:41davidlStatusnew => resolved
2012-03-26 19:41davidlResolutionopen => fixed
2012-03-26 19:41davidlAssigned To => davidl
2012-10-03 16:15davidlNote Added: 0000443
2012-10-03 16:15davidlStatusresolved => feedback
2012-10-03 16:15davidlResolutionfixed => reopened
2013-01-22 13:23davidlNote Added: 0000452
2013-01-22 13:23davidlStatusfeedback => resolved
2013-01-22 13:23davidlResolutionreopened => fixed

Notes
(0000321)
davidl   
2012-03-26 19:41   
This should be fixed in revision 932. It has not been tested, but the fix *should* be good.
(0000443)
davidl   
2012-10-03 16:15   
A conversation with Dmitry brought up this issue again. The JCalibration derived class for the CCDB will have ordering problems of a similar nature. Using a similar fix would force the CCDB to auto-generate column names with zero padding too. This starts to smell like a design limitation that is causing us to kludge the code in multiple places.

Dmitry suggested adding two new GetCalib methods to JCalibration. One to get a vector of vectors and another to get a vector of strings. This would allow more direct transport of the data without having to go through a map. It would also eliminate the re-ordering problem.

Dmitry thinks he can get around the issue at the moment by modifying the conversion script used to generate CCDB entries from the text files currently in use.
(0000452)
davidl   
2013-01-22 13:23   
This seems to have been fixed in JANA 0.6.5 with revision 1008 in the repository. Auto-generated column names should have up to 3 leading zeros making the ordering good up to 9999 values.