Re: Unlogged vs. In-Memory

From: Simon Riggs <simon(at)2ndQuadrant(dot)com>
To: Magnus Hagander <magnus(at)hagander(dot)net>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, Alvaro Herrera <alvherre(at)commandprompt(dot)com>, Thom Brown <thom(at)linux(dot)com>, Rob Wultsch <wultsch(at)gmail(dot)com>, Joshua Berkus <josh(at)agliodbs(dot)com>, PostgreSQL Advocacy <pgsql-advocacy(at)postgresql(dot)org>
Subject: Re: Unlogged vs. In-Memory
Date: 2011-05-05 19:00:51
Message-ID: BANLkTin=V7jExLKU_ABYpruRNMimQj5R2Q@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-advocacy pgsql-hackers

On Thu, May 5, 2011 at 7:53 PM, Magnus Hagander <magnus(at)hagander(dot)net> wrote:
> On Thu, May 5, 2011 at 19:30, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
>> On Wed, May 4, 2011 at 4:19 PM, Simon Riggs <simon(at)2ndquadrant(dot)com> wrote:
>>>> Well, the _init fork can go arbitrarily long without being used, so
>>>> you can't put any unfrozen tuples in there.  There may be some game
>>>> that can be played here, but it's not simple, especially since the
>>>> heap and indices have to stay in sync.
>>>
>>> I don't think that's a sufficient response. It's clear that people
>>> expect unlogged tables would be used in conjunction with RAM disks,
>>> but they clearly don't work in that situation.
>>>
>>> That is exactly the main use case of "cache tables".
>>
>> I think it's a bit harsh to say that they "don't work".  As I
>> understand it, the use case that Rob is seeking here is the ability to
>> create a table space on a RAM disk and put unlogged tables (only) into
>> it and have everything continue to work after a reboot obliterates the
>> contents of the RAM disk.  Fair enough - I can understand why that
>> would be useful, but I don't think we've ever promised anyone that
>> blowing away a tablespace was a safe operation.  It might actually be
>> safe if only temporary tables are involved... assuming that the mount
>> point was the PG_<version>_<catversion> directory, rather than the
>> tablespace directory proper... but I doubt that we've ever documented
>> that anywhere, or promised that it would continue working in future
>> releases.  It's a new idea to me, anyhow.
>
> I don't believe we do.

We didn't have UNLOGGED tables before, so it never came up.

We should be listening to the feedback of what will make this better.

> However, it would in a lot of cases be very useful to have osmething
> like CREATE TEMPORARY TABLESPACE <blah>. Which would only accept
> temporary (and maybe unlogged) tables. And then would auto-create the
> PG_<version>_<catversion> directory upon startup.
>
> That's obviously a 9.2 feature though, it's not an adjustment of an
> existing one, it's brand new :-)

Yes, that's a nice feature for 9.2

--
 Simon Riggs                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services

In response to

Responses

Browse pgsql-advocacy by date

  From Date Subject
Next Message Kevin Grittner 2011-05-05 19:09:09 Re: Unlogged vs. In-Memory
Previous Message Josh Berkus 2011-05-05 18:59:49 Re: Unlogged vs. In-Memory

Browse pgsql-hackers by date

  From Date Subject
Next Message Kevin Grittner 2011-05-05 19:09:09 Re: Unlogged vs. In-Memory
Previous Message Kevin Grittner 2011-05-05 19:00:12 Re: Visibility map and hint bits