View Issue Details

IDProjectCategoryView StatusLast Update
0000673Pgpool-IIBugpublic2020-12-21 09:13
Reporterhao.wan@honeywell.com Assigned Topengbo  
PriorityhighSeveritycrashReproducibilityalways
Status feedbackResolutionopen 
Product Version4.1.5 
Summary0000673: cannot change into new db by using pgpool
DescriptionHi,
please help have a look this issue.
I did the following steps:

step1 use pgpool to create database test1;
step2 use \c test1, try to change into db test1, but returns error message:

postgres=# \c test1
ERROR: unable to read message kind
DETAIL: kind does not match between main(53) slot[1] (45)
Previous connection kept

attachment: log info
2020-12-16 16:59:16: pid 8207: DETAIL: connecting 0 backend
2020-12-16 16:59:16: pid 8207: DEBUG: creating new connection to backend
2020-12-16 16:59:16: pid 8207: DETAIL: connecting 1 backend
2020-12-16 16:59:16: pid 8207: DEBUG: authentication backend
2020-12-16 16:59:16: pid 8207: DETAIL: auth kind:0
2020-12-16 16:59:16: pid 8207: LOG: pool_read_kind: error message from 1 th backend:database "test1" does not exist
2020-12-16 16:59:16: pid 8207: ERROR: unable to read message kind
2020-12-16 16:59:16: pid 8207: DETAIL: kind does not match between main(53) slot[1] (45)
2020-12-16 16:59:19: pid 30554: DEBUG: authenticate kind = 0
2020-12-16 16:59:19: pid 30554: DEBUG: authenticate backend: key data received
2020-12-16 16:59:19: pid 30554: DEBUG: authenticate backend: transaction state: I
2020-12-16 16:59:19: pid 30554: DEBUG: authenticate kind = 0
2020-12-16 16:59:19: pid 30554: DEBUG: authenticate backend: key data received

Is there any idea of this, thanks.
TagsNo tags attached.

Activities

pengbo

2020-12-16 21:49

developer   ~0003667

Last edited: 2020-12-16 21:50

I would like to check the log of "step1 use pgpool to create database test1".
Could you turn on the paramater "log_per_node_statement" and execute step1 and step2?

   log_per_node_statement = on

Please share the entire pgpool log and pgpool.conf.

hao.wan@honeywell.com

2020-12-17 10:28

reporter   ~0003672

I have checked the slave db, all the operations on the master, including add database and tables , do not duplicated on slave.
if I use load_balance_mode , do I need to let the slave auto backup from master firstly? or it will sync the data from master to slave only by postgresql itself? I mean that, in this mode, does the database duplication operate by the pg or pgpool?

pengbo

2020-12-21 09:13

developer   ~0003676

> I mean that, in this mode, does the database duplication operate by the pg or pgpool?

You can do both.
Pgpool has several running modes.

If PostgreSQL will sync the data from master to slave by postgresql itself, you need to use master_slave_mode:
  master_slave_mode = on
 master_slave_sub_mode = 'stream'

If you want to replicate the data by using pgpool, you need to use replication_mode:

  replication_mode = on

Running mode:
https://www.pgpool.net/docs/41/en/html/runtime-config-running-mode.html

Here is a configuration example using master_slave_mode.
https://www.pgpool.net/docs/41/en/html/example-cluster.html

Issue History

Date Modified Username Field Change
2020-12-16 18:07 hao.wan@honeywell.com New Issue
2020-12-16 21:43 pengbo Assigned To => pengbo
2020-12-16 21:43 pengbo Status new => assigned
2020-12-16 21:49 pengbo Note Added: 0003667
2020-12-16 21:49 pengbo Status assigned => feedback
2020-12-16 21:50 pengbo Note Edited: 0003667
2020-12-17 10:28 hao.wan@honeywell.com Note Added: 0003672
2020-12-17 10:28 hao.wan@honeywell.com Status feedback => assigned
2020-12-21 09:13 pengbo Note Added: 0003676
2020-12-21 09:13 pengbo Status assigned => feedback