[Geoserver-devel] adding an extension for gdal extension

Hi all,

Currently we don't have an extension module for gdal. We simply bundle it at release time. I think it would be nice to have it work like the other extensions do and activate it via profile.

Any objections to adding one?

-Justin

--
Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.

Justin Deoliveira ha scritto:

Hi all,

Currently we don't have an extension module for gdal. We simply bundle it at release time. I think it would be nice to have it work like the other extensions do and activate it via profile.

Any objections to adding one?

None in principle, on the contrary, not sure it can be done in practice thought.

The reason we don't have a GDAL extension atm is that the image mosaic
plugin is carrying over the GDAL dependencies in core, and I think
it might not work properly if they are not around (but I'm not sure,
Simone/Daniele will correct me).

The reason I've not complained about this (because, yes, it dodged the
usual module graduation process, so there was actually something to
complain about) is basically because the GDAL support
lays dormant up until you install the native libraries and make
them available to the JVM. That's quite close to having to install
a normal extensions, just that you' don't have to modify GeoServer,
but the runtime instead.

Opinions?

Cheers
Andrea

--
Andrea Aime
OpenGeo - http://opengeo.org
Expert service straight from the developers.

Andrea Aime wrote:

Justin Deoliveira ha scritto:

Hi all,

Currently we don't have an extension module for gdal. We simply bundle it at release time. I think it would be nice to have it work like the other extensions do and activate it via profile.

Any objections to adding one?

None in principle, on the contrary, not sure it can be done in practice thought.

The reason we don't have a GDAL extension atm is that the image mosaic
plugin is carrying over the GDAL dependencies in core, and I think
it might not work properly if they are not around (but I'm not sure,
Simone/Daniele will correct me).

I don't quite understand this part. So the gdal extension (which drags in gt-imageio-ext and a bunch of imageio-ext-gdal* jars) requires also that the gt-imagemosaic module be around as well?

The reason I've not complained about this (because, yes, it dodged the
usual module graduation process, so there was actually something to
complain about) is basically because the GDAL support
lays dormant up until you install the native libraries and make
them available to the JVM. That's quite close to having to install
a normal extensions, just that you' don't have to modify GeoServer,
but the runtime instead.

Right. So you have to have the the native libs around regardless. So coudl this still not work the same way? First install the native gdal libs and make available to the JVM. And then engage the gdal extension via profile? Or am I missing something?

Opinions?

Cheers
Andrea

--
Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.

Justin Deoliveira ha scritto:

Andrea Aime wrote:

Justin Deoliveira ha scritto:

Hi all,

Currently we don't have an extension module for gdal. We simply bundle it at release time. I think it would be nice to have it work like the other extensions do and activate it via profile.

Any objections to adding one?

None in principle, on the contrary, not sure it can be done in practice thought.

The reason we don't have a GDAL extension atm is that the image mosaic
plugin is carrying over the GDAL dependencies in core, and I think
it might not work properly if they are not around (but I'm not sure,
Simone/Daniele will correct me).

I don't quite understand this part. So the gdal extension (which drags in gt-imageio-ext and a bunch of imageio-ext-gdal* jars) requires also that the gt-imagemosaic module be around as well?

The other way around. gt-imagemosaic needs gt-imageio-ext

The reason I've not complained about this (because, yes, it dodged the
usual module graduation process, so there was actually something to
complain about) is basically because the GDAL support
lays dormant up until you install the native libraries and make
them available to the JVM. That's quite close to having to install
a normal extensions, just that you' don't have to modify GeoServer,
but the runtime instead.

Right. So you have to have the the native libs around regardless. So coudl this still not work the same way? First install the native gdal libs and make available to the JVM. And then engage the gdal extension via profile? Or am I missing something?

What I'm saying is that the jars are already there in core, and we
have been shipping them since 1.7.something. You don't need a profile
as things stand today.

aaime@anonymised.com:~/devel/gs2.0.x/src/wms$ mvn dependency:tree -o
[INFO]
NOTE: Maven is executing in offline mode. Any artifacts not already in your local
repository will be inaccessible.

[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'dependency'.
[INFO] ------------------------------------------------------------------------
[INFO] Building Web Map Service Module
[INFO] task-segment: [dependency:tree]
[INFO] ------------------------------------------------------------------------
[INFO] [dependency:tree {execution: default-cli}]
[INFO] org.geoserver:wms:jar:2.0.1-SNAPSHOT
[INFO] +- org.geoserver:main:jar:2.0.1-SNAPSHOT:compile
[INFO] | +- org.geoserver:ows:jar:2.0.1-SNAPSHOT:compile
[INFO] | | +- org.acegisecurity:acegi-security:jar:1.0.7:compile
[INFO] | | | \- org.springframework:spring-jdbc:jar:2.5.5:compile (version managed from 1.2.9)
[INFO] | | | \- org.springframework:spring-tx:jar:2.5.5:compile
[INFO] | | +- commons-lang:commons-lang:jar:2.1:compile
[INFO] | | +- org.geoserver:platform:jar:2.0.1-SNAPSHOT:compile
[INFO] | | +- org.geotools.ogc:net.opengis.ows:jar:2.6-SNAPSHOT:compile
[INFO] | | | \- org.geotools.ogc:org.w3.xlink:jar:2.6-SNAPSHOT:compile
[INFO] | | +- org.geotools.xsd:gt-xsd-ows:jar:2.6-SNAPSHOT:compile
[INFO] | | \- org.geotools.xsd:gt-xsd-core:jar:2.6-SNAPSHOT:compile
[INFO] | | +- picocontainer:picocontainer:jar:1.2:compile
[INFO] | | +- xml-apis:xml-apis-xerces:jar:2.7.1:compile
[INFO] | | +- commons-jxpath:commons-jxpath:jar:1.2:compile
[INFO] | | | \- ant:ant-optional:jar:1.5.1:compile
...

[INFO] | \- org.geotools:gt-imagemosaic:jar:2.6-SNAPSHOT:compile
[INFO] | \- org.geotools:gt-imageio-ext-gdal:jar:2.6-SNAPSHOT:compile
[INFO] | +- it.geosolutions.imageio-ext:imageio-ext-gdalmrsid:jar:1.0.5:compile
[INFO] | | \- it.geosolutions.imageio-ext:imageio-ext-gdalframework:jar:1.0.5:compile
[INFO] | | +- it.geosolutions.imageio-ext:imageio-ext-gdal-bindings:jar:1.4.5b:compile
[INFO] | | \- it.geosolutions.imageio-ext:imageio-ext-geocore:jar:1.0.5:compile
[INFO] | +- it.geosolutions.imageio-ext:imageio-ext-gdalecw:jar:1.0.5:compile
[INFO] | +- it.geosolutions.imageio-ext:imageio-ext-gdaldted:jar:1.0.5:compile
[INFO] | +- it.geosolutions.imageio-ext:imageio-ext-gdalkakadujp2:jar:1.0.5:compile
[INFO] | +- it.geosolutions.imageio-ext:imageio-ext-gdalmrsidjp2:jar:1.0.5:compile
[INFO] | +- it.geosolutions.imageio-ext:imageio-ext-gdalecwjp2:jar:1.0.5:compile
[INFO] | +- it.geosolutions.imageio-ext:imageio-ext-gdalehdr:jar:1.0.5:compile
[INFO] | +- it.geosolutions.imageio-ext:imageio-ext-gdalerdasimg:jar:1.0.5:compile
[INFO] | +- it.geosolutions.imageio-ext:imageio-ext-gdalnitf:jar:1.0.5:compile
[INFO] | \- it.geosolutions.imageio-ext:imageio-ext-imagereadmt:jar:1.0.5:compile
...

See the above.

Cheers
Andrea

--
Andrea Aime
OpenGeo - http://opengeo.org
Expert service straight from the developers.

Ah ok, thanks for helping me understand. So shipping a gdal extension indeed seems pointless? Shall we just simply remove it? For 2.0 one was built.

Andrea Aime wrote:

Justin Deoliveira ha scritto:

Andrea Aime wrote:

Justin Deoliveira ha scritto:

Hi all,

Currently we don't have an extension module for gdal. We simply bundle it at release time. I think it would be nice to have it work like the other extensions do and activate it via profile.

Any objections to adding one?

None in principle, on the contrary, not sure it can be done in practice thought.

The reason we don't have a GDAL extension atm is that the image mosaic
plugin is carrying over the GDAL dependencies in core, and I think
it might not work properly if they are not around (but I'm not sure,
Simone/Daniele will correct me).

I don't quite understand this part. So the gdal extension (which drags in gt-imageio-ext and a bunch of imageio-ext-gdal* jars) requires also that the gt-imagemosaic module be around as well?

The other way around. gt-imagemosaic needs gt-imageio-ext

The reason I've not complained about this (because, yes, it dodged the
usual module graduation process, so there was actually something to
complain about) is basically because the GDAL support
lays dormant up until you install the native libraries and make
them available to the JVM. That's quite close to having to install
a normal extensions, just that you' don't have to modify GeoServer,
but the runtime instead.

Right. So you have to have the the native libs around regardless. So coudl this still not work the same way? First install the native gdal libs and make available to the JVM. And then engage the gdal extension via profile? Or am I missing something?

What I'm saying is that the jars are already there in core, and we
have been shipping them since 1.7.something. You don't need a profile
as things stand today.

aaime@anonymised.com:~/devel/gs2.0.x/src/wms$ mvn dependency:tree -o
[INFO]
NOTE: Maven is executing in offline mode. Any artifacts not already in your local
repository will be inaccessible.

[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'dependency'.
[INFO] ------------------------------------------------------------------------
[INFO] Building Web Map Service Module
[INFO] task-segment: [dependency:tree]
[INFO] ------------------------------------------------------------------------
[INFO] [dependency:tree {execution: default-cli}]
[INFO] org.geoserver:wms:jar:2.0.1-SNAPSHOT
[INFO] +- org.geoserver:main:jar:2.0.1-SNAPSHOT:compile
[INFO] | +- org.geoserver:ows:jar:2.0.1-SNAPSHOT:compile
[INFO] | | +- org.acegisecurity:acegi-security:jar:1.0.7:compile
[INFO] | | | \- org.springframework:spring-jdbc:jar:2.5.5:compile (version managed from 1.2.9)
[INFO] | | | \- org.springframework:spring-tx:jar:2.5.5:compile
[INFO] | | +- commons-lang:commons-lang:jar:2.1:compile
[INFO] | | +- org.geoserver:platform:jar:2.0.1-SNAPSHOT:compile
[INFO] | | +- org.geotools.ogc:net.opengis.ows:jar:2.6-SNAPSHOT:compile
[INFO] | | | \- org.geotools.ogc:org.w3.xlink:jar:2.6-SNAPSHOT:compile
[INFO] | | +- org.geotools.xsd:gt-xsd-ows:jar:2.6-SNAPSHOT:compile
[INFO] | | \- org.geotools.xsd:gt-xsd-core:jar:2.6-SNAPSHOT:compile
[INFO] | | +- picocontainer:picocontainer:jar:1.2:compile
[INFO] | | +- xml-apis:xml-apis-xerces:jar:2.7.1:compile
[INFO] | | +- commons-jxpath:commons-jxpath:jar:1.2:compile
[INFO] | | | \- ant:ant-optional:jar:1.5.1:compile
...

[INFO] | \- org.geotools:gt-imagemosaic:jar:2.6-SNAPSHOT:compile
[INFO] | \- org.geotools:gt-imageio-ext-gdal:jar:2.6-SNAPSHOT:compile
[INFO] | +- it.geosolutions.imageio-ext:imageio-ext-gdalmrsid:jar:1.0.5:compile
[INFO] | | \- it.geosolutions.imageio-ext:imageio-ext-gdalframework:jar:1.0.5:compile
[INFO] | | +- it.geosolutions.imageio-ext:imageio-ext-gdal-bindings:jar:1.4.5b:compile
[INFO] | | \- it.geosolutions.imageio-ext:imageio-ext-geocore:jar:1.0.5:compile
[INFO] | +- it.geosolutions.imageio-ext:imageio-ext-gdalecw:jar:1.0.5:compile
[INFO] | +- it.geosolutions.imageio-ext:imageio-ext-gdaldted:jar:1.0.5:compile
[INFO] | +- it.geosolutions.imageio-ext:imageio-ext-gdalkakadujp2:jar:1.0.5:compile
[INFO] | +- it.geosolutions.imageio-ext:imageio-ext-gdalmrsidjp2:jar:1.0.5:compile
[INFO] | +- it.geosolutions.imageio-ext:imageio-ext-gdalecwjp2:jar:1.0.5:compile
[INFO] | +- it.geosolutions.imageio-ext:imageio-ext-gdalehdr:jar:1.0.5:compile
[INFO] | +- it.geosolutions.imageio-ext:imageio-ext-gdalerdasimg:jar:1.0.5:compile
[INFO] | +- it.geosolutions.imageio-ext:imageio-ext-gdalnitf:jar:1.0.5:compile
[INFO] | \- it.geosolutions.imageio-ext:imageio-ext-imagereadmt:jar:1.0.5:compile
...

See the above.

Cheers
Andrea

--
Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.

Justin Deoliveira ha scritto:

Ah ok, thanks for helping me understand. So shipping a gdal extension indeed seems pointless? Shall we just simply remove it? For 2.0 one was built.

Yeah, I believe it's pointless. Simone, Daniele, anything we're missing?

Cheers
Andrea

--
Andrea Aime
OpenGeo - http://opengeo.org
Expert service straight from the developers.