[pgpool-hackers: 1100] pgpool-II should return ParamaterStatus to frontend

Yugo Nagata nagata at sraoss.co.jp
Wed Oct 14 15:42:32 JST 2015


Hi,

Now pgpool-II passes PostgreSQL's all regression test except
for "strings" test, in which psql raise "invalid command \"
error with pgpool-II but not with PostgreSQL.

In this test, psql issues "set standard_conforming_strings = off;" 
and receives ParameterStatus message from PostgreSQL, and this
changes behavior of parser of backslash commands. However, 
pgpool-II doesn't return ParameterStatus to frontend after SET 
query is processed. This causes to fail the test.

Because ParamterStatus messages sent from multiple backends might
be different between backends, it is difficult to process, that is,
to decide which message to be return. So, in read_kind_from_backend(), 
messages of this kind are discarded and not returned to frontend.

However, I think it is better to return some ParameterStatus to
frontend to mimic PostgreSQL's behavior. So I propose to fix
read_kind_from_backend() to allow to return ParameterStatus 
message to frontend after SET with
two or three modes which can be switched by a config parameter:

- Use messages returned from master (primary)
- Discard messages (compatible to the current)
- Use majority ()

I'll add this issue to TODO list.

Any comments?


-- 
Yugo Nagata <nagata at sraoss.co.jp>


More information about the pgpool-hackers mailing list