From: | Gregory Stark <stark(at)enterprisedb(dot)com> |
---|---|
To: | "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | "Alvaro Herrera" <alvherre(at)commandprompt(dot)com>, "Simon Riggs" <simon(at)2ndquadrant(dot)com>, "Kim" <kim(at)myemma(dot)com>, <pgsql-performance(at)postgresql(dot)org>, <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: [PERFORM] unusual performance for vac following 8.2upgrade |
Date: | 2007-01-12 12:43:42 |
Message-ID: | 874pqwwh35.fsf@stark.xeocode.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers pgsql-performance |
"Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us> writes:
> 3. What about dependencies on user-defined types, functions, etc?
> How will you get things to behave sanely if one backend tries to drop a
> type that some other backend is using in a column of a temp table? Even
> if you put entries into pg_depend, which would kind of defeat the point
> of not having on-disk catalog entries for temp tables, I don't see how
> the other backend figures out what the referencing object is.
We could just lock the object it depends on. Only really makes sense for very
temporary tables though, not tables a session expects to use for a long series
of transactions.
Another direction to go to address the same problem would be to implement the
standard temporary table concept of a permanent table definition for which
each session gets a different actual set of data which is reset frequently.
Then the meta-data isn't changing frequently.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2007-01-12 12:47:27 | Re: Corrupt database? 8.1/FreeBSD6.0 |
Previous Message | Jeff Amiel | 2007-01-12 12:28:05 | Re: Corrupt database? 8.1/FreeBSD6.0 |
From | Date | Subject | |
---|---|---|---|
Next Message | Jim C. Nasby | 2007-01-12 17:33:06 | Re: [PERFORM] unusual performance for vac following 8.2upgrade |
Previous Message | Gauri Kanekar | 2007-01-12 11:40:04 | Partitioning |