Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1q605x-00088D-PY for pgsql-pkg-debian@arkaria.postgresql.org; Mon, 05 Jun 2023 02:37:21 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1q605w-0003tl-L6 for pgsql-pkg-debian@arkaria.postgresql.org; Mon, 05 Jun 2023 02:37:20 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1q605w-0003tc-Aa for pgsql-pkg-debian@lists.postgresql.org; Mon, 05 Jun 2023 02:37:20 +0000 Received: from mail-yb1-xb2d.google.com ([2607:f8b0:4864:20::b2d]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1q605t-000G4q-IM for pgsql-pkg-debian@lists.postgresql.org; Mon, 05 Jun 2023 02:37:19 +0000 Received: by mail-yb1-xb2d.google.com with SMTP id 3f1490d57ef6-bb1f7c5495dso4609516276.3 for ; Sun, 04 Jun 2023 19:37:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1685932637; x=1688524637; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=zjMPMq6JavGeHrfWDRHUtS9uBlYicC/L0pWkIdieWEA=; b=BwSPIpoDabJqHpI7sqyvbNyMoB3U8PWMm/B8UtVv2ydPw7SK9q3F31zeBiyk97v3TY wwzD9caxFtwRmMFad07JSYo7cjOQXPo0dBwn41dFPp8SDSIj/gu8iUFotcGyIOkWmqY+ xXdT8QX03XV+ybbGdgt/KG0UN8d+vOevDrhaIddeLGQxSv+2wzrcK2O8ZDqYy/bJwdbu 5slJWLopGW4vVGKYm6U6NRSq0VlLvwJA/BzNRbNJ87ZnkZCSaHGqmWdQtjDnrf8k9/ox Jvn6Z8RsB1Y2fQQ1qVpaJSFDqkxVJuiED5BFq0TmrCvg+Ei1wp035Qm1f0+RW1z2kRFc h8XQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685932637; x=1688524637; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=zjMPMq6JavGeHrfWDRHUtS9uBlYicC/L0pWkIdieWEA=; b=OUil5vF7pOwOoCxLrmeYQ89Dpu70XE1Cqx8Cn2wYoBgSkHECs2mrFADeiDAnD3HqO1 kq+XvlcVTTrgBE4qogLRgTHRhApaz1f5z28YuguS4l2shcFvdrexSFksrsjQqh2n8Vt9 FHqbLbJ6mf+EM4slk2zWmOsSqtvUkAs56lZ5cQCOQPAeirUZWWLt4hbmLP5FBe/57MG8 JCVmY+h5zUOwNbN28apcuhZsRD/2FPWe9Dc3f+dnv3Vjr0uBMMICG2KoMupBRqMs/B1E CVfD0utwO9HJE9tBtUA0ZdPH69w1ESQFbYEafoA+LquvnoL/RA+y698mzcZu2+5dimTk ZSVw== X-Gm-Message-State: AC+VfDzwsiJVMwx64n7cVAVwHw5u1fXCxNNb0/ka/aKbl3hacZYuavOu Fv70cSBkm5JFGRU1GkGO9C9qEErfNiCmoZ/UD5k= X-Google-Smtp-Source: ACHHUZ7c6Ln3oY+elCkKEQI8dpjmWgz8MAQvI0MZT+YEdTsri7tpZUTbI5+G5L/LeiWzzQV1EeXAOKUaleS+OfGeiuo= X-Received: by 2002:a25:ca93:0:b0:b9e:5dbe:4b1f with SMTP id a141-20020a25ca93000000b00b9e5dbe4b1fmr11761611ybg.51.1685932636662; Sun, 04 Jun 2023 19:37:16 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Bradford Boyle Date: Sun, 4 Jun 2023 19:37:05 -0700 Message-ID: Subject: Re: Packaging request MobilityDB To: Esteban Zimanyi Cc: pgsql-pkg-debian@lists.postgresql.org Content-Type: multipart/mixed; boundary="000000000000ecc30405fd58c7d8" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000ecc30405fd58c7d8 Content-Type: text/plain; charset="UTF-8" I've spent some time looking at packaging MobilityDB for inclusion in the Debian archive and PGDG. Here is a high-level summary of what I've done so far: * Opened an ITP bug against wnpp for MobilityDB [1] * Created an initial source package with dh make_pgxs - Replaced default autopkgtest with customized one (see below for discussion) * Created a new project on salsa under the PostgreSQL team [2] - I have not updated the CI/CD settings to point at d/gitlab-ci.yml (see below for discussion) * Added a job for MobilityDB to the pgapt Jenkins jobs (patch attached) Upstream isn't using pgxs for its build system and does not have an installcheck target. The build system does have tests but these tests are run with cmake and running that in autopkgtest would require re-building the source package (or using the 'build-needed' restriction). Additionally, the upstream tests include creating, starting, and stoping a test cluster. I decided to replace the generated 'installcheck' script with a custom one that uses pg_virtualenv and pg_regress to run upstream's test cases. I was able to (automatically) reuse the test SQL queries from upstream but I was not able to reuse the expected responses. This is because upstream's test uses UTC timezone while pg_regress sets PGTZ to PST8PDT. Additionally, upstream's test includes pre- and post-processing of the expected results to standardize ERROR messages along with removing WARNING and CONTEXT lines. I have had to skip one test case (052_tpoint.test) because it is currently failing with the following error message in the Postgres log: > *** stack smashing detected ***: terminated > 2023-06-04 02:59:18.383 UTC [25831] LOG: server process (PID 25852) was terminated by signal 6: Aborted > 2023-06-04 02:59:18.383 UTC [25831] DETAIL: Failed process was running: SELECT tgeompoint(Instant,PointZ,5676,1234) 'SRID=5676;Point(0 0 0)@2000-01-01'; I think this indicates a potential buffer overflow bug [3] but I haven't had a chance to look into it. I have skipped setting up the CI/CD settings for the packaging repository on Salsa for now. The intent is to package the upcoming release of MobilityDB 1.1 and since the release hasn't happened yet, there is no upstream source archive to fetch with uscan. For my local development and testing of the package, I've just used a "fake" source archive that I created with git archive. Until the upstream release of 1.1, I'd expect the default GitLab pipeline to fail. This is why I have added the package to pgapt's Jenkins jobs with the job group of "git+upstream-snapshot". [1]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1037101 [2]: https://salsa.debian.org/postgresql/mobilitydb [3]: https://stackoverflow.com/a/1347464 --000000000000ecc30405fd58c7d8 Content-Type: application/octet-stream; name="0001-Add-MobilityDB.patch" Content-Disposition: attachment; filename="0001-Add-MobilityDB.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lii8qp2w0 RnJvbSAwZWJhNWUxYzE0NGU4ZDRiZmY3NmRiMGEzNjBkODQ2NWU0MmM0YzUzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiQnJhZGZvcmQgRC4gQm95bGUiIDxicmFkZm9yZC5kLmJveWxl QGdtYWlsLmNvbT4KRGF0ZTogU3VuLCA0IEp1biAyMDIzIDE5OjI3OjE3IC0wNzAwClN1YmplY3Q6 IFtQQVRDSF0gQWRkIE1vYmlsaXR5REIKCi0tLQogamVua2lucy9wYWNrYWdlcyAgICAgICAgICAg fCAxICsKIGplbmtpbnMvcGFja2FnZXMuYmV0YXRlc3RzIHwgMSArCiBqZW5raW5zL3BnYXB0LWpv YnMueWFtbCAgICB8IDkgKysrKysrKysrCiAzIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMo KykKCmRpZmYgLS1naXQgYS9qZW5raW5zL3BhY2thZ2VzIGIvamVua2lucy9wYWNrYWdlcwppbmRl eCA3MTcwMTEzLi40YWZkZWQ0IDEwMDY0NAotLS0gYS9qZW5raW5zL3BhY2thZ2VzCisrKyBiL2pl bmtpbnMvcGFja2FnZXMKQEAgLTIzLDYgKzIzLDcgQEAgbGlic3RyaW5ncHJlcC1qYXZhCiBsaWJ0 YXAtcGFyc2VyLXNvdXJjZWhhbmRsZXItcGd0YXAtcGVybAogbG9uZGlzdGUKIG1pbWVvCittb2Jp bGl0eWRiCiBvbW5pZGIKIG9tbmlkYi1wbHBnc3FsLWRlYnVnZ2VyCiBvcmEycGcKZGlmZiAtLWdp dCBhL2plbmtpbnMvcGFja2FnZXMuYmV0YXRlc3RzIGIvamVua2lucy9wYWNrYWdlcy5iZXRhdGVz dHMKaW5kZXggZDgxNDY1OS4uZjIwZjFhNiAxMDA2NDQKLS0tIGEvamVua2lucy9wYWNrYWdlcy5i ZXRhdGVzdHMKKysrIGIvamVua2lucy9wYWNrYWdlcy5iZXRhdGVzdHMKQEAgLTIzLDYgKzIzLDcg QEAgbGlic3RyaW5ncHJlcC1qYXZhCiBsaWJ0YXAtcGFyc2VyLXNvdXJjZWhhbmRsZXItcGd0YXAt cGVybAogbG9uZGlzdGUKIG1pbWVvCittb2JpbGl0eWRiCiBvbW5pZGIKIG9tbmlkYi1wbHBnc3Fs LWRlYnVnZ2VyCiBvcmEycGcKZGlmZiAtLWdpdCBhL2plbmtpbnMvcGdhcHQtam9icy55YW1sIGIv amVua2lucy9wZ2FwdC1qb2JzLnlhbWwKaW5kZXggYmFiMGJmOS4uZmIxN2VkZiAxMDA2NDQKLS0t IGEvamVua2lucy9wZ2FwdC1qb2JzLnlhbWwKKysrIGIvamVua2lucy9wZ2FwdC1qb2JzLnlhbWwK QEAgLTExNDksNiArMTE0OSwxNSBAQAogICAgICAgICBqb2JzOgogICAgICAgICAgICAgICAgIC0g Z2l0LXBhY2thZ2VzLXdpdGgtYmV0YQogCistIHByb2plY3Q6CisgICAgICAgIG5hbWU6IG1vYmls aXR5ZGIKKyAgICAgICAgZ2l0LXVybDogaHR0cHM6Ly9zYWxzYS5kZWJpYW4ub3JnL3Bvc3RncmVz cWwvbW9iaWxpdHlkYi5naXQKKyAgICAgICAgZ2l0LWJyYW5jaDogbWFpbgorICAgICAgICB1cHN0 cmVhbS11cmw6IGh0dHBzOi8vZ2l0aHViLmNvbS9Nb2JpbGl0eURCL01vYmlsaXR5REIuZ2l0Cisg ICAgICAgIHVwc3RyZWFtLWJyYW5jaDogZGV2ZWxvcAorICAgICAgICBqb2JzOgorICAgICAgICAg ICAgICAgIC0gZ2l0K3Vwc3RyZWFtLXNuYXBzaG90CisKIC0gcHJvamVjdDoKICAgICAgICAgbmFt ZTogb21uaWRiCiAgICAgICAgIGdpdC11cmw6IGh0dHBzOi8vc2Fsc2EuZGViaWFuLm9yZy9wb3N0 Z3Jlc3FsL29tbmlkYi5naXQKLS0gCjIuNDEuMAoK --000000000000ecc30405fd58c7d8--