[Geoserver-users] Mosaic of 842 geotiffs

Hello,

I try to create a mosaic of 842 of files. The files are originally tif + tfw
pairs, which I transform in geotiff and create 10 levels of overviews for,
using gdaladdo. Then I make a mosaic of all the files using gdaltindex.

Maybe a first problem : if I check the pixel size values of my geotiffs in
the lines GeoTransform with gdalinfo, I see values going from 0.666648 to
0.666680, average is 0.666665. The x value is not necessarily the same as
the y value. In my .properties file, I set 0.666666,0.666666 as my first
level. Is there a problem with the different values ?

When I load the layer, I see in the logs that 797 mosaic images are loaded,
then I get a
WARN [geotools.rendering] - operation "ImageRead" requires parameter at
index 0 to be non-null.
java.lang.IllegalArgumentException: operation "ImageRead" requires parameter
at index 0 to be non-null.
        at javax.media.jai.JAI.createNS(JAI.java:1087)
        at ...
Then
DEBUG [geotools.rendering] - Style cache hit ratio: NaN , hits 0, requests 0
DEBUG [renderer.shape] - Style cache hit ratio: NaN , hits 0, requests 0
DEBUG [wms.responses] - asking delegate for write to
org.geoserver.ows.DispatcherOutputStream@anonymised.com
DEBUG [geotools.image] - Encoding input image to write out as JPEG.
DEBUG [geotools.image] - Getting a JPEG writer and configuring it.
ERROR [geoserver.ows] - java.lang.UnsatisfiedLinkError:
/opt/jdk1.6.0_11/jre/lib/amd64/libjpeg.so:
/opt/jdk1.6.0_11/jre/lib/amd64/libjpeg.so: cannot open shared object file
: Too many open files
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at ...

Any idea if the number of files or the different values of resolution might
be the reason of the problem ? Or do I have a problem in the creation of my
geotiffs ?

Alain
--
View this message in context: http://www.nabble.com/Mosaic-of-842-geotiffs-tp21914665p21914665.html
Sent from the GeoServer - User mailing list archive at Nabble.com.

Ciao Alain,
some information for you:

1> make sure to follow this
http://geoserver.org/display/GEOSDOC/Using+the+ImageMosaic+plugin
2> you cannot use a simple mosaic with so many files, unless you hide
it at lower resolutions.
Basically the mosaicplugin use deferred loading to load metadata of
each tile and place them at the right place using the best resolution.
When you zoom out a lot, with large mosaics like your (thousands of
files) you end up having many files open which cause your sisop to run
out of file descriptors. A solution is to use a pyramid instead of a
mosaic with inner overviews otherwise we would have to add a parameter
to the mosaic reader to avoid using the deferred loading, but this
would require some coding.

Simone.
-------------------------------------------------------
Ing. Simone Giannecchini
GeoSolutions S.A.S.
Owner - Software Engineer
Via Carignoni 51
55041 Camaiore (LU)
Italy

phone: +39 0584983027
fax: +39 0584983027
mob: +39 333 8128928

http://www.geo-solutions.it
http://simboss.blogspot.com/
http://www.linkedin.com/in/simonegiannecchini

-------------------------------------------------------

On Mon, Feb 9, 2009 at 4:04 PM, acangi <aca@anonymised.com> wrote:

Hello,

I try to create a mosaic of 842 of files. The files are originally tif + tfw
pairs, which I transform in geotiff and create 10 levels of overviews for,
using gdaladdo. Then I make a mosaic of all the files using gdaltindex.

Maybe a first problem : if I check the pixel size values of my geotiffs in
the lines GeoTransform with gdalinfo, I see values going from 0.666648 to
0.666680, average is 0.666665. The x value is not necessarily the same as
the y value. In my .properties file, I set 0.666666,0.666666 as my first
level. Is there a problem with the different values ?

When I load the layer, I see in the logs that 797 mosaic images are loaded,
then I get a
WARN [geotools.rendering] - operation "ImageRead" requires parameter at
index 0 to be non-null.
java.lang.IllegalArgumentException: operation "ImageRead" requires parameter
at index 0 to be non-null.
       at javax.media.jai.JAI.createNS(JAI.java:1087)
       at ...
Then
DEBUG [geotools.rendering] - Style cache hit ratio: NaN , hits 0, requests 0
DEBUG [renderer.shape] - Style cache hit ratio: NaN , hits 0, requests 0
DEBUG [wms.responses] - asking delegate for write to
org.geoserver.ows.DispatcherOutputStream@anonymised.com
DEBUG [geotools.image] - Encoding input image to write out as JPEG.
DEBUG [geotools.image] - Getting a JPEG writer and configuring it.
ERROR [geoserver.ows] - java.lang.UnsatisfiedLinkError:
/opt/jdk1.6.0_11/jre/lib/amd64/libjpeg.so:
/opt/jdk1.6.0_11/jre/lib/amd64/libjpeg.so: cannot open shared object file
: Too many open files
       at java.lang.ClassLoader$NativeLibrary.load(Native Method)
       at ...

Any idea if the number of files or the different values of resolution might
be the reason of the problem ? Or do I have a problem in the creation of my
geotiffs ?

Alain
--
View this message in context: http://www.nabble.com/Mosaic-of-842-geotiffs-tp21914665p21914665.html
Sent from the GeoServer - User mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM)
software. With Adobe AIR, Ajax developers can use existing skills and code to
build responsive, highly engaging applications that combine the power of local
resources and data with the reach of the web. Download the Adobe AIR SDK and
Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com
_______________________________________________
Geoserver-users mailing list
Geoserver-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users