summaryrefslogtreecommitdiff
path: root/src/backend/optimizer/util
Commit message (Collapse)AuthorAgeFilesLines
* * Hack for non-functional btree npages estimation:Vadim B. Mikheev1997-04-241-7/+34
| | | | * npages = index_pages * selectivity_of_1st_attr_clause(s)
* Fix (hack) IndexSelectivity():Vadim B. Mikheev1997-04-091-2/+16
| | | | | | use sum(npages)/((nkeys == 1) ? 1 : nkeys + 1) as expected index page estimation for multi-key quals - instead of sum(npages). In old code npages for x > 10 and x < 20 is twice as for x > 10 - cool ?
* Changes for GROUP BY func_results:Vadim B. Mikheev1997-04-051-1/+6
| | | | AddGroupAttrToTlist() is not called from anywhere now.
* Patches for Vadim's multikey indexing...Marc G. Fournier1997-03-181-3/+4
|
* From: Dan McGuirk <mcguirk@indirect.com>Marc G. Fournier1997-03-121-4/+4
| | | | | | | | | | Subject: [HACKERS] linux/alpha patches These patches lay the groundwork for a Linux/Alpha port. The port doesn't actually work unless you tweak the linker to put all the pointers in the first 32 bits of the address space, but it's at least a start. It implements the test-and-set instruction in Alpha assembly, and also fixes a lot of pointer-to-integer conversions, which is probably good anyway.
* INDEXSCAN_PATCH changes: should work for (Param OP VAR) tooVadim B. Mikheev1997-01-221-1/+9
| | | | (but I didn't test FUNC OP PARAM and PARAM OP FUNC - no time)
* As someone asked for this feature - patch for 1.09 follows.Bruce Momjian1996-11-301-1/+4
| | | | | | | | | | | Now You can do queries like select sum(some_func(x)) from ... select min(table1.x + table2.y) from table1, table2 where ... and so on. Vadim
* All external function definitions now have prototypes that are checked.Bruce Momjian1996-11-101-1/+2
|
* More files cleaned outMarc G. Fournier1996-11-064-11/+14
|
* Cleanup MakefilesMarc G. Fournier1996-10-315-9/+17
| | | | | | Add #include "postgres.h" and #include <sys/types.h>
* Simplify make files, add full dependencies.Bryan Henderson1996-10-272-15/+40
|
* Fixes:Marc G. Fournier1996-09-101-1/+9
| | | | | | | | | | | | | | | | | | | | | The problem is that the function arguments are not considered as possible key candidates for index scan and so only a sequential scan is possible inside the body of a function. I have therefore made some patches to the optimizer so that indices are now used also by functions. I have also moved the plan debug message from pg_eval to pg_plan so that it is printed also for plans genereated for function execution. I had also to add an index rescan to the executor because it ignored the parameters set in the execution state, they were flagged as runtime variables in ExecInitIndexScan but then never used by the executor so that the scan were always done with any key=1. Very odd. This means that an index rescan is now done twice for each function execution which uses an index, the first time when the index scan is initialized and the second when the actual function arguments are finally available for the execution. I don't know what is the cost of an double index scan but I suppose it is anyway less than the cost of a full sequential scan, at leat for large tables. This is my patch, you must also add -DINDEXSCAN_PATCH in Makefile.global to enable the changes. Submitted by: Massimo Dal Zotto <dz@cs.unitn.it>
* This prevent gcc from complaining about casting a short to a char * andMarc G. Fournier1996-07-312-6/+6
| | | | | | fixes another complaint. More fixes from Bruce...
* Fix applied for NESTLOOP bugMarc G. Fournier1996-07-251-2/+12
| | | | submitted by: vadim@sable.krasnoyarsk.su (Vadim B. Mikheev)
* More of Dr. George's changes...Marc G. Fournier1996-07-221-4/+3
| | | | | | | | | - src/backend/catalog/* - no changes - src/backend/executor/* - change how nodeHash.c handles running out of memory - src/backend/optimizer/* - mostly cosmetic changes
* Postgres95 1.01 Distribution - Virgin SourcesPG95-1_01Marc G. Fournier1996-07-0913-0/+3545