> -----Original Message----- > From: Jeff Davis [mailto:[EMAIL PROTECTED] > Sent: Friday, October 13, 2006 1:00 PM > To: Alvaro Herrera > Cc: Bucky Jordan; email@example.com; Jim C. Nasby; pgsql- > [EMAIL PROTECTED] > Subject: Re: [HACKERS] [PERFORM] Hints proposal > > On Thu, 2006-10-12 at 18:02 -0400, Alvaro Herrera wrote: > > Bucky Jordan wrote: > > > > > What about using regular expressions, plus, if you have a function > > > (views, or any other statement that is stored), you can assign a rule > to > > > that particular function. So you get matching, plus explicit > selection. > > > This way it's easy to find all your hints, turn them off, manage them, > > > etc. (Not to mention dynamically generated SQL is ugly enough without > > > having to put hints in there). > > > > The regular expression idea that's being floated around makes my brain > > feel like somebody is screeching a blackboard nearby. I don't think > > it's a sane idea. I think you could achieve something similar by using > > stored plan representations, like we do for rewrite rules. So you'd > > look for, say, a matching join combination in a catalog, and get a > > selectivity from a function that would get the selectivities of the > > conditions on the base tables. Or something like that anyway. > > > > That gets ugly pretty fast when you have to extract selectivities for > > all the possible join paths in any given query. > > > > But please don't talk about regular expressions. > > > > It sounds horrible to me too, and I'm the one that thought of it (or at > least I'm the one that introduced it to this thread). > > However, everything is relative. Since the other idea floating around is > to put the same hinting information into the client queries themselves, > regexes look great by comparison (in my opinion).
I was merely expressing the same opinion. But I'm not one of those working on the planner, and all I can say to those of you who are is your efforts on good design are most appreciated, even if they do take longer than we users would like at times. My only point was that they should *NOT* be put in queries themselves as this scatters the nightmare into user code as well. Of course, other more sane ideas are most welcome. I don't like screeching on blackboards either. (regular expressions, although very valuable at times, seem to have that effect quite often...) - Bucky ---------------------------(end of broadcast)--------------------------- TIP 3: Have you checked our extensive FAQ? http://www.postgresql.org/docs/faq