Hi Curtis,
I don't have an answer about the garbage collection. But the
Unidata folks have done a detailed analysis of this and made
big improvements in VisAD to reduce garbage collection, so
perhaps they can offer some insight.
Your NullPointerException is occuring in a piece of code that
I haven't looked at in six years, and no one else has ever
looked at. So there must be something quite unusual happening.
Can you cause this reliably, or is it intermitent?
Can you send me a (hopefully small) data set and instructions
for generating this Exception? Also, if it requires a VisBio
other than what's on your server, that too. Probably off the
list would be best. Thanks.
Cheers,
Bill
> Secondly, as promised in the subject line, here is a
> NullPointerException I received while animating in VisBio:
>
> java.lang.NullPointerException
> at visad.ShadowType.addIndices(ShadowType.java:329)
> at visad.ShadowTupleType.<init>(ShadowTupleType.java:78)
> at visad.ShadowRealTupleType.<init>(ShadowRealTupleType.java:71)
> at
> visad.java3d.ShadowRealTupleTypeJ3D.<init>(ShadowRealTupleTypeJ3D.java:53)
> at
> visad.java3d.RendererJ3D.makeShadowRealTupleType(RendererJ3D.java:124)
> at visad.RealTupleType.buildShadowType(RealTupleType.java:501)
> at
> visad.java3d.ShadowFunctionOrSetTypeJ3D.<init>(ShadowFunctionOrSetTypeJ3D.java:66)
> at visad.java3d.ShadowSetTypeJ3D.<init>(ShadowSetTypeJ3D.java:43)
> at visad.java3d.RendererJ3D.makeShadowSetType(RendererJ3D.java:136)
> at visad.SetType.buildShadowType(SetType.java:121)
> at visad.DataDisplayLink.prepareData(DataDisplayLink.java:258)
> at visad.DataRenderer.prepareAction(DataRenderer.java:314)
> at visad.DisplayRenderer.prepareAction(DisplayRenderer.java:844)
> at visad.DisplayImpl.doAction(DisplayImpl.java:1644)
> at visad.ActionImpl.run(ActionImpl.java:353)
> at visad.util.ThreadPool$ThreadMinnow.run(ThreadPool.java:95)
>
> Thanks,
> -Curtis
>
>