powa-team / powa

PostgreSQL Workload Analyzer
http://powa.readthedocs.io/
PostgreSQL License
768 stars 57 forks source link

PostgreSQL 13 support #143

Closed aleszeleny closed 3 years ago

aleszeleny commented 3 years ago

Unable to install powa (Ubuntu, bionc) from apt reporistiory - packages postgresql-13-powa and postgresql-13-hypopg are no available. Does powa support PostgreSQL 13? Can we wait for packages, or is in necessary to build it from sources on Ubuntu?

Thanks Ales

root@db-aws:~# lsb_release -cs
bionic
root@db-aws:~# apt install postgresql-13-cron postgresql-13-dbgsym postgresql-13-hypopg postgresql-13-partman postgresql-13-pg-qualstats postgresql-13-pg-stat-kcache postgresql-13-powa postgresql-client-13 postgresql-client-common postgresql-common
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package postgresql-13-hypopg
E: Unable to locate package postgresql-13-powa
rjuju commented 3 years ago

Hello,

I'm currently working on pg13 compatibility for powa, see https://github.com/powa-team/powa-archivist/issues/35. It's taking a bit longer than planned as the minor version bump is an opportunity to do some improvements, but this should be available soon.

For hypopg that's surprising, version 1.1.4 added support for pg13 and was released in June. As far as I can see it's available, see http://apt.postgresql.org/pub/repos/apt/pool/main/h/hypopg/. Are you using pgdg repositories?

aleszeleny commented 3 years ago

Hello, thanks for the good news on powa for PG13!

The hypopg is surprising. We are using PGDG repo defined in apt sources:

# cat /etc/apt/sources.list.d/download_postgresql_org_pub_repos_apt.list
deb https://download.postgresql.org/pub/repos/apt/ bionic-pgdg main

Where I can find https://download.postgresql.org/pub/repos/apt/pool/main/h/hypopg/

For test, I've added also

# cat /etc/apt/sources.list.d/pgdg.list
deb http://apt.postgresql.org/pub/repos/apt bionic-pgdg main

But the result is the same:

# apt update
Hit:1 http://us-east-1.ec2.archive.ubuntu.com/ubuntu bionic InRelease
Get:2 http://us-east-1.ec2.archive.ubuntu.com/ubuntu bionic-updates InRelease [88.7 kB]
Get:3 http://us-east-1.ec2.archive.ubuntu.com/ubuntu bionic-backports InRelease [74.6 kB]
Hit:4 https://repos.influxdata.com/ubuntu xenial InRelease
Get:5 http://security.ubuntu.com/ubuntu bionic-security InRelease [88.7 kB]
Hit:6 https://download.postgresql.org/pub/repos/apt bionic-pgdg InRelease
Hit:7 http://apt.postgresql.org/pub/repos/apt bionic-pgdg InRelease
Fetched 252 kB in 1s (429 kB/s)
Reading package lists... Done
Building dependency tree
Reading state information... Done
59 packages can be upgraded. Run 'apt list --upgradable' to see them.

And apt search:

# apt search hypopg
Sorting... Done
Full Text Search... Done
postgresql-10-hypopg/bionic-pgdg,bionic-pgdg 1.1.3-1.pgdg18.04+1 amd64
  PostgreSQL extension adding support for hypothetical indexes.

postgresql-10-hypopg-dbgsym/bionic-pgdg,bionic-pgdg 1.1.3-1.pgdg18.04+1 amd64
  debug symbols for postgresql-10-hypopg

postgresql-11-hypopg/bionic-pgdg,bionic-pgdg,now 1.1.3-1.pgdg18.04+1 amd64 [installed]
  PostgreSQL extension adding support for hypothetical indexes.

postgresql-11-hypopg-dbgsym/bionic-pgdg,bionic-pgdg 1.1.3-1.pgdg18.04+1 amd64
  debug symbols for postgresql-11-hypopg

postgresql-12-hypopg/bionic-pgdg,bionic-pgdg,now 1.1.3-1.pgdg18.04+1 amd64 [installed]
  PostgreSQL extension adding support for hypothetical indexes.

postgresql-12-hypopg-dbgsym/bionic-pgdg,bionic-pgdg 1.1.3-1.pgdg18.04+1 amd64
  debug symbols for postgresql-12-hypopg

postgresql-9.3-hypopg/bionic-pgdg,bionic-pgdg 1.1.2-1.pgdg18.04+3 amd64
  PostgreSQL extension adding support for hypothetical indexes.

postgresql-9.3-hypopg-dbgsym/bionic-pgdg,bionic-pgdg 1.1.2-1.pgdg18.04+3 amd64
  debug symbols for postgresql-9.3-hypopg

postgresql-9.4-hypopg/bionic-pgdg,bionic-pgdg 1.1.3-1.pgdg18.04+1 amd64
  PostgreSQL extension adding support for hypothetical indexes.

postgresql-9.4-hypopg-dbgsym/bionic-pgdg,bionic-pgdg 1.1.3-1.pgdg18.04+1 amd64
  debug symbols for postgresql-9.4-hypopg

postgresql-9.5-hypopg/bionic-pgdg,bionic-pgdg 1.1.3-1.pgdg18.04+1 amd64
  PostgreSQL extension adding support for hypothetical indexes.

postgresql-9.5-hypopg-dbgsym/bionic-pgdg,bionic-pgdg 1.1.3-1.pgdg18.04+1 amd64
  debug symbols for postgresql-9.5-hypopg

postgresql-9.6-hypopg/bionic-pgdg,bionic-pgdg 1.1.3-1.pgdg18.04+1 amd64
  PostgreSQL extension adding support for hypothetical indexes.

postgresql-9.6-hypopg-dbgsym/bionic-pgdg,bionic-pgdg 1.1.3-1.pgdg18.04+1 amd64
  debug symbols for postgresql-9.6-hypopg

I wanted to install following packages:

apt install postgresql-13-cron postgresql-13-dbgsym postgresql-13-hypopg postgresql-13-partman postgresql-13-pg-qualstats postgresql-13-pg-stat-kcache postgresql-13-powa postgresql-client-13 postgresql-client-common postgresql-common

And except powa and hypopg, I was able to install them:

apt install postgresql-13-cron postgresql-13-dbgsym postgresql-13-partman postgresql-13-pg-qualstats postgresql-13-pg-stat-kcache postgresql-client-13 postgresql-client-common postgresql-common

So I probably did something wrong, but I'm not able to spot it...

# apt-cache show postgresql-13-pg-stat-kcache
Package: postgresql-13-pg-stat-kcache
Source: pg-stat-kcache
Version: 2.1.3-1.pgdg18.04+1
Architecture: amd64
Maintainer: Julien Rouhaud <rjuju123@gmail.com>
Installed-Size: 86
Depends: libc6 (>= 2.4), postgresql-13, postgresql-contrib-13
Homepage: https://powa.readthedocs.io/
Priority: optional
Section: database
Filename: pool/main/p/pg-stat-kcache/postgresql-13-pg-stat-kcache_2.1.3-1.pgdg18.04+1_amd64.deb
Size: 30948
SHA256: 651e6a3fe58cec35f5338f29379d6b3986e452f13488344be097f7c18eb21fd0
SHA1: 9f74c58ec00a2f7dca84d42d03b2772b17e8fffc
MD5sum: 305e8d66b703076983aece299ad10c51
Description: PostgreSQL extension to gather per-query kernel statistics.
 Statistics gathered are reads and writes done out of the operating system
 cache, user and system CPU usage, context switches and all the other
 meaningful metrics returned by getrusage(2).  All those counters are
 aggregated per postgres role, database and normalized query identifier.
Description-md5: b382a2f5c1a04f9c33485ae5b8f982bf

# apt-cache showpkg postgresql-13-pg-stat-kcache
Package: postgresql-13-pg-stat-kcache
Versions:
2.1.3-1.pgdg18.04+1 (/var/lib/apt/lists/download.postgresql.org_pub_repos_apt_dists_bionic-pgdg_main_binary-amd64_Packages) (/var/lib/apt/lists/apt.postgresql.org_pub_repos_apt_dists_bionic-pgdg_main_binary-amd64_Packages) (/var/lib/dpkg/status)
 Description Language:
                 File: /var/lib/apt/lists/download.postgresql.org_pub_repos_apt_dists_bionic-pgdg_main_binary-amd64_Packages
                  MD5: b382a2f5c1a04f9c33485ae5b8f982bf

Reverse Depends:
  postgresql-13-pg-stat-kcache-dbgsym,postgresql-13-pg-stat-kcache 2.1.3-1.pgdg18.04+1
Dependencies:
2.1.3-1.pgdg18.04+1 - libc6 (2 2.4) postgresql-13 (0 (null)) postgresql-contrib-13 (0 (null))
Provides:
2.1.3-1.pgdg18.04+1 -
Reverse Provides:

# apt-cache showpkg postgresql-13-hypopg
N: Unable to locate package postgresql-13-hypopg
aleszeleny commented 3 years ago

I've downloaded http://apt.postgresql.org/pub/repos/apt/dists/bionic-pgdg/main/binary-amd64/Packages and there is no entry for hypopg-13:

azeleny@cz-azeleny:~/var$ grep -e "postgresql-1[23]-hypopg" Packages
Package: postgresql-12-hypopg
Filename: pool/main/h/hypopg/postgresql-12-hypopg_1.1.3-1.pgdg18.04+1_amd64.deb
Package: postgresql-12-hypopg-dbgsym
Depends: postgresql-12-hypopg (= 1.1.3-1.pgdg18.04+1)
Filename: pool/main/h/hypopg/postgresql-12-hypopg-dbgsym_1.1.3-1.pgdg18.04+1_amd64.deb
Description: debug symbols for postgresql-12-hypopg

That is probably the reason, why I'm not able to install it using apt.

guruguruguru commented 3 years ago

@rjuju should someone be triggered after you finish to build the rpms as well? Or will this be done automatically?

rjuju commented 3 years ago

@aleszeleny I also tried on a fresh new buster install, and same problem. I'm not sure what's the cause for that, as the required changes for the debian package have been integrated in version 1.1.4, which is available for older version of postgres.

@df7cb do you have any idea of what's the problem here? Did I miss something in the 1.1.4 release?

rjuju commented 3 years ago

@guruguruguru I'm not sure if the new rpm are done automatically, but the packages are usually produced quite quickly. As there'll be some interesting changes in the new version, I'll probably also publish some announce so it should get Devrim and other packagers attention :)

df7cb commented 3 years ago

Hi, sorry about hypopg not being there yet. The packages were already built as you had discovered, but were not promoted yet from the -pgdg-testing dists to -pgdg. I've done that now, they will be available in about an hour.

Powa is still in progress, though.

aleszeleny commented 3 years ago

Many thanks for the issue resolution and all the amazing work done, not only on the Powa project.

Aleš Zelený

Dne po 2. 11. 2020 22:26 uživatel Christoph Berg notifications@github.com napsal:

Hi, sorry about hypopg not being there yet. The packages were already built as you had discovered, but were not promoted yet from the -pgdg-testing dists to -pgdg. I've done that now, they will be available in about an hour.

Powa is still in progress, though.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/powa-team/powa/issues/143#issuecomment-720733805, or unsubscribe https://github.com/notifications/unsubscribe-auth/AILJV74RNTMZV473W26CKW3SN4PY5ANCNFSM4S7XRNUA .

rjuju commented 3 years ago

+1, thanks a lot @df7cb !

I'm still working on the version 4.1, but it'll again require more time as there's now more work required on pg_stat_kcache (see https://github.com/powa-team/pg_stat_kcache/issues/24).

aleszeleny commented 3 years ago

Hello, just conformation, installation apt install postgresql-13-hypopg was now smooth.

rjuju commented 3 years ago

Great news! Thanks again @df7cb

ragged commented 3 years ago

Any news on this? powa support for 13 seems to be still not out?

rjuju commented 3 years ago

Hello @ragged. I'm sorry I forgot to update this issue. powa 4.1 with postgres 13 support has been released already. Here are the lastest version for the impacted projects: