[GeoNetwork-users] PostGIS: geometry_columns table

Hello again,

Specifying a bit more my install:
. Ubuntu 12.04 server
. GeoNetowrks 2.6.4 (running on Jetty)
. PostgreSQL 9.1
. PostGIS 2.0

I created a PostGIS enabled database in Postgres and ran the create
and data scripts bundled together with GeoNetwork. Then I configured
jetty to access this database. When I start up jetty I'm getting the
error detailed below, a function named "asterix" is not found. What is
exactly wrong here? Did one of the create scripts failed? I didn't get
any error messages on these.

Thank you,

Luís

2013-01-31 17:08:39,084 ERROR [jeeves.engine] - Stack :
java.util.NoSuchElementException: Could not aquire
feature:org.geotools.data.DataSourceException: Error$
        at org.geotools.data.store.NoContentIterator.next(NoContentIterator.java:56)
        at org.geotools.data.store.NoContentIterator.next(NoContentIterator.java:41)
        at org.geotools.feature.collection.DelegateFeatureIterator.next(DelegateFeatureIterator.java:58)
        at org.fao.geonet.kernel.search.spatial.SpatialIndexWriter.populateIndex(SpatialIndexWriter.java:346)
        at org.fao.geonet.kernel.search.spatial.SpatialIndexWriter.getIndex(SpatialIndexWriter.java:217)
        at org.fao.geonet.kernel.search.SearchManager$Spatial.<init>(SearchManager.java:1139)
        at org.fao.geonet.kernel.search.SearchManager.<init>(SearchManager.java:266)
        at org.fao.geonet.Geonetwork.start(Geonetwork.java:205)
        at jeeves.server.JeevesEngine.initAppHandler(JeevesEngine.java:475)
        at jeeves.server.JeevesEngine.init(JeevesEngine.java:155)
        at jeeves.server.sources.http.JeevesServlet.init(JeevesServlet.java:74)
        at javax.servlet.GenericServlet.init(GenericServlet.java:241)
        at org.mortbay.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:431)
        at org.mortbay.jetty.servlet.ServletHolder.doStart(ServletHolder.java:263)
        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
        at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:643)
        at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)
        at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1234)
        at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517)
        at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:460)
        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
        at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
        at org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156)
        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
        at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
        at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
        at org.mortbay.jetty.Server.doStart(Server.java:222)
        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
        at org.mortbay.xml.XmlConfiguration.main(XmlConfiguration.java:985)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:601)
        at org.mortbay.start.Main.invokeMain(Main.java:194)
        at org.mortbay.start.Main.start(Main.java:523)
        at org.mortbay.start.Main.main(Main.java:119)
Caused by: org.geotools.data.DataSourceException: Error Performing SQL
query: SELECT "fid", "id", asText("the_geom") FROM
"public"."spatialindex"
        at org.geotools.data.jdbc.JDBC1DataStore.executeQuery(JDBC1DataStore.java:936)
        at org.geotools.data.jdbc.JDBC1DataStore.getFeatureReader(JDBC1DataStore.java:653)
        at org.geotools.data.jdbc.JDBCFeatureCollection.reader(JDBCFeatureCollection.java:90)
        at org.geotools.data.store.DataFeatureCollection.openIterator(DataFeatureCollection.java:224)
        at org.geotools.data.store.DataFeatureCollection.iterator(DataFeatureCollection.java:194)
        at org.geotools.data.store.DataFeatureCollection.features(DataFeatureCollection.java:183)
        at org.fao.geonet.kernel.search.spatial.SpatialIndexWriter.populateIndex(SpatialIndexWriter.java:343)
        ... 33 more
Caused by: org.postgresql.util.PSQLException: ERROR: function
astext(geometry) does not exist
  Hint: No function matches the given name and argument types. You
might need to add explicit type casts.
  Position: 21
        at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2062)
        at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1795)
        at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257)
        at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:479)
        at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:353)
        at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:252)
        at org.apache.commons.dbcp.DelegatingStatement.executeQuery(DelegatingStatement.java:208)
        at org.geotools.data.jdbc.JDBC1DataStore.executeQuery(JDBC1DataStore.java:925)
        ... 39 more

Hi Luis,

Could be the function astext(geometry) is a deprecated one that GN still
uses but it's been deprecated in PostGIS 2.0. If you run

PostgreSQL\9.1\share\contrib\postgis-2.0\legacy.sql

on your GN db it should add back all the deprecated fuctions
and fix the issue.

HTH
Andrew

----- Original Message ----- From: "Luís de Sousa" <luis.a.de.sousa@anonymised.com>
To: <geonetwork-users@lists.sourceforge.net>
Sent: Friday, February 01, 2013 3:14 AM
Subject: [GeoNetwork-users] PostGIS: geometry_columns table

Hello again,

Specifying a bit more my install:
. Ubuntu 12.04 server
. GeoNetowrks 2.6.4 (running on Jetty)
. PostgreSQL 9.1
. PostGIS 2.0

I created a PostGIS enabled database in Postgres and ran the create
and data scripts bundled together with GeoNetwork. Then I configured
jetty to access this database. When I start up jetty I'm getting the
error detailed below, a function named "asterix" is not found. What is
exactly wrong here? Did one of the create scripts failed? I didn't get
any error messages on these.

Thank you,

Luís

2013-01-31 17:08:39,084 ERROR [jeeves.engine] - Stack :
java.util.NoSuchElementException: Could not aquire
feature:org.geotools.data.DataSourceException: Error$
       at org.geotools.data.store.NoContentIterator.next(NoContentIterator.java:56)
       at org.geotools.data.store.NoContentIterator.next(NoContentIterator.java:41)
       at org.geotools.feature.collection.DelegateFeatureIterator.next(DelegateFeatureIterator.java:58)
       at org.fao.geonet.kernel.search.spatial.SpatialIndexWriter.populateIndex(SpatialIndexWriter.java:346)
       at org.fao.geonet.kernel.search.spatial.SpatialIndexWriter.getIndex(SpatialIndexWriter.java:217)
       at org.fao.geonet.kernel.search.SearchManager$Spatial.<init>(SearchManager.java:1139)
       at org.fao.geonet.kernel.search.SearchManager.<init>(SearchManager.java:266)
       at org.fao.geonet.Geonetwork.start(Geonetwork.java:205)
       at jeeves.server.JeevesEngine.initAppHandler(JeevesEngine.java:475)
       at jeeves.server.JeevesEngine.init(JeevesEngine.java:155)
       at jeeves.server.sources.http.JeevesServlet.init(JeevesServlet.java:74)
       at javax.servlet.GenericServlet.init(GenericServlet.java:241)
       at org.mortbay.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:431)
       at org.mortbay.jetty.servlet.ServletHolder.doStart(ServletHolder.java:263)
       at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
       at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:643)
       at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)
       at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1234)
       at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517)
       at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:460)
       at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
       at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
       at org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156)
       at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
       at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
       at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
       at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
       at org.mortbay.jetty.Server.doStart(Server.java:222)
       at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
       at org.mortbay.xml.XmlConfiguration.main(XmlConfiguration.java:985)
       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
       at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
       at java.lang.reflect.Method.invoke(Method.java:601)
       at org.mortbay.start.Main.invokeMain(Main.java:194)
       at org.mortbay.start.Main.start(Main.java:523)
       at org.mortbay.start.Main.main(Main.java:119)
Caused by: org.geotools.data.DataSourceException: Error Performing SQL
query: SELECT "fid", "id", asText("the_geom") FROM
"public"."spatialindex"
       at org.geotools.data.jdbc.JDBC1DataStore.executeQuery(JDBC1DataStore.java:936)
       at org.geotools.data.jdbc.JDBC1DataStore.getFeatureReader(JDBC1DataStore.java:653)
       at org.geotools.data.jdbc.JDBCFeatureCollection.reader(JDBCFeatureCollection.java:90)
       at org.geotools.data.store.DataFeatureCollection.openIterator(DataFeatureCollection.java:224)
       at org.geotools.data.store.DataFeatureCollection.iterator(DataFeatureCollection.java:194)
       at org.geotools.data.store.DataFeatureCollection.features(DataFeatureCollection.java:183)
       at org.fao.geonet.kernel.search.spatial.SpatialIndexWriter.populateIndex(SpatialIndexWriter.java:343)
       ... 33 more
Caused by: org.postgresql.util.PSQLException: ERROR: function
astext(geometry) does not exist
Hint: No function matches the given name and argument types. You
might need to add explicit type casts.
Position: 21
       at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2062)
       at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1795)
       at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257)
       at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:479)
       at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:353)
       at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:252)
       at org.apache.commons.dbcp.DelegatingStatement.executeQuery(DelegatingStatement.java:208)
       at org.geotools.data.jdbc.JDBC1DataStore.executeQuery(JDBC1DataStore.java:925)
       ... 39 more

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_jan
_______________________________________________
GeoNetwork-users mailing list
GeoNetwork-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geonetwork-users
GeoNetwork OpenSource is maintained at http://sourceforge.net/projects/geonetwork

Thank you Andrew, that did it.

Regards,

Luís

On 1 February 2013 02:53, andrew walsh <awalsh@anonymised.com> wrote:

Hi Luis,

Could be the function astext(geometry) is a deprecated one that GN still
uses but it's been deprecated in PostGIS 2.0. If you run

PostgreSQL\9.1\share\contrib\postgis-2.0\legacy.sql

on your GN db it should add back all the deprecated fuctions
and fix the issue.

HTH
Andrew