agora inbox for [email protected]  
help / color / mirror / Atom feed
From: Emmanuel Cecchet <[email protected]>
To: Heikki Linnakangas <[email protected]>
Cc: [email protected]
Subject: Re: Transactions and temp tables
Date: Tue, 07 Oct 2008 13:00:39 -0400
Message-ID: <[email protected]> (raw)
In-Reply-To: <[email protected]>
References: <[email protected]>
	<[email protected]>

Hi Heikki,

> The patch allows preparing any transaction that has dropped the temp 
> table, even if it wasn't created in the same transaction. Is that sane?
If you have a temp table created with an 'on commit delete rows' option 
in another transaction, it would be fine to drop it in another 
transaction. If the temp table was created without any on commit option, 
it could only cross prepare commit if it is empty and then it could be 
safely dropped in another transaction. That does not seem to insane for 
me if you need temp tables for a session.
> Also, even if the table is created and dropped in the same 
> transaction, a subsequent transaction that tries to create and drop 
> the table gets blocked on the lock. I suppose we could just say that 
> that's the way it works, but I'm afraid it will come as a nasty 
> surprise, making the feature a lot less useful.
I do not get that one, if the table is dropped in the transaction the 
lock is released. Why would another transaction be blocked when trying 
to create/drop another temp table?
When I run my test cases (see attached file in previous mail), I 
create/drop multiple times the same temp table in different transactions 
and I do not experience any blocking.
> The fixed-size array of temp table oids is an unnecessary limitation. 
> A list or hash table would be better.
You are right, I will fix that.
>> Let me know what you think of the patch and if it could be applied to 
>> 8.3 and 8.4?
> Not to 8.3. We only back-patch bug-fixes, and this isn't one.
Ok understood.

Thanks for your feedback and don't hesitate to enlighten me on the 
potential locking issue I did not understand.
Emmanuel

-- 
Emmanuel Cecchet
FTO @ Frog Thinker 
Open Source Development & Consulting
--
Web: http://www.frogthinker.org
email: [email protected]
Skype: emmanuel_cecchet




view thread (37+ messages)  latest in thread

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected]
  Subject: Re: Transactions and temp tables
  In-Reply-To: <[email protected]>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox