> >> hello > >> > >> after 2 weeks pgpool-II (2.25) was working good, > >> I now have: > >> 'kind mismatch among backends. Possible last query was: "EXPLAIN SELECT > >> * > >> FROM ycore.transfer_record WHERE > >> transfer_record_id>400" kind details are: 0[D] 1[C]' > >> > >> just when we wanted to move to production. > >> > >> all other things still work, also 'EXPLAIN' on other tables, > >> (also same query on this table worked until now) > >> I have full logs of pgpool + 2 postgres backends > >> how can I find out whats wrong ? > > > > Can you show me the outputs of EXPAIN which are executed directly on > > postgres backends? My bet is, there are dead tuples difference between > > backends which cause execution plan differences. > > -- > > Tatsuo Ishii > > SRA OSS, Inc. Japan > > > > backend 0: > > explain select * from ycore.transfer_record where transfer_record_id > 400; > QUERY PLAN > ----------------------------------------------------------------------------------------- > Bitmap Heap Scan on transfer_record (cost=4.60..20.16 rows=45 width=356) > Recheck Cond: (transfer_record_id > 400) > -> Bitmap Index Scan on idx_tr_transfer_record_id (cost=0.00..4.59 > rows=45 width=0) > Index Cond: (transfer_record_id > 400) > (4 rows) > > > backend 1: > > explain select * from ycore.transfer_record where transfer_record_id > 400; > QUERY PLAN > ------------------------------------------------------------------- > Seq Scan on transfer_record (cost=0.00..24.48 rows=49 width=331) > Filter: (transfer_record_id > 400) > (2 rows) > > > > I can see there is a difference, but i don't know how to check what caused > it, and how to avoid it next time.
Please make sure that you have idx_tr_transfer_record_id index on backend 1. If you already have, please try vacuum analyze on the database directly on backend 1. -- Tatsuo Ishii SRA OSS, Inc. Japan _______________________________________________ Pgpool-general mailing list [email protected] http://pgfoundry.org/mailman/listinfo/pgpool-general
