We just found out that the problem was that our own ~/.psqlrc contained the SET statement, overriding the global setting.
From: kong_mansatiansin@xxxxxxxxxxx To: tgl@xxxxxxxxxxxxx CC: pgsql-general@xxxxxxxxxxxxxx Subject: RE: search_path not reloaded via unix socket connections Date: Fri, 18 Sep 2015 08:19:30 -0700 Tom, I have made sure that the per-user and per-database settings are reset. The old search_path setting still persists whenever I reconnect via local connections no matter what user I log in as. > From: tgl@xxxxxxxxxxxxx > To: kong_mansatiansin@xxxxxxxxxxx > CC: pgsql-general@xxxxxxxxxxxxxx > Subject: Re: search_path not reloaded via unix socket connections > Date: Thu, 17 Sep 2015 22:29:04 -0400 > > Kong Man <kong_mansatiansin@xxxxxxxxxxx> writes: > > Can anybody explain why the search_path setting, with several config reloads, would not change via local connections? We struggled with our production settings on Postgres 9.3 today, only to realize, after a while, that the search_path change actually took effect via TCP/IP, but not unix socket, connections ever since the first reload. > > That's, um, pretty hard to believe. Less magical interpretations would > involve something like a per-user or per-database setting overriding > what's in the config file in some sessions but not others. But I really > really doubt that TCP vs unix socket is the determining factor. > > regards, tom lane |