Source: postgresql-common
Severity: normal

Hallo,

this report is long overdue,
but i tested i today and still exists,
probably debian specific for --cluster version/db option

how to reproduce:
1. connect with psql to your local instance
2. use alter system to set the port to a non default port
3. restart postgresql
4. you will notice that pg_lsclusters still lists the old port instead of the 
changed port by alter system
5. you cannot connect with psql unless with specifying the port

alter scenario that does work:
do the same but not using alter system, but by editing the port in 
postgresql.conf

likely cause: 
postgresql.auto.conf in the data_directory
is not read or ignored by commands as psql, pg_lsclusters,..

a short recording about this behaviour(2 minutes) using psql:
https://u0082489.webontwerp.ucll.be/opname.ogv

pg_lscluster (and psql) example:
"
$ pg_lsclusters 
Ver Cluster Port Status Owner     Data directory Log file
11  old     5432 online <unknown> 11             
/var/log/postgresql/postgresql-11-old.log

[wim] # ALTER SYSTEM SET port TO 5433;

$ pg_ctlcluster 11 old restart

$ pg_lsclusters 
Ver Cluster Port Status Owner     Data directory Log file
11  old     5432 online <unknown> 11             
/var/log/postgresql/postgresql-11-old.log

$ psql -h /var/run/postgresql/
psql: could not connect to server: Bestand of map bestaat niet
        Is the server running locally and accepting
        connections on Unix domain socket "/var/run/postgresql//.s.PGSQL.5432"?

$ psql --cluster 11/old
psql: could not connect to server: Bestand of map bestaat niet
        Is the server running locally and accepting
        connections on Unix domain socket "/var/run/postgresql//.s.PGSQL.5432"

$ psql -h /var/run/postgresql/ -p 5433
psql (11.1 (Debian 11.1-1.pgdg90+1))
[wim] # \conninfo 
You are connected to database "wim" as user "wim" via socket in 
"/var/run/postgresql/" at port "5433".
"

vs

"
$ pg_lsclusters 
Ver Cluster Port Status Owner     Data directory Log file
11  old     5432 online <unknown> 11             
/var/log/postgresql/postgresql-11-old.log

$ change port in postgresql.conf using editor to 5433

$ pg_lsclusters 
Ver Cluster Port Status Owner     Data directory Log file
11  old     5433 online <unknown> 11             
/var/log/postgresql/postgresql-11-old.log
older ignored report since it's debian specific:
https://www.postgresql.org/message-id/7d92073a-524c-2bad-af9c-0e00256619a4%40ucll.be

$ psql -h /var/run/postgresql/
psql: could not connect to server: Bestand of map bestaat niet
        Is the server running locally and accepting
        connections on Unix domain socket "/var/run/postgresql//.s.PGSQL.5432"?

$ psql --cluster 11/old
psql (11.1 (Debian 11.1-1.pgdg90+1))
[wim] # \conninfo 
You are connected to database "wim" as user "wim" via socket in 
"/var/run/postgresql" at port "5433".
"

So the undesirable behaviour is (using alter system set port):
* pg_lsclusters is listing the wrong port (not good)
* psql --cluster version/clustername is not working (annoying)
** while it does work not using alter system but editing postgresql.conf as 
usual

Probably affects all debian versions. (debian and apt.postgresql.org)

hth,
Wim

-- System Information:
Debian Release: 9.6
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.9.0-8-amd64 (SMP w/8 CPU cores)
Locale: LANG=nl_BE.utf8, LC_CTYPE=nl_BE.utf8 (charmap=UTF-8), 
LANGUAGE=nl_BE.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

# dpkg -l | grep postgresql
ii  libreoffice-sdbc-postgresql           1:5.2.7-1+deb9u4                      
      amd64        PostgreSQL SDBC driver for LibreOffice
ii  pgdg-keyring                          2018.2                                
      all          keyring for apt.postgresql.org
ii  postgresql-10                         10.6-1.pgdg90+1                       
      amd64        object-relational SQL database, version 10 server
ii  postgresql-11                         11.1-1.pgdg90+1                       
      amd64        object-relational SQL database, version 11 server
ii  postgresql-11-pldebugger              1:1.0-10-g2a298eb-1.pgdg90+2          
      amd64        PostgreSQL pl/pgsql Debugger API
ii  postgresql-9.4                        9.4.20-1.pgdg90+1                     
      amd64        object-relational SQL database, version 9.4 server
ii  postgresql-9.5                        9.5.15-1.pgdg90+1                     
      amd64        object-relational SQL database, version 9.5 server
ii  postgresql-9.6                        9.6.11-1.pgdg90+1                     
      amd64        object-relational SQL database, version 9.6 server
ii  postgresql-9.6-ip4r                   2.4-1.pgdg90+1                        
      amd64        IPv4 and IPv6 types for PostgreSQL 9.6
ii  postgresql-client                     11+197.pgdg90+1                       
      all          front-end programs for PostgreSQL (supported version)
ii  postgresql-client-10                  10.6-1.pgdg90+1                       
      amd64        front-end programs for PostgreSQL 10
ii  postgresql-client-11                  11.1-1.pgdg90+1                       
      amd64        front-end programs for PostgreSQL 11
ii  postgresql-client-9.4                 9.4.20-1.pgdg90+1                     
      amd64        front-end programs for PostgreSQL 9.4
ii  postgresql-client-9.5                 9.5.15-1.pgdg90+1                     
      amd64        front-end programs for PostgreSQL 9.5
ii  postgresql-client-9.6                 9.6.11-1.pgdg90+1                     
      amd64        front-end programs for PostgreSQL 9.6
ii  postgresql-client-common              197.pgdg90+1                          
      all          manager for multiple PostgreSQL client versions
ii  postgresql-common                     197.pgdg90+1                          
      all          PostgreSQL database-cluster manager
ii  postgresql-contrib-9.4                9.4.20-1.pgdg90+1                     
      amd64        additional facilities for PostgreSQL
ii  postgresql-contrib-9.5                9.5.15-1.pgdg90+1                     
      amd64        additional facilities for PostgreSQL
ii  postgresql-contrib-9.6                9.6.11-1.pgdg90+1                     
      amd64        additional facilities for PostgreSQL
ii  postgresql-server-dev-9.6             9.6.11-1.pgdg90+1                     
      amd64        development files for PostgreSQL 9.6 server-side programming

Reply via email to