[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