Correct, but in the Java code, it's multiple statements in a single transaction, so it should stick. Not sure if something else stupid is going on.
Good to know about the ALTER DATABASE effect. I didn't realize that.
Thanks a billion.
Laurent. From: Tom Lane <tgl@xxxxxxxxxxxxx>
Sent: Friday, January 25, 2019 3:04:37 PM To: ldh@xxxxxxxxxxxxxxxxxx Cc: pgsql-performance@xxxxxxxxxxxxxx Subject: Re: Zero throughput on a query on a very large table. "ldh@xxxxxxxxxxxxxxxxxx" <ldh@xxxxxxxxxxxxxxxxxx> writes:
> Second, here is what i found and what messed us up. > select current_setting('random_page_cost'); --> 4 > alter database "CMS_TMP" set random_page_cost=0.00000001; > select current_setting('random_page_cost'); --> 4 ???? ALTER DATABASE only affects subsequently-started sessions. > I also tried: > select current_setting('random_page_cost'); --> 4 > select set_config('random_page_cost', '0.000001', true); > select current_setting('random_page_cost'); --> 4 ???? That "true" means "local to the current transaction", which is just the one statement if you don't have a BEGIN. regards, tom lane |