Thread: Need to backpatch 2985e16 to 9.3 and further (HS regression test out)
Hi, Following (commit 2985e16) has not been backpatched, I guess. ANALYZE hs1; -ERROR: cannot execute VACUUM during recovery +ERROR: cannot execute ANALYZE during recovery Attached is a patch for this. -- Amit
Attachment
On Wed, Jun 4, 2014 at 3:26 PM, Amit Langote <amitlangote09@gmail.com> wrote: > Hi, > > Following (commit 2985e16) has not been backpatched, I guess. > > ANALYZE hs1; > -ERROR: cannot execute VACUUM during recovery > +ERROR: cannot execute ANALYZE during recovery > > Attached is a patch for this. Why did you cut off the following part? ISTM that also needs to be back-patched. So we should just do "git cherry-pick 2985e16" on 9.3. -begin transaction isolation level serializable; +begin transaction isolation level repeatable read; Regards, -- Fujii Masao
On Wed, Jun 4, 2014 at 11:10 PM, Fujii Masao <masao.fujii@gmail.com> wrote: > On Wed, Jun 4, 2014 at 3:26 PM, Amit Langote <amitlangote09@gmail.com> wrote: >> Hi, >> >> Following (commit 2985e16) has not been backpatched, I guess. >> >> ANALYZE hs1; >> -ERROR: cannot execute VACUUM during recovery >> +ERROR: cannot execute ANALYZE during recovery >> >> Attached is a patch for this. > > Why did you cut off the following part? ISTM that also needs to be back-patched. > So we should just do "git cherry-pick 2985e16" on 9.3. > > -begin transaction isolation level serializable; > +begin transaction isolation level repeatable read; > You are right, I did not pay attention to that at all. Please find attached = 2985e16 ;-) -- Amit
Attachment
On Thu, Jun 5, 2014 at 3:11 PM, Amit Langote <amitlangote09@gmail.com> wrote: > On Wed, Jun 4, 2014 at 11:10 PM, Fujii Masao <masao.fujii@gmail.com> wrote: >> On Wed, Jun 4, 2014 at 3:26 PM, Amit Langote <amitlangote09@gmail.com> wrote: >>> Hi, >>> >>> Following (commit 2985e16) has not been backpatched, I guess. >>> >>> ANALYZE hs1; >>> -ERROR: cannot execute VACUUM during recovery >>> +ERROR: cannot execute ANALYZE during recovery >>> >>> Attached is a patch for this. >> >> Why did you cut off the following part? ISTM that also needs to be back-patched. >> So we should just do "git cherry-pick 2985e16" on 9.3. >> >> -begin transaction isolation level serializable; >> +begin transaction isolation level repeatable read; >> > > You are right, I did not pay attention to that at all. > Please find attached = 2985e16 ;-) Do we need to back-patch this to older versions (i,e. 9.2, 9.1, ..)? Regards, -- Fujii Masao
On Thu, Jun 5, 2014 at 4:09 PM, Fujii Masao <masao.fujii@gmail.com> wrote: > On Thu, Jun 5, 2014 at 3:11 PM, Amit Langote <amitlangote09@gmail.com> wrote: >> On Wed, Jun 4, 2014 at 11:10 PM, Fujii Masao <masao.fujii@gmail.com> wrote: >>> On Wed, Jun 4, 2014 at 3:26 PM, Amit Langote <amitlangote09@gmail.com> wrote: >>>> Hi, >>>> >>>> Following (commit 2985e16) has not been backpatched, I guess. >>>> >>>> ANALYZE hs1; >>>> -ERROR: cannot execute VACUUM during recovery >>>> +ERROR: cannot execute ANALYZE during recovery >>>> >>>> Attached is a patch for this. >>> >>> Why did you cut off the following part? ISTM that also needs to be back-patched. >>> So we should just do "git cherry-pick 2985e16" on 9.3. >>> >>> -begin transaction isolation level serializable; >>> +begin transaction isolation level repeatable read; >>> >> >> You are right, I did not pay attention to that at all. >> Please find attached = 2985e16 ;-) > > Do we need to back-patch this to older versions (i,e. 9.2, 9.1, ..)? > Yes, this should be backpatched to 9.2, 9.1, 9.0, too. Perhaps, 9.1 needs another fix here. Does the following look suspicious? *** expected/hs_standby_functions.out 2014-06-05 06:26:30.000000000 +0900 --- results/hs_standby_functions.out 2014-06-05 16:49:02.200931657 +0900 *************** *** 32,38 **** from pg_locks where virtualxid = '1/1'; locktype | virtualxid | virtualtransaction | mode | granted------------+------------+--------------------+---------------+--------- ! virtualxid | 1/1 | 1/0 | ExclusiveLock | t (1 row) -- suicide is painless --- 32,38 ---- from pg_locks where virtualxid = '1/1'; locktype | virtualxid | virtualtransaction | mode | granted------------+------------+--------------------+---------------+--------- ! virtualxid | 1/1 | 1/1 | ExclusiveLock | t (1 row) -- suicide is painless -- Amit
On 2014-06-05 16:56:08 +0900, Amit Langote wrote: > On Thu, Jun 5, 2014 at 4:09 PM, Fujii Masao <masao.fujii@gmail.com> wrote: > > Do we need to back-patch this to older versions (i,e. 9.2, 9.1, ..)? > > > > Yes, this should be backpatched to 9.2, 9.1, 9.0, too. I don't think it really needs to go to 9.0 - that didn't have serializable. And before that it was fine to use serializable on a HS standby. Greetings, Andres Freund -- Andres Freund http://www.2ndQuadrant.com/PostgreSQL Development, 24x7 Support, Training & Services
On Thu, Jun 5, 2014 at 5:37 PM, Andres Freund <andres@2ndquadrant.com> wrote: > On 2014-06-05 16:56:08 +0900, Amit Langote wrote: >> On Thu, Jun 5, 2014 at 4:09 PM, Fujii Masao <masao.fujii@gmail.com> wrote: >> > Do we need to back-patch this to older versions (i,e. 9.2, 9.1, ..)? >> > >> >> Yes, this should be backpatched to 9.2, 9.1, 9.0, too. > > I don't think it really needs to go to 9.0 - that didn't have > serializable. And before that it was fine to use serializable on a HS > standby. > Yeah, you are right, s 9.0 hot standby server does allow to - [amit@localhost git]$ psql postgres -p 15432 Timing is on. psql (9.0.17) postgres=# begin transaction isolation level serializable; BEGIN whereas - [amit@localhost git]$ psql postgres -p 15432 Timing is on. psql (9.1.13) Type "help" for help. postgres=# begin transaction isolation level serializable; ERROR: cannot use serializable mode in a hot standby HINT: You can use REPEATABLE READ instead. Perhaps just the s/VACUUM/ANALYZE part for 9.0 then -- Amit