On Thu, 2007-09-06 at 12:43 +0200, hubert depesz lubaczewski wrote:
> steps to reproduce:
> session1: connect using user1 to database1.
> session2: connect using user2 to database2.
> session1: create table x ( y int);
> session2: begin;
> session1: create index concurrently q on x(y);
> it hangs.
> session2: rollback/commit;
> session1: finishes.
> 
> i dont really see why this would be neccessary - i understand that we
> need to wait for transactions in the same db, but waiting for
> transaction in another database?
> 
> i tested it on 8.2.4 and 8.3devel from cvs-head, fetched 3 days ago.

Manual says "and in addition it must wait for all existing transactions
to terminate." This is needed for MVCC correctness and its not a bug.

http://www.postgresql.org/docs/8.2/static/sql-createindex.html

-- 
  Simon Riggs
  2ndQuadrant  http://www.2ndQuadrant.com


---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?

               http://www.postgresql.org/docs/faq

Reply via email to