I was able to get postgis integration tests working, thanks for your help everyone:
- [GEOS-6883] Improvements to app schema integration tests <https://github.com/geoserver/geoserver/pull/7772> - [GEOT-7616] Postgis_Data_ref_set.sql updates for modern PostGIS releases <https://github.com/geotools/geotools/pull/4841> There remains integration tests failures (with geopackage and others), but I am going to call this a solid improvement and ask folks review the above two PRs. -- Jody Garnett On Jul 11, 2024 at 12:31:31 PM, Jody Garnett <jody.garn...@gmail.com> wrote: > Okay reporting the bug here > https://osgeo-org.atlassian.net/browse/GEOT-7616 with a pull request. > > The file Postgis_Data_ref_set.sql does not seem to be present in the > geotools codebase presently; if anyone has details history it would be good! > -- > Jody Garnett > > > On Jul 11, 2024 at 12:03:04 PM, Jody Garnett <jody.garn...@gmail.com> > wrote: > >> Niels and Andrea, >> >> I am running postgis/postgis:16-3.4 which is the latest recommended. I >> assume postgis is installed when I am using that instance. >> >> The postgis/postgis image provides tags for running Postgres with >>> PostGIS extensions installed. >>> >> >> >> *GeoTools* >> I used the same approach with ~/geotools/postgis.properties - to confirm >> I changed to match Andrea's example with the following Dockerfile. >> >> services: >> db: >> image: postgis/postgis:16-3.4 >> platform: linux/amd64 >> restart: always >> environment: >> POSTGRES_PASSWORD: 'mysecret' >> POSTGRES_USER: 'myuser' >> POSTGRES_DB: 'app-schema' >> volumes: >> - /Users/jgarnett/dev/geoserver/testing/db:/var/lib/postgresql/data >> ports: >> - 5432:5432 >> >> During startup I can see that PostGIS extension is being installed: >> >> db-1 | CREATE EXTENSION >>> >> db-1 | Loading PostGIS extensions into app-schema >>> >> >> For good measure I confirmed by running the jdbc-postgis online tests >> successfully. >> >> *GeoServer* >> >> Andrea your example used -Ponline but perhaps you just had the geotools >> build in mind. If I use the same thing as the builds server: >> >> cd src/extensions/app-schema >> mvn clean install -Papp-schema-online-test -nsu -fae >> >> Results in the following failures: >> >> [INFO] Application Schema Support ......................... SUCCESS [ >> 3.180 s] >> [INFO] Application Schema Module .......................... SUCCESS [ >> 3.175 s] >> [INFO] Application Schema Integration Test ................ FAILURE >> [02:04 min] >> [INFO] Sample DataAccess Integration Test ................. SUCCESS [ >> 3.817 s] >> [INFO] Application Schema Integration Online Test with Oracle Database >> FAILURE [ 6.723 s] >> [INFO] Application Schema Integration Online Test with Postgis Database >> SUCCESS [02:40 min] >> [INFO] Application Schema MongoDB Integration Test ........ SUCCESS [ >> 4.095 s] >> [INFO] Application Schema Solr Integration Test ........... SUCCESS [ >> 1.278 s] >> [INFO] Application Schema Indexes Integration Test ........ SUCCESS [ >> 1.467 s] >> [INFO] Application Schema Geopackage Integration Test ..... FAILURE [ >> 9.565 s] >> >> For the geoserver build can you try -Papp-schema-online-test which is >> what is used by the build server. I would like to see if you get the same >> failure as me? >> >> I am curious that Application Schema Integration Test and Application >> Schema Geopackage Integration Test fail presently. >> -- >> Jody Garnett >> >> >> On Jul 9, 2024 at 1:39:05 PM, Niels Charlier <ni...@scitus.be> wrote: >> >>> Seems you are missing the postgis extension, but I have no idea why that >>> is in the script, that is strange indeed. >>> On 09/07/2024 08:28, Jody Garnett wrote: >>> >>> Niels, >>> >>> How do you run the app-schema tests? >>> >>> >>> 1. I create a ~/.geoserver/postgis.properties with connection >>> parameters including a database name >>> 2. And then run with: >>> mvn clean install -Papp-schema-online-test >>> >>> >>> When I run I get errors such as: >>> >>> [ERROR] >>> testNoPrimaryKey(org.geoserver.test.onlineTest.WfsOnlinePostgisTest) Time >>> elapsed: 0.294 s <<< ERROR! >>> org.postgresql.util.PSQLException: >>> ERROR: function public.ndims(public.geometry) does not exist >>> Hint: No function matches the given name and argument types. You might >>> need to add explicit type casts. >>> Position: 355 >>> >>> Looking at the build server job configuration I am shocked to see this >>> is defined as part of the script: >>> >>> >>> #missing functions required for refdataset sql but removed in postgis 2.1 >>> export PGPASSWORD='' >>> psql -h localhost -p 5432 -U geotools -d geotoolstest -c 'create or >>> replace function public.ndims(g geometry) returns smallint as $$ begin >>> return public.st_ndims(g); end; $$ language plpgsql immutable strict;' >>> psql -h localhost -p 5432 -U geotools -d geotoolstest -c 'create or >>> replace function public.srid(g geometry) returns integer as $$ begin return >>> public.st_srid(g); end; $$ language plpgsql immutable strict;' >>> >>> >>> Surely that cannot be right? >>> Is defining ndims part of the app schema installation instructions? No... >>> >>> I How do you run the tests locally... >>> -- >>> Jody Garnett >>> >>> >>> On Jul 8, 2024 at 5:29:42 AM, Niels Charlier <ni...@scitus.be> wrote: >>> >>>> Hello Jody >>>> >>>> I have always run those tests locally whenever making changes that >>>> affect app-schema, not sure about Jenkins issues. >>>> >>>> Kind Regards >>>> >>>> Niels >>>> On 06/07/2024 00:43, Jody Garnett wrote: >>>> >>>> I have a PR >>>> <https://dficcfc.r.af.d.sendibt2.com/tr/cl/QnmEf4CiLzefQ8tvswpygu_mKOoVQYE_ymKm8YxI8KlC5Oky3xgemTOMFlheDxw7yfA0Ckx8oGqw94a_hRDOlVGXZewXdciN7xvD7M_rEd1R1rtu2mMm59pwZkkH2ZiMCWaeHCpmMWjPZd9E9F6M7TJtVQYL6Juaazw0CeqmAs90WSKZg5UI6sm8-3kOEC137-01Uu5tc2aY7FtDR-RwG1pkloVK2u99LweEcTF6j2KySuBjL90_-4IjweVKflwwU6cfARFQDGeH5iSioGKRuHZ7ZlMdX-73ykakFUTCQcrnS-EW> >>>> that looks at some gaps in the GeoTools feature model around validation... >>>> and Niels made the perfectly sensible recommendation to run the app-schema >>>> online tests... >>>> >>>> >>>> 1. Checking build.geoserver.org >>>> >>>> <https://dficcfc.r.af.d.sendibt2.com/tr/cl/XzwiyRYFMgufdjTffCOZKuLas1HzYo0A3G72jOEFBlOrZhk15PUdzFckDA1jFwcllUEiVQf6DKw68XxItKGLGa_2j5AP4TDPcUVDSLIaM6ZZkc1fnToljiZcp6hoYtejFQ9NY3IFWDnwTnMoyGKjIND376ahzpSRmwOuyi-qg9HKc_mfbNkdj2ZiWqCxPnIqI3RM8HSIx-C2D5RqmkXtDuQ-f-Ihutyv_OxLvVyT-j0MrOkLGFf2fr-6nKMioMiX750R24zo5Vw> >>>> the geoserver-main-app-schema-online >>>> >>>> <https://dficcfc.r.af.d.sendibt2.com/tr/cl/Ds5yMP0W1nLQwCo3m3ZabKQg8Jh23U86KCnuN506HyWCU_4ODqDvVJrIJzYbBRDZwAuXUBwR71PGYTp23w6jz_JmJtiPcq0MQTZygJYByi5KCStdM_mNHPWewpnAKJmLclqereIIZ0vgfvcNEtpqj82LW2kzfLFIpFvLJSVpK3L8sKE6Kq9c2I80ouevPJIq7lfJfNVHLgfK9fgV766Z2zy1Ky67C9bcm__h3JLGg8QycLVrCSz9SHnqqmb7T3Xh0n3NLvQjE3kM-iKcCDi8clbWOmRL7HOz2o-uC2ugxZml7bxBSUnbVUPUnUJjRQFX_fjZEPrpBXq4DznMFs1KD7p71tgFScz9> >>>> is disabled >>>> 2. Looking at the configuration it was java 8 based, so this has >>>> been disabled for some time >>>> 3. The setup has a lot of messing around to get the ojdbc7.jar to >>>> talk to oracle-db.dev.boundlessgeo.com >>>> >>>> <https://dficcfc.r.af.d.sendibt2.com/tr/cl/unOkFWXeyJmZIY8qRTRfEOWS7MGyOk4vkdzoJyUiwkcH9yRsDojjPS_a77MX248fX9iZJGLRLX_qf5Rhme4iUNeTWwPvePI2TTI46ny9WtEcprgjPVkdaKgW5yZV8sbuW4InphYTDd0l1E7xMMxaUvthsp69SyJB2DiWJ4IJiYU7u2Kgb2xPk_qYdiLx57HZKfzX2_SwJtpS5nD-ZmeJm7F5DF2VZKTj6qgTUd6HnHQnvGM9X1JvFm60YhkBoEIJfXLt7P-eHDHbvODtvxVsyQK_lQ> >>>> ... so quite a long time. >>>> >>>> >>>> Do we have an active module maintainer (or experienced developer) for >>>> application schema? >>>> >>>> Trying it out: >>>> >>>> - I do not think the steps to copy ojdbc7.jar are required any more >>>> (since such a jar is now available via maven dependency) >>>> - Changing to Java 11 and commenting out the oracle.properties test >>>> fixed and running the job shows >>>> >>>> <https://dficcfc.r.af.d.sendibt2.com/tr/cl/LfbWvC9tnFQ2Kw5ymOBeMXXeT8KmZn9PWK0NdXq52y5AYgfeX8mz06QT5ntFE-CKVt-ayEtPArTWSd2tixGSIEsOCw19g25HJNXHOpr7XEwluNq1_BUiIrzgr0flipi2EIBE8KbuuRpPJXKaGRA2Lc0Nq-UGcqd0p5tdbGWmOc5AA4-VnX7OxNt0O9ruU8yWc999jWsXXc3VeywtedDPUsdFmae6wzsRP-4lxATCFNfq7_TZn2NA9YJxiX_sa-razs2GEF-J8k9jk_XwnjqgwFLRgTL0v7uOSSiOdKI3ZO1kYTVxFfvfGfeD35FNb9SHic25FOFs2A6n63ff920JMw9Ed0YNZZmfuzP9lex9> >>>> ... >>>> >>>> >>>> *[INFO] Application Schema Support ......................... SUCCESS [ >>>> 4.694 s]* >>>> *[INFO] Application Schema Module .......................... SUCCESS [ >>>> 9.101 s]* >>>> *[INFO] Application Schema Integration Test ................ FAILURE >>>> [01:28 min]* >>>> *[INFO] Sample DataAccess Integration Test ................. SUCCESS [ >>>> 4.919 s]* >>>> *[INFO] Application Schema Integration Online Test with Postgis >>>> Database SUCCESS [01:14 min]* >>>> *[INFO] Application Schema Solr Integration Test ........... SUCCESS [ >>>> 2.659 s]* >>>> *[INFO] Application Schema Indexes Integration Test ........ SUCCESS [ >>>> 1.319 s]* >>>> *[INFO] Application Schema Geopackage Integration Test ..... FAILURE [ >>>> 11.730 s]* >>>> >>>> >>>> So what do you think? Does this test have value? For now I will enable >>>> it but not schedule it @daily (in case anyone else wants to look). >>>> >>>> Thanks >>>> -- >>>> Jody Garnett >>>> >>>>
_______________________________________________ Geoserver-devel mailing list Geoserver-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geoserver-devel