aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* Update comment.Bruce Momjian2006-06-06
|
* On Win32, return original patch if GetShortPathName() fails (no shortBruce Momjian2006-06-06
| | | | | | name, path does not exist), rather than returning nothing. Backpatch to 8.1.X.
* Make the planner estimate costs for nestloop inner indexscans on the basisTom Lane2006-06-06
| | | | | | | | | | | | | | | | | | | | | that the Mackert-Lohmann formula applies across all the repetitions of the nestloop, not just each scan independently. We use the M-L formula to estimate the number of pages fetched from the index as well as from the table; that isn't what it was designed for, but it seems reasonably applicable anyway. This makes large numbers of repetitions look much cheaper than before, which accords with many reports we've received of overestimation of the cost of a nestloop. Also, change the index access cost model to charge random_page_cost per index leaf page touched, while explicitly not counting anything for access to metapage or upper tree pages. This may all need tweaking after we get some field experience, but in simple tests it seems to be giving saner results than before. The main thing is to get the infrastructure in place to let cost_index() and amcostestimate functions take repeated scans into account at all. Per my recent proposal. Note: this patch changes pg_proc.h, but I did not force initdb because the changes are basically cosmetic --- the system does not look into pg_proc to decide how to call an index amcostestimate function, and there's no way to call such a function from SQL at all.
* Remove ancient AIX structure workaround.Bruce Momjian2006-06-06
|
* Have BCC echo output "" using "", rather than \"\" as earlier reported.Bruce Momjian2006-06-06
| | | | Backpatch to 8.1.X.
* Fixed two more memory leaks in ecpglib.Michael Meskes2006-06-06
| | | | Synced parser.
* Remove extremely old, incomplete, broken example code.Tom Lane2006-06-05
| | | | Per my proposal a few days ago.
* While making the seq_page_cost changes, I was struck by the fact thatTom Lane2006-06-05
| | | | | | | | | | | | | cost_nonsequential_access() is really totally inappropriate for its only remaining use, namely estimating I/O costs in cost_sort(). The routine was designed on the assumption that disk caching might eliminate the need for some re-reads on a random basis, but there's nothing very random in that sense about sort's access pattern --- it'll always be picking up the oldest outputs. If we had a good fix on the effective cache size we might consider charging zero for I/O unless the sort temp file size exceeds it, but that's probably putting much too much faith in the parameter. Instead just drop the logic in favor of a fixed compromise between seq_page_cost and random_page_cost per page of sort I/O.
* Avoid longjump/vfork warning about line_saved_in_history variable byBruce Momjian2006-06-05
| | | | making it volatile.
* Have psql history save \e editor contents to history before query isBruce Momjian2006-06-05
| | | | executed, like it did for 8.1.X.
* Increase the default value of cpu_index_tuple_cost from 0.001 to 0.005.Tom Lane2006-06-05
| | | | | | This shouldn't affect simple indexscans much, while for bitmap scans that are touching a lot of index rows, this seems to bring the estimates more in line with reality. Per recent discussion.
* Add a GUC parameter seq_page_cost, and use that everywhere we formerlyTom Lane2006-06-05
| | | | | | | | assumed that a sequential page fetch has cost 1.0. This patch doesn't in itself change the system's behavior at all, but it opens the door to people adopting other units of measurement for EXPLAIN costs. Also, if we ever decide it's worth inventing per-tablespace access cost settings, this change provides a workable intellectual framework for that.
* Fix psql so \r is separate in the history, rather than at the end ofBruce Momjian2006-06-04
| | | | the query.
* Don't choke during startup if the environment offers an invalid valueTom Lane2006-06-03
| | | | | | | | | | for LC_MESSAGES; instead, just press forward, leaving the effective setting at 'C'. There is not any very good reason to complain when we are going to replace the value soon with whatever postgresql.conf says. This change should solve the occasionally-reported problem of initdb failing with 'failed to initialize lc_messages'; the current theory is that that is a reflection of either wrong LANG/LC_MESSAGES or completely broken locale support.
* Fix copy-and-pasteo in Russian translation: message complaining aboutTom Lane2006-06-03
| | | | | HAVE_INT64_TIMESTAMP was mentioning PG_CONTROL_VERSION instead. Victor Snezhko
* Remove pg_resetxlog -r flag, feature has problems referenced here:Bruce Momjian2006-06-03
| | | | http://archives.postgresql.org/pgsql-hackers/2006-05/msg00002.php
* Respond to Jeremy Drake's original gripe that \copy needs to recognizeTom Lane2006-06-01
| | | | E'...' syntax for strings in order to track the backend.
* Fix up hack to suppress escape_string_warning so that it actually worksTom Lane2006-06-01
| | | | | | and there's only one place that's a kluge, ie, appendStringLiteralConn. Note that pg_dump itself doesn't use appendStringLiteralConn, so its behavior is not affected; only the other utility programs care.
* Fix seriously broken patch for psql '' ... per its comment, emit() isTom Lane2006-05-31
| | | | NOT the thing to use here.
* Make PG_MODULE_MAGIC required in shared libraries that are loaded intoTom Lane2006-05-31
| | | | | the server. Per discussion, there seems no point in a waiting period before making this required.
* Support '' for literal ' in psql single-quote strings, documentation update.Bruce Momjian2006-05-31
|
* Escape processing patch:Bruce Momjian2006-05-31
| | | | | | | | | | o turns off escape_string_warning in pg_dumpall.c o optionally use E'' for \password (undocumented option?) o honor standard_conforming-strings for \copy (but not support literal E'' strings) o optionally use E'' for \d commands o turn off escape_string_warning for createdb, createuser, droplang
* Update cvs command example to show diff -rBASE.Bruce Momjian2006-05-31
|
* Somehow a ";" got lost which changed the logic. This btw is the first fix ↵Michael Meskes2006-05-31
| | | | resulting from SoC.
* Magic blocks don't do us any good unless we use 'em ... so install oneTom Lane2006-05-30
| | | | in every shared library.
* Code review for magic-block patch. Remove separate header file pgmagic.h,Tom Lane2006-05-30
| | | | | | | | | | as this seems only likely to create headaches for module developers. Put the macro in the pre-existing fmgr.h file instead. Avoid being too cute about how many fields we can cram into a word, and avoid trying to fetch from a library we've already unlinked. Along the way, it occurred to me that the magic block really ought to be 'const' so it can be stored in the program text area. Do the same for the existing data blocks for PG_FUNCTION_INFO_V1 functions.
* Code review for EXPLAIN patch. Fix some typos, make it behave sanelyTom Lane2006-05-30
| | | | | across multiple loops, get rid of the shaky assumption that exactly one tuple is returned per node iteration.
* PostmasterIsAlive test really ought to be in the inner loop for safety.Tom Lane2006-05-30
|
* Remove pqsignalinquire(), which is unused and has portability issues.Tom Lane2006-05-30
|
* Update ppport.h to not cause warnings with newest Perl versions.Tom Lane2006-05-30
| | | | | This is just the minimal necessary change; we might want to adopt later PPPort output instead.
* Add pgmagic header block to store compile-time constants:Bruce Momjian2006-05-30
| | | | | | | | | | | | | | | | | | | | | It now only checks four things: Major version number (7.4 or 8.1 for example) NAMEDATALEN FUNC_MAX_ARGS INDEX_MAX_KEYS The three constants were chosen because: 1. We document them in the config page in the docs 2. We mark them as changable in pg_config_manual.h 3. Changing any of these will break some of the more popular modules: FUNC_MAX_ARGS changes fmgr interface, every module uses this NAMEDATALEN changes syscache interface, every PL as well as tsearch uses this INDEX_MAX_KEYS breaks tsearch and anything using GiST. Martijn van Oosterhout
* Make EXPLAIN sampling smarter, to avoid excessive sampling delay.Bruce Momjian2006-05-30
| | | | Martijn van Oosterhout
* Clarify the HINT for 'checkpoint request failed', per recent complaintTom Lane2006-05-30
| | | | demonstrating that its intent wasn't obvious.
* Revert patch, needs more work:Bruce Momjian2006-05-30
| | | | | | | | | | | | | | --------------------------------------------------------------------------- Add dynamic record inspection to PL/PgSQL, useful for generic triggers: tval2 := r.(cname); or columns := r.(*); Titus von Boxberg
* Move conversion dependency patch to the proper branch, out of 8.1.X,Bruce Momjian2006-05-30
| | | | into HEAD.
* Prevent multiple archivers from starting. Backpatch to 8.1.X.Bruce Momjian2006-05-30
| | | | Simon Riggs
* Fix printf mask for SizeVfdCacheBruce Momjian2006-05-30
| | | | Qingqing Zhou
* Add "inline" compile fix for MSVC/BCC:Bruce Momjian2006-05-30
| | | | | | | | #define inline __inline Backpatch to 8.1.X. Hiroshi Saito
* Add dynamic record inspection to PL/PgSQL, useful for generic triggers:Bruce Momjian2006-05-30
| | | | | | | | | | tval2 := r.(cname); or columns := r.(*); Titus von Boxberg
* Back out patch, wrong previous commit message.Bruce Momjian2006-05-30
|
* Add regexp_replace() to string functions section.Bruce Momjian2006-05-30
| | | | Joachim Wieland
* Fix ancient misdescription of namegt/namege in comment. Greg StarkTom Lane2006-05-30
|
* Patch reverted because of random buildfarm failures:Bruce Momjian2006-05-30
| | | | | | | | | | | | | | | | | --------------------------------------------------------------------------- Delay write of pg_stats file to once every five minutes, during shutdown, or when requested by a backend: It changes so the file is only written once every 5 minutes (changeable of course, I just picked something) instead of once every half second. It's still written when the stats collector shuts down, just as before. And it is now also written on backend request. A backend requests a rewrite by simply sending a special stats message. It operates on the assumption that the backends aren't actually going to read the statistics file very often, compared to how frequent it's written today. Magnus Hagander
* Add PQclear() calls, for completeness (exits shortly anyway).Bruce Momjian2006-05-29
|
* Make plperl's $_TD trigger data a global rather than a lexical variable,Andrew Dunstan2006-05-29
| | | | | with a fresh local value for each invocation, to avoid unexpected sharing violations. Per recent -hackers discussion.
* Som improve page split in multicolumn GiST index.Teodor Sigaev2006-05-29
| | | | | | If user picksplit on n-th column generate equals left and right unions then it calls picksplit on n+1-th column.
* Correct cheking in findParents(). iTeodor Sigaev2006-05-29
| | | | From Andreas Seltenreich <andreas+pg@gate450.dyndns.org>
* enlargePQExpBuffer, alone among the functions exported by pqexpbuffer.h,Tom Lane2006-05-28
| | | | wasn't exported by exports.txt. Ooops. Per buildfarm results.
* Fix up pg_dump to do string escaping fully correctly for client encodingTom Lane2006-05-28
| | | | | | | | | and standard_conforming_strings; likewise for the other client programs that need it. As per previous discussion, a pg_dump dump now conforms to the standard_conforming_strings setting of the source database. We don't use E'' syntax in the dump, thereby improving portability of the SQL. I added a SET escape_strings_warning = off command to keep the dumps from getting a lot of back-chatter from that.
* Don't call PQclear until the struct is really no longer going to be used.Alvaro Herrera2006-05-28
| | | | | | | Per Coverity bug #304. Thanks to Martijn van Oosterhout for reporting it. Zero out the pointer fields of PGresult so that these mistakes are more easily catched, per discussion.