Re: Packaging request MobilityDB

Поиск
Список
Период
Сортировка
От Bradford Boyle
Тема Re: Packaging request MobilityDB
Дата
Msg-id CAOMoQbR6Ckg8QtSnb4mDbocbUxxh8OeAxQBvXo_b5SZ7Kg2rZA@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Packaging request MobilityDB  (Esteban Zimanyi <estebanzimanyi@gmail.com>)
Список pgsql-pkg-debian
Hi,

Thank you for the initial round of feedback.

> When I run the tests on unstable I get this:
>
> $ debian/tests/installcheck
> Creating new PostgreSQL cluster 15/regress ...
> test 001_set ... *** /tmp/pg_virtualenv.ye3HhD/log/postgresql-15-regress.log (last 100 lines) ***
> ...
> 2023-07-31 14:45:00.903 UTC [321209] myon@postgres ERROR: Could not parse the set: Missing open brace at character
29
> 2023-07-31 14:45:00.903 UTC [321209] myon@postgres STATEMENT: /* Errors */
> SELECT tstzset '2000-01-01, 2000-01-02';
> Dropping cluster 15/regress ...

I've made some changes to how the autopkg tests are run and the tests
are running and passing when building with sbuild on arm64 (I don't have
an amd64 environment available at the momment). Now that there is a
pre-release tag on GitHub, I've enabled the CI/CD in s.d.o to point at
d/gitlab-ci.yml

> debian/copyright: LICENSE mentions the ULB - haven't checked the rest
> of the source yet

I still need to update d/copyright -- there are several different
copyrights in the source (PGDG, ULB, PostGIS, etc) that I need to add to
d/copyright. This is the area of packaging that I am less familiar with,
so any high-level suggestions would be appreciated.

> debian/tests/installcheck: Why is that .so trickery necessary? If
> mobilitydb needs postgis that way, it should link against it.

Mobilitydb needs postgis -- without setting shared_preload_libraries,
tests fail with the errors similar to this one

ERROR: could not load library
"/usr/lib/postgresql/15/lib/libMobilityDB-1.1.so":
/usr/lib/postgresql/15/lib/libMobilityDB-1.1.so: undefined symbol:
ST_Intersects

I've spent some time trying to patch the CMake build to link mobilitydb
against postgis with no success. If I update CMakeLists.txt to link with
-L /usr/lib/postgresql/15/lib -lpostgis-3, the build fails with

/usr/bin/ld: cannot find -lpostgis-3.so: No such file or directory

I think this is because postgis-3.so doesn't have a SONAME field set. If
the build links w/ /usr/lib/postgresql/15/lib/postgis-3.so, then
dpkg-shlibdebs fails with

cannot find library /usr/lib/postgresql/15/lib/postgis-3.so needed by
build/libMobilityDB-1.1.so (ELF format: 'elf64-x86-64' abi:
'0201003e00000000'; RPATH: '')

> debian/control.in: This would be the first package to use PGVERSION in
> the Build-Depends list. I'm slightly surprised it works, but
> apparently I coded the logic in pg_buildext correctly. ;)

> Is the postgis version used at build time relevant? There is a
> postgresql-postgis package that could be used instead. (If the version
> is relevant, we need a solution that works when more than one version
> is targeted.)

I've updated d/control to use the postgresql-postgis package.

--Bradford



В списке pgsql-pkg-debian по дате отправления:

Предыдущее
От: apt.postgresql.org Repository Update
Дата:
Сообщение: tdigest updated to version 1.4.0-3.pgdg+1
Следующее
От: apt.postgresql.org Repository Update
Дата:
Сообщение: pg-stat-kcache updated to version 2.2.2-1.pgdg+1