RE: Re: Strangeness in xid allocation / snapshot setup

From: "Mikheev, Vadim" <vmikheev(at)SECTORBASE(dot)COM>
To: "'Tom Lane'" <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-hackers(at)postgreSQL(dot)org
Subject: RE: Re: Strangeness in xid allocation / snapshot setup
Date: 2001-07-12 18:48:27
Message-ID: 3705826352029646A3E91C53F7189E320166C9@sectorbase2.sectorbase.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

> >> Given this, I'm wondering why we bother with having a separate
> >> XidGenLock spinlock at all. Why not eliminate it and use SInval
> >> spinlock to lock GetNewTransactionId and ReadNewTransactionId?
>
> > Reading all MyProc in GetSnashot may take long time - why disallow
> > new Tx to begin.
>
> Because we need to synchronize? It bothers me that we're assuming
> that fetching/storing XIDs is atomic. There's no possibility at all
> of going to 8-byte XIDs as long as the code is like this.
>
> I doubt that a spinlock per PROC structure would be a better answer,
> either; the overhead of getting and releasing each lock would be
> nontrivial, considering the small number of instructions spent at
> each PROC in these routines.

Isn't spinlock just a few ASM instructions?... on most platforms...

Vadim

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2001-07-12 18:50:38 Re: Rule recompilation
Previous Message P. Dwayne Miller 2001-07-12 18:45:09 select count...