Lists: | pgsql-hackers |
---|
From: | Andrew Gierth <andrew(at)tao11(dot)riddles(dot)org(dot)uk> |
---|---|
To: | pgsql-hackers(at)postgresql(dot)org |
Subject: | hstore patch, part 2 |
Date: | 2009-03-24 18:51:43 |
Message-ID: | 87skl2rby8.fsf@news-spur.riddles.org.uk |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-hackers |
Patch attached, also available at
http://www.rhodiumtoad.org.uk/junk/hstore_20090324.patch.txt
The user-visible changes are:
- removal of previous 65535-byte limit on keys/values; both keys and
values can now be as long as desired, within the 1GB limit for the
whole hstore value (though you'll find a lot of stuff errors if
you have hstores over 500MB, so don't try it).
- support for btree and hash opclasses (allows hstores to be
compared for equality, aggregated, and have UNIQUE indexes)
- binary I/O now supported
- many new functions and operators:
hstore -> text[] returns text[] (slice to value array)
hstore => text[] returns hstore (slice to new hstore)
hstore ?| text[] returns boolean (check for any of a list of keys)
hstore ?& text[] returns boolean (check for all of a list of keys)
hstore - text returns hstore (delete one element)
hstore - text[] returns hstore (delete many elements)
hstore - hstore returns hstore (delete matching pairs)
text[] => text[] returns hstore (construct from key/value arrays)
hstore = hstore returns hstore (equality)
hstore <> hstore returns hstore (inequality)
record #= hstore returns record (see populate_record)
- GiST and GIN support for ?| and ?& operators
- conversions between hstore and record values:
hstore(record) - construct an hstore from a record
populate_record(record,hstore)
- fill in fields of a record as specified by an hstore
(actually it's (anyelement,hstore) but it errors out if
the parameter isn't composite)
By popular demand, a version of this will go up on pgfoundry for use
with 8.3 etc.
--
Andrew (irc:RhodiumToad)
Attachment | Content-Type | Size |
---|---|---|
hstore_20090324.patch.gz | application/octet-stream | 22.8 KB |
From: | Andrew Gierth <andrew(at)tao11(dot)riddles(dot)org(dot)uk> |
---|---|
To: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: hstore patch, part 2 |
Date: | 2009-03-24 19:14:13 |
Message-ID: | 87ocvqrawq.fsf@news-spur.riddles.org.uk |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-hackers |
>>>>> "Andrew" == Andrew Gierth <andrew(at)tao11(dot)riddles(dot)org(dot)uk> writes:
Andrew> - many new functions and operators:
Andrew> hstore = hstore returns hstore (equality)
Andrew> hstore <> hstore returns hstore (inequality)
Of course those should be
hstore = hstore returns boolean (equality)
hstore <> hstore returns boolean (inequality)
(they are correct in the code)
--
Andrew.
From: | "David E(dot) Wheeler" <david(at)kineticode(dot)com> |
---|---|
To: | Andrew Gierth <andrew(at)tao11(dot)riddles(dot)org(dot)uk> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: hstore patch, part 2 |
Date: | 2009-03-24 22:38:18 |
Message-ID: | 7AD94081-DE7D-444A-A949-EB08D03C1A34@kineticode.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-hackers |
On Mar 24, 2009, at 2:51 PM, Andrew Gierth wrote:
> By popular demand, a version of this will go up on pgfoundry for use
> with 8.3 etc.
Wow. Nice stuff! I hope it's not too late for 8.4…
Best,
David
From: | Josh Berkus <josh(at)agliodbs(dot)com> |
---|---|
To: | "David E(dot) Wheeler" <david(at)kineticode(dot)com> |
Cc: | Andrew Gierth <andrew(at)tao11(dot)riddles(dot)org(dot)uk>, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: hstore patch, part 2 |
Date: | 2009-03-25 00:50:14 |
Message-ID: | 49C97FC6.2090206@agliodbs.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-hackers |
On 3/24/09 3:38 PM, David E. Wheeler wrote:
> On Mar 24, 2009, at 2:51 PM, Andrew Gierth wrote:
>
>> By popular demand, a version of this will go up on pgfoundry for use
>> with 8.3 etc.
>
> Wow. Nice stuff! I hope it's not too late for 8.4…
It is for anything but the undocumented size limits, which are a bug.
Let's please not add any more patches to 8.4.
--Josh
From: | Andrew Gierth <andrew(at)tao11(dot)riddles(dot)org(dot)uk> |
---|---|
To: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: hstore patch, part 2 |
Date: | 2009-03-25 01:11:23 |
Message-ID: | 877i2equdg.fsf@news-spur.riddles.org.uk |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-hackers |
>>>>> "David" == "David E Wheeler" <david(at)kineticode(dot)com> writes:
> On Mar 24, 2009, at 2:51 PM, Andrew Gierth wrote:
>> By popular demand, a version of this will go up on pgfoundry for
>> use with 8.3 etc.
David> Wow. Nice stuff! I hope it's not too late for 8.4…
I personally have no expectation of it getting into 8.4. (If someone
decides it's a nice no-brainer that could go in, well that's fine by
me, but I really don't think it likely.)
In the absence of feedback to the contrary, I will submit it for the
first commitfest of 8.5, and maintain the pgfoundry version for 8.3
and 8.4.
--
Andrew (irc:RhodiumToad)
From: | Bruce Momjian <bruce(at)momjian(dot)us> |
---|---|
To: | Andrew Gierth <andrew(at)tao11(dot)riddles(dot)org(dot)uk> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: hstore patch, part 2 |
Date: | 2009-04-09 16:33:24 |
Message-ID: | 200904091633.n39GXOC15751@momjian.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-hackers |
Andrew Gierth wrote:
> >>>>> "David" == "David E Wheeler" <david(at)kineticode(dot)com> writes:
>
> > On Mar 24, 2009, at 2:51 PM, Andrew Gierth wrote:
> >> By popular demand, a version of this will go up on pgfoundry for
> >> use with 8.3 etc.
>
> David> Wow. Nice stuff! I hope it's not too late for 8.4?
>
> I personally have no expectation of it getting into 8.4. (If someone
> decides it's a nice no-brainer that could go in, well that's fine by
> me, but I really don't think it likely.)
>
> In the absence of feedback to the contrary, I will submit it for the
> first commitfest of 8.5, and maintain the pgfoundry version for 8.3
> and 8.4.
Andrew, do you want to add it to the 8.5 commitfest:
http://wiki.postgresql.org/wiki/CommitFestInProgress
--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +
From: | Andrew Gierth <andrew(at)tao11(dot)riddles(dot)org(dot)uk> |
---|---|
To: | bruce(at)momjian(dot)us (Bruce Momjian), pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: hstore patch, part 2 |
Date: | 2009-04-09 16:55:24 |
Message-ID: | 87prflix6r.fsf@news-spur.riddles.org.uk |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-hackers |
>>>>> "Bruce" == Bruce Momjian <bruce(at)momjian(dot)us> writes:
>> In the absence of feedback to the contrary, I will submit it for
>> the first commitfest of 8.5, and maintain the pgfoundry version
>> for 8.3 and 8.4.
Bruce> Andrew, do you want to add it to the 8.5 commitfest:
I will do so soon but I need to revise it slightly first to account
for the GIN changes.
--
Andrew (irc:RhodiumToad)