Re: [HACKERS] contrib loose ends: 9.0 to 9.1 incompatibilities

2011-02-16 Thread David E. Wheeler
On Feb 16, 2011, at 1:20 PM, Dimitri Fontaine wrote: We will then need build-time requires (build-depends would say debian) so that the system knows what's needed to run the install or upgrade scripts. I've been thinking that's for 9.2, but maybe that would be a simpler fix for you here.

Re: [HACKERS] tsearch Parser Hacking

2011-02-16 Thread David E. Wheeler
On Feb 14, 2011, at 11:44 PM, Oleg Bartunov wrote: IMO, sooner or later we need to trash that code and replace it with something a bit more modification-friendly. We thought about configurable parser, but AFAIR, we didn't get any support for this at that time. What would it take to change

Re: [HACKERS] Usability tweaks for extension commands

2011-02-16 Thread David E. Wheeler
On Feb 16, 2011, at 3:00 PM, Tom Lane wrote: According to our prior discussions of C.O.R. commands, the general principle that such a command ought to follow is that upon success, the object exists with exactly the properties implied by the command's arguments. So (1) if the extension isn't

Re: [HACKERS] arrays as pl/perl input arguments [PATCH]

2011-02-15 Thread David E. Wheeler
On Feb 15, 2011, at 6:39 AM, Alexey Klyukin wrote: After I re-added the closing /para in plperl.sgml:235 these errors disappeared, and the resulting html looks fine too. v10 with just this single change is attached. So is this ready for committer? Best, David -- Sent via pgsql-hackers

Re: [HACKERS] arrays as pl/perl input arguments [PATCH]

2011-02-15 Thread David E. Wheeler
On Feb 15, 2011, at 9:49 AM, Alexey Klyukin wrote: After I re-added the closing /para in plperl.sgml:235 these errors disappeared, and the resulting html looks fine too. v10 with just this single change is attached. So is this ready for committer? Yes. Awesom, thanks Alexey Alex!

Re: [HACKERS] why two dashes in extension load files

2011-02-15 Thread David E. Wheeler
On Feb 15, 2011, at 12:32 PM, Tom Lane wrote: Aside from the double-dash method, we kicked around using colons and pluses as separators (and then forbidding just those characters in extension and version names). Any of those would be workable, but it's not clear to me that any of them have

Re: [HACKERS] FOR KEY LOCK foreign keys

2011-02-15 Thread David E. Wheeler
On Feb 15, 2011, at 1:15 PM, Robert Haas wrote: Yeah, that bug is fixed with the attached, though I am rethinking this bit. I am thinking that the statute of limitations has expired on this patch, and that we should mark it Returned with Feedback and continue working on it for 9.2. I know

Re: [HACKERS] Usability tweaks for extension commands

2011-02-15 Thread David E. Wheeler
On Feb 15, 2011, at 5:18 PM, Tom Lane wrote: Currently, ALTER EXTENSION UPDATE throws an error if there's nothing to do: regression=# create extension adminpack ; CREATE EXTENSION regression=# alter extension adminpack update; ERROR: version to install or update to must be different from

Re: [HACKERS] why two dashes in extension load files

2011-02-14 Thread David E. Wheeler
On Feb 14, 2011, at 8:54 AM, Tom Lane wrote: I'm not convinced. There was nothing in that discussion why any particular character would have to be allowed in a version number. Well, there's already a counterexample in the current contrib stuff: uuid-ossp. We could rename that to uuid_ossp

Re: [HACKERS] why two dashes in extension load files

2011-02-14 Thread David E. Wheeler
On Feb 14, 2011, at 9:14 AM, Tom Lane wrote: Commas do not seem like an improvement to me at all --- they are widely used as list separators. Fair enough. I guess the real question is what's Peter's concrete objection to the double-dash method? Hey, I know, a double-dash between the

[HACKERS] tsearch Parser Hacking

2011-02-14 Thread David E. Wheeler
Hackers, Is it possible to modify the default tsearch parser so that / doesn't get lexed as a file token? That is, instead of this: try=# select * from ts_debug('simple'::regconfig, 'w/d'); alias │description│ token │ dictionaries │ dictionary │ lexemes

Re: [HACKERS] why two dashes in extension load files

2011-02-14 Thread David E. Wheeler
On Feb 14, 2011, at 5:03 PM, Tom Lane wrote: Are we deparsing the names of the SQL files to infer the set of version numbers we have to worry about? It seems to me that if there's a list of known version numbers somewhere, we can use dash as the separator without any special restricton.

Re: [DOCS] [HACKERS] Extension versus module

2011-02-14 Thread David E. Wheeler
On Feb 14, 2011, at 5:42 PM, Tom Lane wrote: Remember also that not all modules out there on the net will have been updated either, so we must be able to discuss extension-izing a module. (??) Right. So it seems like we ought to stick with more or less the existing terminology: those

Re: [HACKERS] tsearch Parser Hacking

2011-02-14 Thread David E. Wheeler
On Feb 14, 2011, at 3:57 PM, Tom Lane wrote: There is zero, none, nada, provision for modifying the behavior of the default parser, other than by changing its compiled-in state transition tables. It doesn't help any that said tables are baroquely designed and utterly undocumented. IMO,

Re: [HACKERS] why two dashes in extension load files

2011-02-14 Thread David E. Wheeler
On Feb 14, 2011, at 8:18 PM, Tom Lane wrote: Yes, but the truth is that the extension name, at least, is known from the control file. Yeah, I think it's true in the current code base that we always know the extension name we are interested in. However, that's no protection if we allow

Re: [HACKERS] tsearch Parser Hacking

2011-02-14 Thread David E. Wheeler
On Feb 14, 2011, at 11:37 PM, Oleg Bartunov wrote: it's not easy to hack tsearch parser, sorry. You can preparse your input before to_tsquery,to_tsvector. Yeah, I was thinking about s{/}{-}g before passing the values in. Might be the only way to do it for now… Thanks, David -- Sent via

Re: [HACKERS] Extensions vs PGXS' MODULE_PATHNAME handling

2011-02-13 Thread David E. Wheeler
On Feb 13, 2011, at 11:34 AM, Tom Lane wrote: OK, so with that, attached is an example of the complete conversion diff for a contrib module (hstore in particular). Although git status reports hstore--1.0.sql as being a rename of hstore.sql.in, git diff doesn't seem to be exceedingly bright

Re: [HACKERS] Extensions vs PGXS' MODULE_PATHNAME handling

2011-02-13 Thread David E. Wheeler
On Feb 13, 2011, at 4:46 PM, Tom Lane wrote: I sure would like it if the install script with no version in it corresponded to the latest version. Otherwise, one must rename the file every time one does a release. And as you're noting, you lose Git history that way. (1) git does know

Re: [HACKERS] Extensions vs PGXS' MODULE_PATHNAME handling

2011-02-13 Thread David E. Wheeler
On Feb 13, 2011, at 4:59 PM, Tom Lane wrote: I think after a couple of releases you'd be shipping something like foo--1.0.sql foo--1.1.sql foo--1.0--1.1.sql foo--2.0.sql foo--1.1--2.0.sql and it'll soon get to be a mess if your SCM doesn't clearly

Re: [HACKERS] Extensions vs PGXS' MODULE_PATHNAME handling

2011-02-12 Thread David E. Wheeler
On Feb 12, 2011, at 2:29 PM, Tom Lane wrote: I did think of another idea besides forbidding dash in extension names: what if we use double dash as the name/version separator, ie the naming conventions are like extension--version.control extension--version.sql

Re: [HACKERS] Extensions vs PGXS' MODULE_PATHNAME handling

2011-02-12 Thread David E. Wheeler
On Feb 12, 2011, at 3:12 PM, Tom Lane wrote: David E. Wheeler da...@kineticode.com writes: On Feb 12, 2011, at 2:29 PM, Tom Lane wrote: I did think of another idea besides forbidding dash in extension names: what if we use double dash as the name/version separator, +1 You might even

Re: [HACKERS] Extensions vs PGXS' MODULE_PATHNAME handling

2011-02-12 Thread David E. Wheeler
On Feb 12, 2011, at 3:37 PM, Tom Lane wrote: How likely is *that*? Not very, but the rules are getting a bit complicated ... Doesn't seem complicated to me: 1. Use -- to separate extension name, old version, new version 2. Don't use - at the beginning or end of name or version number 3.

Re: [HACKERS] Careful PL/Perl Release Not Required

2011-02-11 Thread David E. Wheeler
On Feb 10, 2011, at 11:43 PM, Alex Hunsaker wrote: I'd like to quibble with you over this point if I may. :-) Per perldoc: JSON::XS utf8 flag disabled When utf8 is disabled (the default), then encode/decode generate and expect Unicode strings ... So - If you are on 9.1 and a

Re: [HACKERS] Careful PL/Perl Release Not Required

2011-02-11 Thread David E. Wheeler
On Feb 11, 2011, at 9:44 AM, Alex Hunsaker wrote: It is decoded... the input string %C3%A9 actually is the _same_ string utf-8, latin1 and SQL_ASCII decoded or not. Those are all ascii characters. Calling utf8::decode(%C3%A9) is essentially a noop. No, it's not decoded. It doesn't matter

Re: [HACKERS] Careful PL/Perl Release Not Required

2011-02-11 Thread David E. Wheeler
On Feb 11, 2011, at 9:34 AM, Andrew Dunstan wrote: Is there an action item here? Is the documentation inadequate or inaccurate? If so, please make a suggestion for improved wording. I certainly expect the change to be covered in the release notes. You can check on the prominence given the

Re: [HACKERS] Careful PL/Perl Release Not Required

2011-02-11 Thread David E. Wheeler
On Feb 11, 2011, at 10:01 AM, Alex Hunsaker wrote: That *looks* like it is decoding the input string, which it is, but actually that will double utf8 encode your string. It does not seem to in this case because we are dealing with all ascii input. The trick here is its also telling perl to

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-11 Thread David E. Wheeler
On Feb 11, 2011, at 10:06 AM, Tom Lane wrote: Dimitri Fontaine dimi...@2ndquadrant.fr writes: Tom Lane t...@sss.pgh.pa.us writes: Hmm. To make that work, we'd have to have ALTER EXTENSION UPDATE use a different default version name from what CREATE EXTENSION uses (unless Yes. I see that

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-11 Thread David E. Wheeler
On Feb 11, 2011, at 9:35 AM, Tom Lane wrote: OK, let me see if I can summarize what I think we've agreed to: CREATE syntax is extended to CREATE EXTENSION extname [WITH] [SCHEMA s] [VERSION v] [FROM oldv] If VERSION is not specified, v is taken from default_version in the control

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-11 Thread David E. Wheeler
On Feb 11, 2011, at 10:30 AM, Tom Lane wrote: No --- in the current vision, a control file may describe a whole collection of versions of the same extension, and the parameter in question is selecting the default or preferred version to install. I'm not wedded to default_version, but I think

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-11 Thread David E. Wheeler
On Feb 11, 2011, at 10:58 AM, Aidan Van Dyk wrote: I release exetension afoo, initial as version 1.0. From my understanding, it's going to contain: afoo control file, named something particular) - default_version = 1.0 - encoding utf8 foo-1.0.sql installstion script and

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-11 Thread David E. Wheeler
On Feb 11, 2011, at 11:50 AM, Dimitri Fontaine wrote: It would be good to avoid regexp and globing pattern characters, I would say. There's the coma, as in foo,1.0,1.1.sql, so ugly that it's unused :) I wonder if : would be good? foo:1.0:1.1.sql. A very quick test seems to show that

Re: [HACKERS] Range Types: empty ranges

2011-02-11 Thread David E. Wheeler
On Feb 11, 2011, at 10:28 AM, Josh Berkus wrote: So, if we allow empty ranges of this kind, I would want a GUC for allow_empty_ranges. GUC you, josh. ;-P D -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription:

Re: [HACKERS] Careful PL/Perl Release Not Required

2011-02-11 Thread David E. Wheeler
On Feb 11, 2011, at 12:57 PM, Alex Hunsaker wrote: Yay! 1 Yes, this is all good. But it still seems to me that: * If your database is neither utf-8 no sql_ascii * And your PL/Perl functions expect arguments that are byte soup * Once you upgrade to 9.1 they won't be * So you'll need to encode

Re: [HACKERS] Careful PL/Perl Release Not Required

2011-02-11 Thread David E. Wheeler
On Feb 11, 2011, at 3:58 PM, Alex Hunsaker wrote: You mean... we have been talking past each other this whole time? Well, since my second post, I think. I was wrong in the first one. Olegs case _was_ a utf8 database. From his original bug: Hi there, below is the problem, which I don't

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-10 Thread David E. Wheeler
On Feb 10, 2011, at 10:26 AM, Tom Lane wrote: 1. Choose the newest available version. 2. Let the control file specify which version is the default. I think I prefer #2 because it avoids needing a rule for comparing version identifiers, and it caters to the possibility that the

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-10 Thread David E. Wheeler
On Feb 10, 2011, at 11:31 AM, Tom Lane wrote: I'm not really addressing that in this proposal. You could imagine supporting all the extension versions in one .so, or you could have one per version (meaning the upgrade scripts would have to CREATE OR REPLACE all the C functions to re-point

Re: [HACKERS] Range Type constructors

2011-02-10 Thread David E. Wheeler
On Feb 10, 2011, at 10:41 AM, Jeff Davis wrote: This might solve the constructor problem nicely if we could do things like: RANGE[10,20) But I have a feeling that will either cause a bizarre problem with the grammar, or someone will think it's not very SQL-like. I like it a lot better than

Re: [HACKERS] Range Type constructors

2011-02-10 Thread David E. Wheeler
On Feb 10, 2011, at 11:21 AM, Tom Lane wrote: It will certainly mess up syntax highlighting and matching bracket detection in pretty much all text editors... Yeah. It's a cute-looking notation but surely it will cause many more problems than it's worth. I agree with Robert's suggestion of

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-10 Thread David E. Wheeler
On Feb 10, 2011, at 12:02 PM, Tom Lane wrote: Oh, I see, you're just saying that it's not unlikely somebody could find himself with dozens of minor releases all being supported. Yeah, he'd then really need to provide shortcut upgrade scripts, and building/maintaining those would be a pain.

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-10 Thread David E. Wheeler
On Feb 10, 2011, at 12:07 PM, Robert Haas wrote: You don't need them to be sortable. You just need them to be comparable, and equality seems like a plenty good enough comparison rule. You can compute the shortest chain of upgrade scripts that can take you from the current version to the

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-10 Thread David E. Wheeler
On Feb 10, 2011, at 1:22 PM, Tom Lane wrote: Well, okay, let's go with that plan then. If we don't need to assume anything more than equality of version names being meaningful, I think chaining update scripts automatically should solve most of the complaints here. People who really want to

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-10 Thread David E. Wheeler
On Feb 10, 2011, at 1:38 PM, Tom Lane wrote: I don't deny that there are risks here. But I think the value of being able to move an extension when it is safe outweighs the difficulty that sometimes it isn't safe. I think we can leave making it safer as a topic for future investigation.

[HACKERS] Careful PL/Perl Release Not Required

2011-02-10 Thread David E. Wheeler
Hackers, With regard to this (very welcome) commit: commit 50d89d422f9c68a52a6964e5468e8eb4f90b1d95 Author: Andrew Dunstan and...@dunslane.net Date: Sun Feb 6 17:29:26 2011 -0500 Force strings passed to and from plperl to be in UTF8 encoding. String are converted to UTF8

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-10 Thread David E. Wheeler
On Feb 10, 2011, at 3:50 PM, Tom Lane wrote: It seems that we've mostly got consensus on the ideas of having a separate script file for each installable version of an extension, and for each basic version-upgrade action, with version numbers embedded in the file names so that the control

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-10 Thread David E. Wheeler
On Feb 10, 2011, at 4:11 PM, Tom Lane wrote: It's to tell it to create an empty extension in preparation for absorbing pre-existing objects from an old-style contrib module. See what I mean? WRAPPER is not a useful keyword here. Reminds me of creating a shell type so you can create I/O

Re: [HACKERS] Careful PL/Perl Release Not Required

2011-02-10 Thread David E. Wheeler
On Feb 10, 2011, at 5:28 PM, Alex Hunsaker wrote: Hrm? For UTF-8 databases, in practice, nothing should have changed-- we already passed strings in as utf8. What I fixed was some corner cases where some strings did not always have character semantics. See The Unicode Bug and Forcing Unicode

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-10 Thread David E. Wheeler
On Feb 10, 2011, at 7:05 PM, Tom Lane wrote: I like this because (a) it's one less step, and one less concept for users to deal with, and (b) it's much harder to screw up. If you forget FROM OLD when you needed it, the CREATE will fail with object already exists errors. If you use FROM OLD

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-10 Thread David E. Wheeler
On Feb 10, 2011, at 9:15 PM, Tom Lane wrote: Hmm, you're right. The word bootstrap implies that we're starting from nothing, which is exactly what we're *not* doing (starting from nothing is the easy clean install case). By the same token, FROM NOTHING isn't the right phrase either. An

Re: [HACKERS] Sync Rep for 2011CF1

2011-02-09 Thread David E. Wheeler
On Feb 9, 2011, at 9:20 AM, Robert Haas wrote: There are certainly some patches in this CommitFest that need more attention than that, and that probably need the attention of a senior community member. Jeff's range types patch and Alvaro's key lock patch are two of those. And I would be

Re: [HACKERS] Extensions versus pg_upgrade

2011-02-09 Thread David E. Wheeler
On Feb 8, 2011, at 6:48 PM, Tom Lane wrote: Like ALTER THING SET SCHEMA, ALTER THING SET EXTENSION is implicitly assuming that there can be only one owning extension for an object. Furthermore, it's not really intended for *removal* of an object from an extension (a concept that doesn't even

Re: [HACKERS] Sync Rep for 2011CF1

2011-02-09 Thread David E. Wheeler
On Feb 9, 2011, at 10:29 AM, Robert Haas wrote: Frankly, I think you should surrender some of those 14 and cajole some other folks to take on more. Happily... only trouble is, I suck at cajoling. Even my begging is distinctly sub-par. Plase? Try this: “Listen up, bitches!

Re: [HACKERS] Sync Rep for 2011CF1

2011-02-09 Thread David E. Wheeler
On Feb 9, 2011, at 10:56 AM, Robert Haas wrote: “Listen up, bitches! I'm tired of Tom and me having to do all the work. All of you who submitted patches need to review some other patches! If you haven't submitted a review for someone else's patch by commitfest end, your patches will be

Re: [HACKERS] Extensions versus pg_upgrade

2011-02-08 Thread David E. Wheeler
On Feb 8, 2011, at 9:36 AM, Robert Haas wrote: I guess I'm sort of coming to the conclusion that ALTER EXTENSION .. UPGRADE is pretty much a must-have for a useful feature regardless of this issue. I had previously thought that we might be able to limp along with half a feature for one

Re: [HACKERS] Extensions versus pg_upgrade

2011-02-08 Thread David E. Wheeler
On Feb 8, 2011, at 10:03 AM, Robert Haas wrote: No, this is not doable, or at least not in a way that provides any benefit over just dropping and reinstalling. The problem is that it is going to fall down all over the place if other objects are depending on objects provided by the extension.

Re: [HACKERS] Extensions versus pg_upgrade

2011-02-08 Thread David E. Wheeler
On Feb 8, 2011, at 10:24 AM, Tom Lane wrote: Ah, right, of course. I don't suppose CREATE OR REPLACE would work, either, in some cases at least? But figuring out just what commands to issue is pretty nearly AI-complete. The whole point of ALTER EXTENSION UPGRADE is to have a human do that

Re: [HACKERS] A different approach to extension NO USER DATA feature

2011-02-07 Thread David E. Wheeler
On Feb 7, 2011, at 8:57 AM, Tom Lane wrote: Yeah, this is another approach that one could take instead of having per-row flags. I'm not sure that it's better, much less so much better that we should force extensions to do it that way and not the other. But it's definitely another argument

Re: [HACKERS] More extension issues: ownership and search_path

2011-02-07 Thread David E. Wheeler
On Feb 7, 2011, at 9:20 AM, Dimitri Fontaine wrote: Also, I didn't bite this bullet, but maybe we should provide core PLs as extension. Then CREATE LANGUAGE would maybe get deprecated and only valid when used in an extension's script — or the next patch (UPGRADE) will take care of create a

Re: [HACKERS] More extension issues: ownership and search_path

2011-02-07 Thread David E. Wheeler
On Feb 7, 2011, at 9:51 AM, Tom Lane wrote: Interesting point. It's all right at the moment because I tweaked pg_dump_sort.c so that procedural languages are dumped before modules. But maybe we should convert the PLs to modules. s/modules/extensions/? David -- Sent via pgsql-hackers

Re: [HACKERS] More extension issues: ownership and search_path

2011-02-07 Thread David E. Wheeler
On Feb 7, 2011, at 10:23 AM, Tom Lane wrote: On reflection, the set of extensions that an extension depends on is obviously a property of the extension, which means it ought to be specified in the extension's control file, not in the CREATE EXTENSION command. So now I'm thinking something

Re: [HACKERS] A different approach to extension NO USER DATA feature

2011-02-06 Thread David E. Wheeler
On Feb 6, 2011, at 10:23 AM, Tom Lane wrote: I've not attempted to implement this idea, but offhand it looks like it would take a day or two's work, which seems well worthwhile to expend now in the hope of getting this feature right the first tim Seems worthwhile, and a much better approach.

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-04 Thread David E. Wheeler
On Feb 4, 2011, at 7:48 AM, Robert Haas wrote: I'd like to answer this question, but I have not had enough time to read through this patch in detail, because there are 97 patches in this CommitFest. The point I'm trying to make, however, is procedural. We shouldn't commit anything at the

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-04 Thread David E. Wheeler
On Feb 4, 2011, at 8:54 AM, Robert Haas wrote: Yeah, I understand. I believe Tom said he was going to look at the basic functionality with an eye toward commit, and I hope to look at it as well, either before or after it gets committed. Time permitting, I'd then like to look at this, but

Re: [HACKERS] arrays as pl/perl input arguments [PATCH]

2011-02-03 Thread David E. Wheeler
On Feb 3, 2011, at 4:23 AM, Alexey Klyukin wrote: - Making the conversion lazy would be a big help. Converting it to string is already lazy, and, per the argumens above, I don't see a real benefit of lazy conversion to the perl reference (as comparing to the hurdles of implementing that).

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-03 Thread David E. Wheeler
On Feb 3, 2011, at 9:38 AM, Tom Lane wrote: Given that pg_upgrade is now considered a supported piece of the system, ISTM that most real-world upgrade scenarios will be accomplished with pg_upgrade relying on provision (3). It looks to me like we're talking about adding a large amount of

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-03 Thread David E. Wheeler
On Feb 3, 2011, at 9:54 AM, Robert Haas wrote: I think you can pretty much take it to the bank that there will be demand. This is an important, real-world problem. That having been said, I'm not 100% convinced that the main extensions patch is ready for prime-time, and I'm even less

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-03 Thread David E. Wheeler
On Feb 3, 2011, at 10:07 AM, Tom Lane wrote: Well, pg_upgrade is designed to work within a major-version series, eg you could do a 9.1-to-9.1 upgrade if you needed to install a newer version of an extension. Admittedly, this is swinging a rather larger hammer than apply an upgrade script

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-03 Thread David E. Wheeler
On Feb 3, 2011, at 11:02 AM, Tom Lane wrote: That's putting it mildly. It's more like sending a rocket into outer space to tweak the orbit of a comet so that it crashes into your barbecue grill to light a fire so you can roast marshmallows. LOL. No, it's more like using a sledgehammer to

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-03 Thread David E. Wheeler
On Feb 3, 2011, at 11:35 AM, Josh Berkus wrote: (D) Requires a series of ordered upgrade scripts in sortable version numbering, each of which gets applied in order between the two versions. This initially seems like the most attractive option -- and is the one used by dozens of popular open

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-02 Thread David E. Wheeler
On Feb 2, 2011, at 6:45 AM, Dimitri Fontaine wrote: Well, you write 3 scripts. Let's consider an example, the lo contrib, with its 3 objects: CREATE DOMAIN lo AS pg_catalog.oid; CREATE OR REPLACE FUNCTION lo_oid(lo) … CREATE OR REPLACE FUNCTION lo_manage() … Now, the upgrade script

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-02 Thread David E. Wheeler
On Feb 2, 2011, at 9:03 AM, Dimitri Fontaine wrote: Well, fair enough I suppose. Or it would be if you gave me an alternative that provides a simpler way to support those 3 upgrades. I did: a naming convention with upgrade scripts that have the version number in them. You rejected it. Of

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-02 Thread David E. Wheeler
On Feb 2, 2011, at 9:19 AM, Dimitri Fontaine wrote: I see there no solution to your reaction here. Please take the time to tell us more about what exactly it is that you hated, and how to make it lovely. We won't make any progress with your current commenting style. Here is your example of

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-02 Thread David E. Wheeler
On Feb 2, 2011, at 10:04 AM, Dimitri Fontaine wrote: David E. Wheeler da...@kineticode.com writes: They are identical except for the extra line in the second one. If I had, say 15 different versions of an extension, then I'd have 15 upgrade scripts. That's fine. But in your plan, the script

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-02 Thread David E. Wheeler
On Feb 2, 2011, at 10:14 AM, Aidan Van Dyk wrote: My concern with this approach (upgrade is forced through all intermetiary versions) is that the shared libray now for version 15 *has* to have all the intermediary compatibility for *all* versions in it. So it has to have functions with all

Re: [HACKERS] ALTER EXTENSION UPGRADE, v3

2011-02-02 Thread David E. Wheeler
On Feb 2, 2011, at 10:22 AM, Dimitri Fontaine wrote: Either one line in the Makefile or a new file with the \i equivalent lines, that would maybe look like: SELECT pg_execute_sql_file('upgrade.v14.sql'); SELECT pg_execute_sql_file('upgrade.v15.sql'); So well… I don't see how you've

Re: [HACKERS] WIP: RangeTypes

2011-01-29 Thread David E. Wheeler
On Jan 29, 2011, at 10:57 AM, Jeff Davis wrote: On Fri, 2011-01-28 at 10:41 -0800, David E. Wheeler wrote: +1 in principal. I think we should try to avoid the user of the term period if possible, and I see definite benefits to a simple model of $typename . 'range'; Interesting, I didn't

Re: [HACKERS] WIP: RangeTypes

2011-01-28 Thread David E. Wheeler
On Jan 28, 2011, at 9:48 AM, Jeff Davis wrote: On Fri, 2011-01-28 at 09:17 -0800, David Fetter wrote: For consistency, and in order not to continue our atrocious naming tradition, I'd like to propose that the above be named timestamprange (tsrange for short) and timestamptzrange (tstzrange

Re: [HACKERS] Upcoming back-branch updates

2011-01-27 Thread David E. Wheeler
On Jan 27, 2011, at 9:17 AM, Tom Lane wrote: The Postgres core team will be wrapping update releases for all supported back branches this evening. These updates are prompted by a minor security issue (reported by Apple, curiously enough) as well as desire to push out some significant bug

Re: [RRR] [HACKERS] Seeking Mentors for Funded Reviewers

2011-01-26 Thread David E. Wheeler
On Jan 26, 2011, at 7:48 AM, Richard Broersma wrote: On Wed, Jan 26, 2011 at 7:38 AM, David Fetter da...@fetter.org wrote: I'm thinking that we should consider *very* carefully before we introduce payments into what had been an all-volunteer effort. You may get people to do things they

Re: [RRR] [HACKERS] Seeking Mentors for Funded Reviewers

2011-01-26 Thread David E. Wheeler
On Jan 26, 2011, at 9:40 AM, Richard Broersma wrote: On Wed, Jan 26, 2011 at 9:31 AM, David E. Wheeler da...@kineticode.com wrote: Part of GCOC's success has been in allowing a class of people to participate who otherwise would have had to get summer jobs flipping burgers

Re: [HACKERS] Extensions support for pg_dump, patch v27

2011-01-25 Thread David E. Wheeler
On Jan 25, 2011, at 7:27 AM, David Fetter wrote: Other than adminpack, I think it makes sense to say that extensions are not going into pg_catalog… Given this, we should maybe see about either making adminpack part of PostgreSQL's core distribution (probably a good idea) or moving it out

Re: [HACKERS] Fixing GIN for empty/null/full-scan cases

2011-01-18 Thread David E. Wheeler
On Jan 18, 2011, at 1:39 PM, Tom Lane wrote: At the moment my opinion is that gist__int_ops is too broken to be usable, and it's also too uncommented to be fixable by anyone other than the original author. That seems to jibe with your comments from last year:

Re: [HACKERS] Fixing GIN for empty/null/full-scan cases

2011-01-18 Thread David E. Wheeler
On Jan 18, 2011, at 1:58 PM, Tom Lane wrote: I'm noticing also that I get different rowcounts than you do, although possibly that has something to do with the partial-index conditions, which I'm not trying to duplicate here (all rows in my table pass those two tests). Shall I send you data

Re: [HACKERS] Fixing GIN for empty/null/full-scan cases

2011-01-18 Thread David E. Wheeler
On Jan 18, 2011, at 3:08 PM, Tom Lane wrote: Shall I send you data with the other two columns?: No, I see no reason to think that has much to do with it. I'm wondering if your table is itself a bit bloated ... Nope. Just ran the bloat query from check_postgres.pl. Bloat is 0. Not

Re: [HACKERS] Fixing GIN for empty/null/full-scan cases

2011-01-18 Thread David E. Wheeler
On Jan 18, 2011, at 3:46 PM, Tom Lane wrote: The above is using the index, but only as a guide to where the rows satisfying the partial-index predicate are --- note the lack of any index condition in the indexscan node. That's because the query_int query is not in fact compatible with the

Re: [HACKERS] Fixing GIN for empty/null/full-scan cases

2011-01-16 Thread David E. Wheeler
On Jan 14, 2011, at 11:37 PM, David E. Wheeler wrote: Hard to comment on any of this without a concrete example (including data) to look at. Given the bugs we've recently found in the picksplit algorithms for other contrib modules, I wouldn't be too surprised if the sucky GiST performance

Re: [HACKERS] LAST CALL FOR 9.1

2011-01-15 Thread David E. Wheeler
On Jan 15, 2011, at 6:50 AM, Robert Haas wrote: It is really already too late for us to be seriously considering integrating sync rep into 9.1. It will lead to another enormous beta period during which the tree will be closed to new patches and everyone will complain, or else we'll open the

Re: [HACKERS] FOR KEY LOCK foreign keys

2011-01-14 Thread David E. Wheeler
On Jan 13, 2011, at 1:58 PM, Alvaro Herrera wrote: Something else that might be of interest: the patch as presented here does NOT solve the deadlock problem originally presented by Joel Jacobson. It does solve the second, simpler example I presented in my blog article referenced above,

Re: [HACKERS] Fixing GIN for empty/null/full-scan cases

2011-01-14 Thread David E . Wheeler
On Jan 8, 2011, at 9:41 PM, Tom Lane wrote: David E. Wheeler da...@kineticode.com writes: On Jan 7, 2011, at 4:19 PM, Tom Lane wrote: Well, actually, I just committed it. If you want to test, feel free. Note that right now only the anyarray @ @ operators are genuinely fixed ... I plan

Re: [HACKERS] Fixing GIN for empty/null/full-scan cases

2011-01-14 Thread David E. Wheeler
On Jan 14, 2011, at 5:54 PM, Tom Lane wrote: David E. Wheeler da...@kineticode.com writes: So some questions: * Is something seriously wrong with GiST index creation on integer[] columns? * Why does GIN performance appear to be no better than table scans on integer[] columns? * Why

Re: [HACKERS] arrays as pl/perl input arguments [PATCH]

2011-01-13 Thread David E. Wheeler
On Jan 13, 2011, at 4:15 PM, Stephen J. Butler wrote: Suppose one of these compatibility objects is passed into legacy code as $_[0]. The problem is that 'ref $_[0]' will return 'Pg::ArrayArg' instead of what it used to, '' (empty string). Other than that, I think it performs as people would

Re: [HACKERS] arrays as pl/perl input arguments [PATCH]

2011-01-12 Thread David E. Wheeler
On Jan 12, 2011, at 5:14 AM, Alexey Klyukin wrote: You mean packing both a string representation and a reference to a single SV * value? Dunno, I'm not a guts guy. I haven't considered that (lack of extensive perlgus-foo) although I think that's an interesting idea. One drawback would be

Re: [HACKERS] WIP: Range Types

2011-01-12 Thread David E. Wheeler
On Jan 12, 2011, at 8:48 AM, Robert Haas wrote: I guess that begs the question of why we need to allow users to call type output functions directly. I've used them quite a lot in the past; less so on 8.4+ where casting everything to text became a lot easier. Best, David -- Sent via

Re: [HACKERS] arrays as pl/perl input arguments [PATCH]

2011-01-12 Thread David E. Wheeler
On Jan 12, 2011, at 11:22 AM, Alex Hunsaker wrote: Personally, I think the point of a compatibility GUC is that at some point in the distant future we can get rid of it. If we default to the old behavior thats going to be harder to do. +1 for defaulting to the new behavior. +1 [ Id

Re: [HACKERS] arrays as pl/perl input arguments [PATCH]

2011-01-12 Thread David E. Wheeler
On Jan 12, 2011, at 11:36 AM, Alvaro Herrera wrote: [ Id actually vote for _not_ having a compatibility option at all, we change more major things than this IMHO every major release. (And even then some major things in minor releases, for example the removal of Safe.pm) ] I think the main

Re: [HACKERS] arrays as pl/perl input arguments [PATCH]

2011-01-12 Thread David E. Wheeler
On Jan 12, 2011, at 11:51 AM, Alvaro Herrera wrote: I suspect it'd be quiet, unfortunately, since there are a bazillion ad hoc implementations of a Perl SQL array parser, and many of them, I suspect, don't complain if the string doesn't look like an SQL array. They would just parse a

Re: [HACKERS] arrays as pl/perl input arguments [PATCH]

2011-01-12 Thread David E. Wheeler
On Jan 12, 2011, at 3:29 PM, Robert Haas wrote: What I was casting a bit of doubt on upthread was whether or not this would work without possibly breaking some code, in possibly silent or obscure ways. If I'm wrong about that, then by all means let's use some perl Magic (that's a technical

Re: [HACKERS] Fixing GIN for empty/null/full-scan cases

2011-01-12 Thread David E. Wheeler
Tom, On Jan 8, 2011, at 9:41 PM, Tom Lane wrote: David E. Wheeler da...@kineticode.com writes: On Jan 7, 2011, at 4:19 PM, Tom Lane wrote: Well, actually, I just committed it. If you want to test, feel free. Note that right now only the anyarray @ @ operators are genuinely fixed ... I

Re: [HACKERS] Fixing GIN for empty/null/full-scan cases

2011-01-12 Thread David E. Wheeler
On Jan 12, 2011, at 4:35 PM, Tom Lane wrote: Did a signature change or something? Yeah. I think if you just load up the current contrib/intarray first, you'll be fine (ignore all the object-already-exists errors). Oh, from 9.1devel? yeah, okay. Will do that tomorrow (finishing the current

Re: [HACKERS] arrays as pl/perl input arguments [PATCH]

2011-01-11 Thread David E. Wheeler
On Jan 11, 2011, at 2:25 PM, Alexey Klyukin wrote: Hello, Here's the patch that improves handling of arrays as pl/perl function input arguments, converting postgres arrays of arbitrary dimensions into perl array references. Awesome! I've wanted this for *years*. It includes regression

Re: [HACKERS] arrays as pl/perl input arguments [PATCH]

2011-01-11 Thread David E. Wheeler
On Jan 11, 2011, at 3:44 PM, Andrew Dunstan wrote: I think there's at least a danger of breaking legacy code doing that. Say you have some code that does a ref test on the argument, for example. The behavior would now be changed. I think that'd be pretty rare. David -- Sent via

<    1   2   3   4   5   6   7   8   9   10   >