View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0000221 | pgpool-HA | Bug | public | 2016-07-22 15:44 | 2016-08-11 09:57 |
| Reporter | nomir | Assigned To | t-ishii | ||
| Priority | normal | Severity | crash | Reproducibility | sometimes |
| Status | closed | Resolution | open | ||
| Summary | 0000221: kind mismatch among backends. Possible last query was: "COMMIT" kind details are: 0[C] 1[N: ] | ||||
| Description | pgpool-II log ------------- Jul 21 14:15:01 ntv-pg02-sld02 pgpool-as[2161]: [1834-1] 2016-07-21 14:15:01: pid 2161: db: tve_self_20160710 LOG: DB node id: 0 backend pid: 35686 statement: BEGIN;select language0_.language_id as language1_122_, language0_.iso3_b as iso2_122_, language0_.iso3_t as iso3_122_, language0_.local_name as local_na4_122_, language0_.locale as locale5_122_, language0_.name as name6_122_ from language language0_ order by language0_.name Jul 21 14:15:01 ntv-pg02-sld02 pgpool-as[2161]: [1835-1] 2016-07-21 14:15:01: pid 2161: db: tve_self_20160710 LOG: DB node id: 1 backend pid: 17420 statement: COMMIT Jul 21 14:15:01 ntv-pg02-sld02 pgpool-as[2161]: [1836-1] 2016-07-21 14:15:01: pid 2161: db: tve_self_20160710 LOG: pool_send_and_wait: Error or notice message from backend: : DB node id: 1 backend pid: 17420 statement: "COMMIT" message: "WARNING: there is no transaction in progress Jul 21 14:15:01 ntv-pg02-sld02 pgpool-as[2161]: [1837-1] 2016-07-21 14:15:01: pid 2161: db: tve_self_20160710 LOG: DB node id: 0 backend pid: 35686 statement: COMMIT Jul 21 14:15:01 ntv-pg02-sld02 pgpool-as[2161]: [1838-1] 2016-07-21 14:15:01: pid 2161: db: tve_self_20160710 WARNING: packet kind of backend 1 ['N'] does not match with master/majority nodes packet kind ['C'] Jul 21 14:15:01 ntv-pg02-sld02 pgpool-as[2161]: [1839-1] 2016-07-21 14:15:01: pid 2161: db: tve_self_20160710 FATAL: failed to read kind from backend Jul 21 14:15:01 ntv-pg02-sld02 pgpool-as[2161]: [1839-2] 2016-07-21 14:15:01: pid 2161: db: tve_self_20160710 DETAIL: kind mismatch among backends. Possible last query was: "COMMIT" kind details are: 0[C] 1[N: ] Jul 21 14:15:01 ntv-pg02-sld02 pgpool-as[2161]: [1839-3] 2016-07-21 14:15:01: pid 2161: db: tve_self_20160710 HINT: check data consistency among db nodes pgpool.conf ----------- backend_hostname0 = '....' backend_port0 = 5432 backend_weight0 = 0 backend_flag0 = 'ALLOW_TO_FAILOVER' backend_hostname1 = '.....' backend_port1 = 5432 backend_weight1 = 1 backend_flag1 = 'ALLOW_TO_FAILOVER' replication_mode = off replicate_select = off load_balance_mode = on master_slave_mode = on parallel_mode = off there is working synchronous streaming replication between backend_hostname0 and backend_hostname1. postgresql.conf on backend_hostname0 ------------------------------------ synchronous_commit = remote_write synchronous_standby_names = 'backend_hostname1' Our goal was to direct all select queries to backend_hostname1 (synchronous replica) and all write queries to backend_hostname0 (master). | ||||
| Additional Information | I don't understand - Why select query is forwarded to db node 0 (with weight 0)? - Why following commit is forwarded to db node 1? | ||||
| Tags | No tags attached. | ||||
|
|
This is not pgpool-HA's problem but pgpool-II's. Which pgpool-II version do you use? Some known bugs that cause kind mismatch error in master_slave_mode are fixed already in the newest minor versions. |
|
|
Yes it is pgpool-II problem - I'am sorry. I don't know where I can change it in existing issue. I am using Pgpool-II 3.5.3 |
|
|
Pgpool-II does not support multi statement query like: BEGIN;select language0_.language_id as language1_122_, language0_.iso3_b as iso2_122_, language0_.iso3_t as iso3_122_, language0_.local_name as local_na4_122_, language0_.locale as locale5_122_, language0_.name as name6_122_ from language language0_ order by language0_.name You should send "BEGIN" and "select... " as separate statements. |
|
|
Thanks for the reply. We were using JDBC driver in protocol version 2 which use multi statement query. We switched to protocol version 3. The similar error appear again. Jul 31 16:18:29 ntv-pg02-sld02 pgpool[25732]: [1665-1] 2016-07-20 16:18:29: pid 25732: WARNING: packet kind of backend 1 ['3'] does not match with master/majority nodes packet kind ['2'] Jul 31 16:18:29 ntv-pg02-sld02 pgpool[25732]: [1666-1] 2016-07-20 16:18:29: pid 25732: FATAL: failed to read kind from backend Jul 31 16:18:29 ntv-pg02-sld02 pgpool[25732]: [1666-2] 2016-07-20 16:18:29: pid 25732: DETAIL: kind mismatch among backends. Possible last query was: "BEGIN" kind details are: 0[2] 1[3] Jul 31 16:18:29 ntv-pg02-sld02 pgpool[25732]: [1666-3] 2016-07-20 16:18:29: pid 25732: HINT: check data consistency among db nodes Jul 31 16:18:29 ntv-pg02-sld02 pgpool[25103]: [1758-1] 2016-07-20 16:18:29: pid 25103: LOG: child process with pid: 25732 exits with status 512 |
|
|
Please provide a test case. |
|
|
Also please start new bug report since this issue is bound to wrong project. |
|
|
I created new issue 231 bounded to correct project. This issue can be closed. |
|
|
Closed by reporter's request. |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2016-07-22 15:44 | nomir | New Issue | |
| 2016-07-22 17:44 | harukat | Note Added: 0000925 | |
| 2016-07-22 18:15 | nomir | Note Added: 0000926 | |
| 2016-07-26 07:48 | t-ishii | Note Added: 0000929 | |
| 2016-07-26 07:48 | t-ishii | Assigned To | => t-ishii |
| 2016-07-26 07:48 | t-ishii | Status | new => feedback |
| 2016-08-02 21:12 | nomir | Note Added: 0000957 | |
| 2016-08-02 21:12 | nomir | Status | feedback => assigned |
| 2016-08-03 11:18 | t-ishii | Note Added: 0000960 | |
| 2016-08-03 11:19 | t-ishii | Status | assigned => feedback |
| 2016-08-03 11:20 | t-ishii | Note Added: 0000961 | |
| 2016-08-09 22:32 | nomir | Note Added: 0000976 | |
| 2016-08-09 22:32 | nomir | Status | feedback => assigned |
| 2016-08-11 09:56 | t-ishii | Note Added: 0000979 | |
| 2016-08-11 09:57 | t-ishii | Status | assigned => closed |