NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.
To learn about what's going on, see About the Archive Site.
Hi Doug, This may be the bug that Randall Simons uncovered in: http://www.unidata.ucar.edu/staff/russ/visad/msg02789.html This would be consistent with Steve's theory. The fix isn't yet on our ftp server, but is in the attached fix.jar file. Good luck, Bill Doug Lindholm wrote: > > I'm getting the following exception while contructing my display with > several fields with different time domains: > > visad.VisADException: Cannot merge sets > at visad.Set.merge1DSets(Set.java:376) > at visad.DataShadow.setAnimationSampling(DataShadow.java:72) > at visad.SimpleSet.setAnimationSampling(SimpleSet.java:107) > at visad.SampledSet.computeRanges(SampledSet.java:208) > at visad.FieldImpl.computeRanges(FieldImpl.java:2708) > at visad.DataRenderer.computeRanges(DataRenderer.java:278) > at visad.DataRenderer.prepareAction(DataRenderer.java:243) > at visad.DisplayRenderer.prepareAction(DisplayRenderer.java:633) > at visad.DisplayImpl.doAction(DisplayImpl.java:1383) > at visad.ActionImpl.run(ActionImpl.java:238) > at visad.util.ThreadPool$ThreadMinnow.run(ThreadPool.java:95) > visad.VisADError: Action.run: visad.VisADException: Cannot merge sets > at visad.ActionImpl.run(ActionImpl.java:271) > at visad.util.ThreadPool$ThreadMinnow.run(ThreadPool.java:95) > > It is not consistant (and neither is my data) so I'm wondering if it is > due to the nature of my data. I've looked at the relevant bit of Set > code: > > // find indices of set not covered by this > int set_length = set.getLength(); > boolean[] set_indices = new boolean[set_length]; > for (int i=0; i<set_length; i++) set_indices[i] = true; > if (set_length > 1) { > // set indices for values in this > int[] test_indices = set.doubleToIndex(values); > try { > for (int i=0; i<length; i++) { > if (test_indices[i] > -1) set_indices[test_indices[i]] > false; > } > } catch (ArrayIndexOutOfBoundsException aioobe) { > throw new VisADException("Cannot merge sets"); > } > } > > but don't quite understand what conditions would lead to this exception. > > Let me know if there is something obvious, otherwise I'll try to make a > reproducible case for debugging. > > Thanks, > Doug > > -- > *----------------------------------------------------------------------* > | Doug Lindholm, Software Engineer | E-mail: lind@xxxxxxxx | > | Research Applications Program | Phone: 303-497-8374 | > | National Center for Atmospheric Research | | > | P.O. Box 3000 | There's no place | > | Boulder, Colorado 80307-3000 | like $HOME | > *----------------------------------------------------------------------* -- ---------------------------------------------------------- Bill Hibbard, SSEC, 1225 W. Dayton St., Madison, WI 53706 hibbard@xxxxxxxxxxxxxxxxx 608-263-4427 fax: 608-263-6738 http://www.ssec.wisc.edu/~billh/vis.html
Attachment:
fix.jar
Description: application/java-archive
visad
archives: