[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[THREDDS #GHR-456072]: nullPointerException in when accessing 4.3.15 GRIB featureCollection's



Hi Dan:

OK, heres the issues im seeing so far:

1) A PermGen error in serverStartup.log

2013-01-16T15:54:56.828-0500 [      2553][        ] 
org.springframework.web.servlet.DispatcherServlet: Context initialization 

failed
org.springframework.beans.factory.BeanCreationException: Error creating bean 
with name 'datasetCollection' defined in 

ServletContext resource [/WEB-INF/radarServer-servlet.xml]: Initialization of 
bean failed; nested exception is 

java.lang.OutOfMemoryError: PermGen space

  1. restart tomcat and see if you get it. 
  2. If yes, then check your Java options when starting up tomcat. Try adding 
"-XX:MaxPermSize=128m" . Be sure to restart tomcat.

2) in threddsServlet.log, using DiskCache2 used in 

        <GribIndex>
                <alwaysUse>true</alwaysUse>
                
<dir>/home/tomcat/tomcat-main.4.3.14/content/thredds/cache/GribIndex</dir>
                <policy>nestedDirectory</policy>
                <scour>48 hours</scour>
                <maxAge>90 days</maxAge>
        </GribIndex>

2013-01-16T15:55:06.533 -0500 [     12258][       7] WARN  - 
ucar.nc2.util.DiskCache2 - Cant create directories for file 

/home/tomcat/tomcat-main.4.3.14/content/thredds/cache/GribIndex/global/nomads/nexus/gfsanl

this appears to be spurious message, as Im not checking if dir already exists. 
now fixed in 4.3.16.

3) in featureCollectionScan.log:

[2013-01-16T15:55:04.946-0500] DEBUG thredds.inventory.CollectionUpdater: 
Update for GFSANL feature collection test trigger = 

startup.GFSANL feature collection test
[2013-01-16T15:55:19.093-0500] ERROR thredds.inventory.CollectionUpdater: 
UpdateCollectionJob.execute failed
java.lang.NullPointerException
        at 
thredds.filesystem.ControllerOS$Traversal.<init>(ControllerOS.java:245)
        at 
thredds.filesystem.ControllerOS$MFileIteratorAll.getNextIterator(ControllerOS.java:218)
        at 
thredds.filesystem.ControllerOS$MFileIteratorAll.getNextIterator(ControllerOS.java:224)
        at 
thredds.filesystem.ControllerOS$MFileIteratorAll.getNextIterator(ControllerOS.java:224)
        at 
thredds.filesystem.ControllerOS$MFileIteratorAll.hasNext(ControllerOS.java:196)
        at 
thredds.filesystem.ControllerOS$FilteredIterator.nextFilteredFile(ControllerOS.java:137)
        at 
thredds.filesystem.ControllerOS$FilteredIterator.hasNext(ControllerOS.java:119)
        at 
thredds.inventory.MFileCollectionManager.reallyScan(MFileCollectionManager.java:517)
        at 
thredds.inventory.MFileCollectionManager.scanFirstTime(MFileCollectionManager.java:478)
        at 
thredds.inventory.MFileCollectionManager.scan(MFileCollectionManager.java:361)
        at 
thredds.inventory.CollectionUpdater$UpdateCollectionJob.execute(CollectionUpdater.java:281)
        at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
        at 
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:557)

ControllerOS.java:245

      for (File f : dir.listFiles()) {

So the dir is passed in as null. How is that happening? 


4) On first access

2013-01-16T15:55:06.525 -0500 [     12250][       7] INFO  - threddsServlet - 
Remote host: 127.0.0.1 - Request: "GET 

/thredds/catalog/gribFC/gfsanlfc/catalog.html HTTP/1.1"

2013-01-16T15:55:33.820 -0500 [     39545][       7] ERROR - 
thredds.server.catalogservice.LocalCatalogServiceController - 

handleRequestInternal(): Problem handling request.

 <featureCollection name="GFSANL feature collection test"
                     path="gribFC/gfsanlfc"
                     harvest="true"
                     featureType="GRIB">

   <collection
        spec="/global/nomads/nexus/gfsanl/**/gfsanl_3_.*\.grb$"
        timePartition="1 day"
        dateFormatMark="#gfsanl_3_#yyyyMMdd_HHmm#_000.grb#"
        />

    <update startup="true" rescan="3 * * * * ? *" trigger="allow"/>
    <gribConfig datasetTypes="collection Files"/>

  </featureCollection>

investigating


5)

dont scour your grib indexes.

change this 

        <GribIndex>
                <alwaysUse>true</alwaysUse>
                
<dir>/home/tomcat/tomcat-main.4.3.14/content/thredds/cache/GribIndex</dir>
                <policy>nestedDirectory</policy>
                <scour>48 hours</scour>
                <maxAge>90 days</maxAge>
        </GribIndex>

to

        <GribIndex>
                <alwaysUse>true</alwaysUse>
                
<dir>/home/tomcat/tomcat-main.4.3.14/content/thredds/cache/GribIndex</dir>
                <policy>nestedDirectory</policy>
        </GribIndex>

6)

change

        dateFormatMark="#gfsanl_3_#yyyyMMdd_HHmm#_000.grb#"


to

        dateFormatMark="#gfsanl_3_#yyyyMMdd_HHmm"

7)

change 

    <gribConfig datasetTypes="collection Files"/>

to

    <gribConfig datasetTypes="Best Latest Files"/>


8) Im seeing a bunch of errors for time partitioned grib1 files. so i will have 
to give you a new war with bugs fixed tommorrow



Ticket Details
===================
Ticket ID: GHR-456072
Department: Support THREDDS
Priority: Critical
Status: Open


NOTE: All email exchanges with Unidata User Support are recorded in the Unidata inquiry tracking system and then made publicly available through the web. If you do not want to have your interactions made available in this way, you must let us know in each email you send to us.