Re: [Fwd: Re: Transactions and temp tables]

Поиск
Список
Период
Сортировка
От Heikki Linnakangas
Тема Re: [Fwd: Re: Transactions and temp tables]
Дата
Msg-id 4951156D.5080803@enterprisedb.com
обсуждение исходный текст
Ответ на [Fwd: Re: Transactions and temp tables]  (Emmanuel Cecchet <manu@asterdata.com>)
Ответы Re: [Fwd: Re: Transactions and temp tables]  (Emmanuel Cecchet <manu@asterdata.com>)
Re: [Fwd: Re: Transactions and temp tables]  (Bruce Momjian <bruce@momjian.us>)
Список pgsql-hackers
Emmanuel Cecchet wrote:
> I just saw that this new patch was not considered because the previous 
> version ended being rejected.
> Note that this version of the patch aims at supporting ONLY temp tables 
> that are created AND dropped in the same transaction. We need to be able 
> to use temp tables in transactions that are doing 2PC, but the temp 
> table lifespan does not need to cross transaction boundaries.
> 
> Please let me know if this patch could be integrated in 8.4.

IMHO, this is just getting too kludgey. We came up with pretty good 
ideas on how to handle temp tables properly, by treating the same as 
non-temp tables. That should eliminate all the problems the latest patch 
did, and also the issues with sequences, and allow all access to temp 
tables, not just a limited subset. I don't think it's worthwhile to 
apply the kludge as a stopgap measure, let's do it properly in 8.5.

As a workaround, you can use a regular table instead of a temporary one. 
If you create and drop the regular table in the same transaction (that's 
the same limitation that latest patch has), you won't end up with a 
bogus table in your database if the connection is dropped unexpectedly. 
If your application uses multiple connections simultaenously, you'll 
need a little bit of code in the application so that you don't try to 
create a table with the same name in all backends. You could also create 
a different schema for each connection, and do "set 
search_path='semitempschemaX, public'", so that you can use the same 
table name and still have separate tables for each connections.

(sorry for the late reply)

--   Heikki Linnakangas  EnterpriseDB   http://www.enterprisedb.com


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Heikki Linnakangas
Дата:
Сообщение: Synchronous replication, network protocol
Следующее
От: Simon Riggs
Дата:
Сообщение: Re: Synchronous replication, reading WAL for sending