Thread
-
Re: [HACKERS] 6.5 TODO list
Tom Lane <tgl@sss.pgh.pa.us> — 1999-05-10T21:49:01Z
Bruce Momjian <maillist@candle.pha.pa.us> writes: > OK, here is the list. Please send me changes. > Can not insert/update oid I think this is very unlikely to get fixed for 6.5, might as well just put it on the to-do-later list. > EXPLAIN SELECT 1 UNION SELECT 2 crashes, rewrite system? Already fixed, I believe, unless someone can produce a case that fails... > move UNION stuff into rewrite files Is this the same as EXPLAIN issue above, or a different concern? > Vacuum of tables >2 gigs - NOTICE: Can't truncate multi-segments relation This is definitely a "must fix" item for 6.5, IMHO... > missing optimizer selectivities for date, etc. The selectivity-estimation code needs major work. Again, I'd say just shove it to the 6.6 list... > int8 indexing needs work? Is this done, or are there still problems? > hash on int2/char only looks a first bytes, and big-endian machines hash poorly Fixed. > Some CASE() statements involving two tables crash Fixed. > CREATE FUNCTION fails Isn't this fixed? I wasn't aware of any remaining problems... > Make sure pg_internal.init generation can't cause unreliability > ... > pg_interal.init, check for reliability on rebuild Duplicate items, I think. > GROUP BY expression? I think I've fixed the problems here. > problem with ALTER TABLE on inherited > ... > ALTER TABLE ADD COLUMN to inherited table put column in wrong place Duplicates? > GROUP BY can reference columns not in target list What's wrong with that? > SELECT name, value FROM t1 as touter WHERE (value/(SELECT AVG(value) > FROM t1 WHERE name = touter.name)) > 0.75; fails Fixed. regards, tom lane
-
Re: [HACKERS] 6.5 TODO list
Bruce Momjian <maillist@candle.pha.pa.us> — 1999-05-10T22:01:18Z
> Bruce Momjian <maillist@candle.pha.pa.us> writes: > > OK, here is the list. Please send me changes. > > > Can not insert/update oid > > I think this is very unlikely to get fixed for 6.5, might as well just > put it on the to-do-later list. Moved. > > > EXPLAIN SELECT 1 UNION SELECT 2 crashes, rewrite system? > > Already fixed, I believe, unless someone can produce a case that > fails... Good. Thanks. > > > move UNION stuff into rewrite files > > Is this the same as EXPLAIN issue above, or a different concern? That is for me. I currently do UNION in postgres.c, shoud perhaps move to rewrite system. Not sure yet. > > > Vacuum of tables >2 gigs - NOTICE: Can't truncate multi-segments relation > > This is definitely a "must fix" item for 6.5, IMHO... Yes. It shows we are getting bigger. Most/all? of my commerical database clients don't have 2-gig tables. > > > missing optimizer selectivities for date, etc. > > The selectivity-estimation code needs major work. Again, I'd say just > shove it to the 6.6 list... Moved. > > > int8 indexing needs work? > > Is this done, or are there still problems? Not sure. Just asking. I saw Thomas complaining about some testing problems. Let's what he says. > > > hash on int2/char only looks a first bytes, and big-endian machines hash poorly > > Fixed. Removed. > > Some CASE() statements involving two tables crash > > Fixed. Good. > > CREATE FUNCTION fails > > Isn't this fixed? I wasn't aware of any remaining problems... OK. > > > Make sure pg_internal.init generation can't cause unreliability > > ... > > pg_interal.init, check for reliability on rebuild > > Duplicate items, I think. Yes. > > > GROUP BY expression? > > I think I've fixed the problems here. Removed. > > > problem with ALTER TABLE on inherited > > ... > > ALTER TABLE ADD COLUMN to inherited table put column in wrong place > > Duplicates? Yes. > > GROUP BY can reference columns not in target list > > What's wrong with that? Is that not a problem. What possible use would GROUP BY on columns not in target list be of use. Maybe it is. I remember someone asking for something like this. I will remove the item unless someone complains. I thought you were the one complaining about it. > > > SELECT name, value FROM t1 as touter WHERE (value/(SELECT AVG(value) > > FROM t1 WHERE name = touter.name)) > 0.75; fails > > Fixed. Already removed. Thanks for the updates. -- Bruce Momjian | http://www.op.net/~candle maillist@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026
-
Re: [HACKERS] 6.5 TODO list
Jan Wieck <jwieck@debis.com> — 1999-05-11T13:20:32Z
Bruce Momjian wrote: > > > GROUP BY can reference columns not in target list > > > > What's wrong with that? > > Is that not a problem. What possible use would GROUP BY on columns not > in target list be of use. Maybe it is. I remember someone asking for > something like this. I will remove the item unless someone complains. > I thought you were the one complaining about it. This can happen if the GROUP BY clause is coming from a view, but the grouping columns of the view aren't in the targetlist. Usually the view's grouping is required because of use of aggregates in the view, so omitting them isn't a good idea. I'm actually testing what happens if I use junk TLE's for rule generated GROUP BY entries... Jan -- #======================================================================# # It's easier to get forgiveness for being wrong than for being right. # # Let's break this rule - forgive me. # #======================================== jwieck@debis.com (Jan Wieck) # -
Re: [HACKERS] 6.5 TODO list
Jan Wieck <jwieck@debis.com> — 1999-05-11T16:01:54Z
> > Bruce Momjian wrote: > > > > > GROUP BY can reference columns not in target list > > > > > > What's wrong with that? > > > > Is that not a problem. What possible use would GROUP BY on columns not > > in target list be of use. Maybe it is. I remember someone asking for > > something like this. I will remove the item unless someone complains. > > I thought you were the one complaining about it. > > This can happen if the GROUP BY clause is coming from a view, > but the grouping columns of the view aren't in the > targetlist. > > Usually the view's grouping is required because of use of > aggregates in the view, so omitting them isn't a good idea. > > I'm actually testing what happens if I use junk TLE's for > rule generated GROUP BY entries... Oh jesus - what a mess! I've tested it and it solved the problem with CREATE TABLE t1 (a int4, b int4); CREATE VIEW v1 AS SELECT b, count(b) AS n FROM t1 GROUP BY b; SELECT n FROM v1; This one produces now the correct output. But it does not handle SELECT n FROM v1 WHERE 2 < n; because the group clause isn't added to the aggregate subplan, the rule system generated for the qual - that's maybe fixable. Worse is, that one of the queries in the rules regression test fails, because a GROUP BY attribute wasn't found in the targetlist. The problem is that the planner modifies the targetlist if the operation is an INSERT/DELETE by first creating a clean one representing the result relation and then moving the old expressions into. Then it adds some junk stuff and specially marked TLE's from the original targetlist. BUT - during this (preprocess_targetlist()) all the resno's can get reassigned and later the planner tries to match the GROUP BY entries only by resno. But the resno's in the group clauses haven't been adjusted! Another interesting detail I found is this: CREATE TABLE t1 (a int4, b int4); -- insert some stuff into t1 CREATE TABLE t2 (b int4, n int4); -- This one is working correct: SELECT b, count(b) FROM t1 GROUP BY b; -- This one doesn't INSERT INTO t2 SELECT b, count(b) FROM t1 GROUP BY b; ERROR: Illegal use of aggregates or non-group column in target list Ooops - I think it should work - especially because the plain SELECT returned the correct result. But it fail during the parse already and I don't get a parser debug output at all from tcop. As soon as this is fixed, I assume a problem with a query like this: INSERT INTO t2 (n) SELECT count(b) FROM t1 GROUP BY b; (currently it tells "Aggregates not allowed in GROUP BY clause" - what's totally braindead) The problem I expect is that the parser creates resno 1 for "count(b)" and a junk TLE with resno 2 for "b" which is referenced in the group clause. preprocess_targetlist() will now create the new targetlist with resno 1 = "b" = NULL, resno 2 = "n" = "count(b)" and maybe the junk resno 3 for the grouping. Voila, the group clause will reference the wrong TLE (still resno 2)! Currently I think the correct solution would be to expand the targetlist already in the rewrite system and leave it untouched in the planner. Comments? Jan -- #======================================================================# # It's easier to get forgiveness for being wrong than for being right. # # Let's break this rule - forgive me. # #======================================== jwieck@debis.com (Jan Wieck) # -
Re: [HACKERS] 6.5 TODO list
Marc G. Fournier <scrappy@hub.org> — 1999-05-11T17:28:44Z
On Mon, 10 May 1999, Bruce Momjian wrote: > > > Vacuum of tables >2 gigs - NOTICE: Can't truncate multi-segments relation > > > > This is definitely a "must fix" item for 6.5, IMHO... > > Yes. It shows we are getting bigger. Most/all? of my commerical > database clients don't have 2-gig tables. I'm not sure what is involved in fixing this, but...>2gig tables, in the past, were iffy to start with. if we can fix before v6.5, fine...if not, my opinion is that isn't a release stopper. Or, rather...is it something that, other then in testing, has affected anyone? > > > GROUP BY can reference columns not in target list > > > > What's wrong with that? > > Is that not a problem. What possible use would GROUP BY on columns not > in target list be of use. Maybe it is. I remember someone asking for > something like this. I will remove the item unless someone complains. > I thought you were the one complaining about it. Even if we don't remove it, sounds like a feature vs bug fix... Marc G. Fournier ICQ#7615664 IRC Nick: Scrappy Systems Administrator @ hub.org primary: scrappy@hub.org secondary: scrappy@{freebsd|postgresql}.org -
Re: [HACKERS] 6.5 TODO list
Bruce Momjian <maillist@candle.pha.pa.us> — 1999-05-11T18:23:26Z
> On Mon, 10 May 1999, Bruce Momjian wrote: > > > > > Vacuum of tables >2 gigs - NOTICE: Can't truncate multi-segments relation > > > > > > This is definitely a "must fix" item for 6.5, IMHO... > > > > Yes. It shows we are getting bigger. Most/all? of my commerical > > database clients don't have 2-gig tables. > > I'm not sure what is involved in fixing this, but...>2gig tables, in the > past, were iffy to start with. if we can fix before v6.5, fine...if not, > my opinion is that isn't a release stopper. Or, rather...is it something > that, other then in testing, has affected anyone? > > > > > GROUP BY can reference columns not in target list > > > > > > What's wrong with that? > > > > Is that not a problem. What possible use would GROUP BY on columns not > > in target list be of use. Maybe it is. I remember someone asking for > > something like this. I will remove the item unless someone complains. > > I thought you were the one complaining about it. > > Even if we don't remove it, sounds like a feature vs bug fix... We are not saying these are show-stoppers, but things that should be resolved before final, no? -- Bruce Momjian | http://www.op.net/~candle maillist@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026
-
Re: [HACKERS] 6.5 TODO list
Christopher Masto <chris@netmonger.net> — 1999-05-11T18:44:53Z
On Tue, May 11, 1999 at 02:28:44PM -0300, The Hermit Hacker wrote: > On Mon, 10 May 1999, Bruce Momjian wrote: > > > > > Vacuum of tables >2 gigs - NOTICE: Can't truncate multi-segments relation > > > > > > This is definitely a "must fix" item for 6.5, IMHO... > > > > Yes. It shows we are getting bigger. Most/all? of my commerical > > database clients don't have 2-gig tables. > > I'm not sure what is involved in fixing this, but...>2gig tables, in the > past, were iffy to start with. if we can fix before v6.5, fine...if not, > my opinion is that isn't a release stopper. Or, rather...is it something > that, other then in testing, has affected anyone? Hrm.. I've been hanging around on the postgres lists for six months or so, but I admit, other than a couple of toy projects, I haven't really done much. However.. recently I have gotten involved in a project that is.. well.. huge. And it involves databases in a big way. I'd love to be able to use Postgres. I'd love to be able to say at the end that _______ (very very large and well-known organization) uses, and in fact depends on, FreeBSD, Apache, Perl, and Postgres. We're a bit concerned, though, since the databases will be a _lot_ bigger than 2GB. Part of the reason for using free software is that if it does blow up, we can help fix it. Anyway, I guess my point is that there is some incentive here for having a postgres that is completely non-iffy when it comes to >2GB databases. Shortly we will be filling the system with test data and I will be glad to help out as much as possible (which may not be much in the way of code, as I've got my hands rather full right now). -- Christopher Masto Senior Network Monkey NetMonger Communications chris@netmonger.net info@netmonger.net http://www.netmonger.net Free yourself, free your machine, free the daemon -- http://www.freebsd.org/
-
Re: [HACKERS] 6.5 TODO list
Marc G. Fournier <scrappy@hub.org> — 1999-05-11T19:14:49Z
On Tue, 11 May 1999, Bruce Momjian wrote: > > On Mon, 10 May 1999, Bruce Momjian wrote: > > > > > > > Vacuum of tables >2 gigs - NOTICE: Can't truncate multi-segments relation > > > > > > > > This is definitely a "must fix" item for 6.5, IMHO... > > > > > > Yes. It shows we are getting bigger. Most/all? of my commerical > > > database clients don't have 2-gig tables. > > > > I'm not sure what is involved in fixing this, but...>2gig tables, in the > > past, were iffy to start with. if we can fix before v6.5, fine...if not, > > my opinion is that isn't a release stopper. Or, rather...is it something > > that, other then in testing, has affected anyone? > > > > > > > GROUP BY can reference columns not in target list > > > > > > > > What's wrong with that? > > > > > > Is that not a problem. What possible use would GROUP BY on columns not > > > in target list be of use. Maybe it is. I remember someone asking for > > > something like this. I will remove the item unless someone complains. > > > I thought you were the one complaining about it. > > > > Even if we don't remove it, sounds like a feature vs bug fix... > > We are not saying these are show-stoppers, but things that should be > resolved before final, no? But, if htey should be resolved before final, doesn't taht make it a show-stopper? *raised eyebrow* Christopher brings up a point about the >2gig vacuum problem...I'm kinda curious as to what sort of time frame we'd be looking at on fixing that (1)...what sort of demographic this affects (2) and whether or not this could be done as a 'side patch' so that those it does affects would have access to it (3) ... Assuming that 1 is large and 2 small, 3 could/should be released sometime after v6.5 is released and provided for those that it affects. If 1 is small (<1week?), then the point is moot... Marc G. Fournier ICQ#7615664 IRC Nick: Scrappy Systems Administrator @ hub.org primary: scrappy@hub.org secondary: scrappy@{freebsd|postgresql}.org