[pgpool-general: 1961] pgpool-II 3.3.0 and parallel mode

Emmanuel Medernach medernac at clermont.in2p3.fr
Thu Aug 1 00:34:11 JST 2013


Hello,

ありがとうございます for such a good tool.

I am using  the latest pgpool2 version 3.3.0  and I have some
problem setting pgpool2 in parallel mode.

I am testing pgpool2 installation with 2 tables :
    - partition_test is a partitionned table
    - other_table is a replicated table

with the following test schemas :

CREATE TABLE partition_test (
    id integer,
    name character(4),
    num integer
);

CREATE TABLE other_table (
    id int,
    a int,
    b text,
    c int
);

I could successfully query both tables :

postgres=# select * from partition_test ;
   id | name | num
----+------+-----
    2 | bbbb |  20
    6 | ffff |  60
   10 | jjjj | 100
    3 | cccc |  30
    7 | gggg |  70
    4 | dddd |  40
    8 | hhhh |  80
    1 | aaaa |  10
    5 | eeee |  50
    9 | iiii |  90
(10 rows)

postgres=# select * from other_table ;
   id | a |  b   |  c
----+---+------+-----
    1 | 2 | test | 100
    2 | 5 | test | 200
    3 | 8 | test | 400
(3 rows)

partition_test is correctly partitionned among all backends.
other_table is correctly replicated on all backends.

However when I try a query involving both tables I get an error :

postgres=# select p.name from other_table o, partition_test p where p.id = o.id;
ERROR:  kind mismatch among backends. Possible last query was: "select p.name 
from other_table o, partition_test p where p.id = o.id;" kind details are: 0[C] 
1[D] 2[D] 3[D]
HINT:  check data consistency among db nodes
ERROR:  kind mismatch among backends. Possible last query was: "select p.name 
from other_table o, partition_test p where p.id = o.id;" kind details are: 0[C] 
1[D] 2[D] 3[D]
HINT:  check data consistency among db nodes
The connection to the server was lost. Attempting reset: Succeeded.

log file extract :

2013-07-31 17:28:24 ERROR: pid 30984: read_kind_from_backend: 0 th kind C does 
not match with master or majority connection kind D
2013-07-31 17:28:24 ERROR: pid 30984: kind mismatch among backends. Possible 
last query was: "select p.name from other_table o, partition_test p where p.id = 
o.id;" kind details are: 0[C] 1[D] 2[D] 3[D]
2013-07-31 17:28:24 LOG:   pid 30984: do_child: exits with status 1 due to error


Of course this query works correctly on each backend:

postgres=# select p.name from other_table o, partition_test p where p.id = o.id;
   name
------
   cccc
(1 row)


Could you please help me how to solve this ?

Best regards,
--



More information about the pgpool-general mailing list