On Sat, Dec 12, 2015 at 8:03 AM, Amit Kapila <amit.kapil...@gmail.com> wrote:
>> I think it might be >> advantageous to have at least two groups because otherwise things >> might slow down when some transactions are rolling over to a new page >> while others are still in flight for the previous page. Perhaps we >> should try it both ways and benchmark. >> > > Sure, I can do the benchmarks with both the patches, but before that > if you can once check whether group_slots_update_clog_v3.patch is inline > with what you have in mind then it will be helpful. Benchmarking sounds good. This looks broadly like what I was thinking about, although I'm not very sure you've got all the details right. Some random comments: - TransactionGroupUpdateXidStatus could do just as well without add_proc_to_group. You could just say if (group_no >= NUM_GROUPS) break; instead. Also, I think you could combine the two if statements inside the loop. if (nextidx != INVALID_PGPROCNO && ProcGlobal->allProcs[nextidx].clogPage == proc->clogPage) break; or something like that. - memberXid and memberXidstatus are terrible names. Member of what? That's going to be clear as mud to the next person looking at the definitiono f PGPROC. And the capitalization of memberXidstatus isn't even consistent. Nor is nextupdateXidStatusElem. Please do give some thought to the names you pick for variables and structure members. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers