From:
KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
To:
Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
Cc:
KaiGai Kohei <kaigai(at)kaigai(dot)gr(dot)jp>,
Alvaro Herrera <alvherre(at)commandprompt(dot)com>,
Robert Haas <robertmhaas(at)gmail(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>,
Jaime Casanova <jcasanov(at)systemguards(dot)com(dot)ec>,
Greg Smith <greg(at)2ndquadrant(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject:
Re: Largeobject Access Controls (r2460)
Date:
2010-02-10 00:39:56
Message-ID:
4B72005C.8090706@ak.jp.nec.com (view raw or flat )
Thread:
2009-11-13 04:32:36 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2009-12-03 17:49:03 from Jaime Casanova <jcasanov(at)systemguards(dot)com(dot)ec>
2009-12-03 17:53:43 from Robert Haas <robertmhaas(at)gmail(dot)com>
2009-12-03 18:23:01 from Greg Smith <greg(at)2ndquadrant(dot)com>
2009-12-03 19:13:10 from Robert Haas <robertmhaas(at)gmail(dot)com>
2009-12-03 19:25:06 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2009-12-03 20:18:47 from Robert Haas <robertmhaas(at)gmail(dot)com>
2009-12-03 20:33:51 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2009-12-03 20:46:44 from Robert Haas <robertmhaas(at)gmail(dot)com>
2009-12-03 20:50:37 from Greg Smith <greg(at)2ndquadrant(dot)com>
2009-12-04 02:52:03 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2009-12-04 03:39:12 from Itagaki Takahiro <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2009-12-04 03:42:26 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2009-12-04 05:35:10 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2009-12-07 04:19:40 from Greg Smith <greg(at)2ndquadrant(dot)com>
2009-12-07 04:42:54 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2009-12-07 16:13:57 from "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
2009-12-07 04:46:59 from Jaime Casanova <jcasanov(at)systemguards(dot)com(dot)ec>
2009-12-07 05:07:27 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2009-12-10 05:56:56 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2009-12-10 06:46:27 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2009-12-11 01:16:56 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2009-12-11 03:02:41 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2009-12-11 03:41:56 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2009-12-16 22:25:33 from Robert Haas <robertmhaas(at)gmail(dot)com>
2009-12-16 23:18:17 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2009-12-17 04:20:57 from Robert Haas <robertmhaas(at)gmail(dot)com>
2009-12-17 04:57:58 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2009-12-17 05:10:58 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2009-12-17 14:16:59 from Robert Haas <robertmhaas(at)gmail(dot)com>
2009-12-18 00:27:51 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2009-12-18 04:11:56 from Robert Haas <robertmhaas(at)gmail(dot)com>
2009-12-18 06:48:13 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2009-12-18 08:44:42 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2009-12-18 14:00:47 from Robert Haas <robertmhaas(at)gmail(dot)com>
2009-12-19 01:55:33 from Robert Haas <robertmhaas(at)gmail(dot)com>
2009-12-19 02:48:15 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2009-12-19 03:05:47 from Robert Haas <robertmhaas(at)gmail(dot)com>
2009-12-21 00:39:38 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2009-12-22 05:46:59 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2009-12-22 17:13:02 from Robert Haas <robertmhaas(at)gmail(dot)com>
2010-01-21 07:52:25 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2010-01-21 08:31:14 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2010-01-21 10:42:30 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2010-01-21 23:55:06 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2010-01-22 05:45:15 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2010-01-22 20:12:03 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2010-01-22 20:46:40 from "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
2010-01-22 20:55:24 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2010-01-22 21:02:16 from "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
2010-01-22 21:05:46 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2010-01-22 21:13:30 from "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
2010-01-22 22:27:42 from "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
2010-01-23 14:48:03 from "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
2010-01-23 15:55:30 from "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
2010-01-23 16:32:37 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2010-01-23 07:39:17 from KaiGai Kohei <kaigai(at)kaigai(dot)gr(dot)jp>
2010-01-23 16:36:01 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2010-01-24 17:35:38 from "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
2010-01-24 17:53:35 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2010-01-24 17:56:49 from "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
2010-01-24 18:06:16 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2010-01-25 16:53:32 from "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
2010-01-25 18:10:38 from "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
2010-01-25 18:24:23 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2010-01-25 18:41:43 from "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
2010-01-25 19:06:54 from "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
2010-01-25 19:46:25 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2010-01-28 02:42:15 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2010-01-28 09:21:43 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2010-01-28 15:31:34 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2010-01-28 23:40:19 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2010-01-29 07:15:54 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2010-02-01 05:19:16 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2010-02-01 07:10:16 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2010-02-02 00:33:41 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2010-02-02 01:55:41 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2010-02-02 04:49:52 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2010-02-03 15:20:52 from Robert Haas <robertmhaas(at)gmail(dot)com>
2010-02-04 08:30:39 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2010-02-04 09:38:03 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2010-02-04 17:34:33 from Robert Haas <robertmhaas(at)gmail(dot)com>
2010-02-04 18:27:44 from Alvaro Herrera <alvherre(at)commandprompt(dot)com>
2010-02-04 21:17:07 from KaiGai Kohei <kaigai(at)kaigai(dot)gr(dot)jp>
2010-02-05 04:53:32 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2010-02-05 04:59:36 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2010-02-05 06:57:40 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2010-02-08 05:17:16 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2010-02-08 13:23:11 from Alvaro Herrera <alvherre(at)commandprompt(dot)com>
2010-02-09 05:03:12 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2010-02-09 11:16:07 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2010-02-09 12:18:22 from KaiGai Kohei <kaigai(at)kaigai(dot)gr(dot)jp>
2010-02-10 00:39:56 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2010-02-10 02:26:58 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2009-12-19 01:58:32 from Robert Haas <robertmhaas(at)gmail(dot)com>
2009-12-19 02:51:52 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2009-12-19 03:15:50 from Robert Haas <robertmhaas(at)gmail(dot)com>
2009-12-11 04:23:45 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2009-12-11 04:57:27 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2009-12-11 05:10:29 from Jaime Casanova <jcasanov(at)systemguards(dot)com(dot)ec>
2009-12-11 05:54:47 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2009-12-11 05:17:31 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2009-12-11 05:24:19 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2009-12-11 07:17:53 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2009-12-11 07:35:22 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2009-12-11 07:46:22 from KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
2009-12-11 08:34:11 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2009-12-11 08:48:07 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2009-12-12 04:04:55 from KaiGai Kohei <kaigai(at)kaigai(dot)gr(dot)jp>
2009-12-14 00:40:29 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2009-12-11 15:39:22 from Bruce Momjian <bruce(at)momjian(dot)us>
2009-12-11 15:59:04 from KaiGai Kohei <kaigai(at)kaigai(dot)gr(dot)jp>
2009-12-11 16:42:20 from Bruce Momjian <bruce(at)momjian(dot)us>
2009-12-13 01:24:20 from Bruce Momjian <bruce(at)momjian(dot)us>
2009-12-13 01:39:22 from Bruce Momjian <bruce(at)momjian(dot)us>
2009-12-13 01:55:29 from KaiGai Kohei <kaigai(at)kaigai(dot)gr(dot)jp>
2009-12-13 02:15:42 from Bruce Momjian <bruce(at)momjian(dot)us>
2009-12-13 02:31:01 from Bruce Momjian <bruce(at)momjian(dot)us>
2009-12-13 03:48:11 from KaiGai Kohei <kaigai(at)kaigai(dot)gr(dot)jp>
2009-12-14 00:26:23 from Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
2009-12-16 22:20:33 from Bruce Momjian <bruce(at)momjian(dot)us>
Lists:
pgsql-hackers
(2010/02/09 21:18), KaiGai Kohei wrote:
> (2010/02/09 20:16), Takahiro Itagaki wrote:
>>
>> KaiGai Kohei<kaigai(at)ak(dot)jp(dot)nec(dot)com> wrote:
>>
>>>> I don't think this is necessarily a good idea. We might decide to treat
>>>> both things separately in the future and it having them represented
>>>> separately in the dump would prove useful.
>>>
>>> I agree. From design perspective, the single section approach is more
>>> simple than dual section, but its change set is larger than the dual.
>>
>> OK.
>>
>>
>> When I tested a custom dump with pg_restore, --clean&
>> --single-transaction
>> will fail with the new dump format because it always call lo_unlink()
>> even if the large object doesn't exist. It comes from dumpBlobItem:
>>
>> ! dumpBlobItem(Archive *AH, BlobInfo *binfo)
>> ! appendPQExpBuffer(dquery, "SELECT lo_unlink(%s);\n", binfo->dobj.name);
>>
>> The query in DropBlobIfExists() could avoid errors -- should we use it
>> here?
>> | SELECT lo_unlink(oid) FROM pg_largeobject_metadata WHERE oid = %s;
>
> Yes, we can use this query to handle --clean option.
> I'll fix it soon.
The attached patch fixed up the cleanup query as follows:
+ appendPQExpBuffer(dquery,
+ "SELECT pg_catalog.lo_unlink(oid) "
+ "FROM pg_catalog.pg_largeobject_metadata "
+ "WHERE oid = %s;\n", binfo->dobj.name);
And, I also noticed that lo_create() was not prefixed by "pg_catalog.",
so I also add it.
Rest of parts were not changed.
Thanks,
>> BTW, --clean option is ambiguous if combined with --data-only. Restoring
>> large objects fails for the above reason if previous objects don't exist,
>> but table data are restored *without* truncation of existing data. Will
>> normal users expect TRUNCATE-before-load for --clean& --data-only cases?
>>
>> Present behaviors are;
>> Table data - Appended. (--clean is ignored)
>> Large objects - End with an error if object doesn't exist.
>> IMO, ideal behaviors are:
>> Table data - Truncate existing data and load new ones.
>> Large objects - Work like as MERGE (or REPLACE, UPSERT).
>>
>> Comments?
>
> In the existing "BLOBS" section, it creates and restores large objects
> in same time. And, it also unlink existing large object (if exists)
> just before restoring them, when --clean is given.
>
> In my opinion, when --clean is given, it also should truncate the table
> before restoring, even if --data-only is co-given.
>
> Thanks,
--
OSS Platform Development Division, NEC
KaiGai Kohei <kaigai(at)ak(dot)jp(dot)nec(dot)com>
In response to
Responses
pgsql-hackers by date
Next :From: Kris JurkaDate: 2010-02-10 00:47:18
Subject : Re: Avoiding bad prepared-statement plans.
Previous :From : Tom LaneDate : 2010-02-10 00:32:14
Subject : Re: Some belated patch review for "Buffers" explain analyze patch