question about client/server version mismatches
От | raf |
---|---|
Тема | question about client/server version mismatches |
Дата | |
Msg-id | 20190813024535.oamb7x6yx2pjaj6i@raf.org обсуждение исходный текст |
Ответы |
Re: question about client/server version mismatches
|
Список | pgsql-general |
Hi, macos-10.11.6 postgresql-9.5.16 (server) postgresql-9.6.12 (client) I've just rebooted my macos laptop for the first time in months and have started having a problem loading database backups there. I get this error output: pg_restore: [archiver (db)] Error while INITIALIZING: pg_restore: [archiver (db)] could not execute query: ERROR: unrecognized configuration parameter "idle_in_transaction_session_timeout" Command was: SET idle_in_transaction_session_timeout = 0; It seems that I was using 9.6 clients and a 9.5 server. I'm not sure what the situation was before the reboot. The server was probably 9.6.12 and all was well. I never got around to fully upgrading the server (or the old version wouldn't still be there). Loading a 9.5 backup using the 9.6 pg_restore lead to the above error. Changing to 9.5 clients fixed it. Since the backup itself was from a 9.5.12 server, it seems that the 9.6 parameter, idle_in_transaction_session_timeout, must have been set by the 9.6 client even though it was connected to a 9.5 server. Is that expected behaviour? Do the clients know when each configuration parameter was introduced and only use them when connected to servers where they mean something? Or am I just misunderstaing what's happening? I would have thought a new client would be able to work with an old but supported server. It's not a big deal. I'll get around to completing the upgrade and it'll be fine again but I'm curious. cheers, raf
В списке pgsql-general по дате отправления: