aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* Convert the arithmetic for shared memory size calculation from 'int'Tom Lane2005-08-20
| | | | | | | | | | | to 'Size' (that is, size_t), and install overflow detection checks in it. This allows us to remove the former arbitrary restrictions on NBuffers etc. It won't make any difference in a 32-bit machine, but in a 64-bit machine you could theoretically have terabytes of shared buffers. (How efficiently we could manage 'em remains to be seen.) Similarly, num_temp_buffers, work_mem, and maintenance_work_mem can be set above 2Gb on a 64-bit machine. Original patch from Koichi Suzuki, additional work by moi.
* Invoke mksafefunc and mkunsafefunc with :: decoration. This seems a goodTom Lane2005-08-20
| | | | | idea on consistency grounds, whether or not it really fixes bug #1831. Michael Fuhr
* Make GetMultiXactIdMembers() a public function.Tatsuo Ishii2005-08-20
|
* Add BackendXidGetPid().Tatsuo Ishii2005-08-20
|
* Repair problems with VACUUM destroying t_ctid chains too soon, and withTom Lane2005-08-20
| | | | | | | | | | | | insufficient paranoia in code that follows t_ctid links. (We must do both because even with VACUUM doing it properly, the intermediate state with a dangling t_ctid link is visible concurrently during lazy VACUUM, and could be seen afterwards if either type of VACUUM crashes partway through.) Also try to improve documentation about what's going on. Patch is a bit bulky because passing the XMAX information around required changing the APIs of some low-level heapam.c routines, but it's not conceptually very complicated. Per trouble report from Teodor and subsequent analysis. This needs to be back-patched, but I'll do that after 8.1 beta is out.
* Fix LRU/ALL description mismatch for GUC parameter.Bruce Momjian2005-08-19
|
* Consistently align comments in postgresql.conf, move some slightly toBruce Momjian2005-08-19
| | | | the right to stand out.
* Update some obsolete comments --- code is using t_self now, not t_ctid.Tom Lane2005-08-18
|
* Fix up LIMIT/OFFSET planning so that we cope with non-constant LIMITTom Lane2005-08-18
| | | | | | | | | | or OFFSET clauses by using estimate_expression_value(). The main advantage of this is that if the expression is a Param and we have a value for the Param, we'll use that value rather than defaulting. Also, fix some thinkos in the logic for combining LIMIT/OFFSET with an externally supplied tuple fraction (this covers cases like EXISTS(...LIMIT...)). And make sure the results of all this are shown by EXPLAIN. Per a gripe from Merlin Moncure.
* Add hint for to_char(interval) invalid format specifications.Bruce Momjian2005-08-18
|
* Fix to_char(interval) to return proper year and century values.Bruce Momjian2005-08-18
| | | | | | | | Fix to_char(interval) to return large year/month/day/hour values that are larger than possible timestamp values. Prevent to_char(interval) format specifications that make no sense, like Month. Clean up formatting.c code to more logically handle return lengths.
* Avoid an Assert failure if OuterUserId hasn't been set yet duringTom Lane2005-08-17
| | | | | AbortTransaction. This can happen if a backend's InitPostgres transaction fails (eg, because the given username is invalid). Per Alvaro.
* More formatting.c cleanups.Bruce Momjian2005-08-17
|
* Small cleanup.Bruce Momjian2005-08-17
|
* Adjust to_char/from_char code to use boolean "is_to_char" rather thanBruce Momjian2005-08-17
| | | | integer with flags.
* Fix declaration of dumpacl, per Alvaro.Tom Lane2005-08-17
|
* Fix FSM warning to mention increasing max_fsm_pages. Was incorrectlyBruce Momjian2005-08-17
| | | | max_fsm_relations.
* Minor cleanup.Bruce Momjian2005-08-17
|
* Update comments.Bruce Momjian2005-08-16
|
* Improve comment.Bruce Momjian2005-08-16
|
* Update pgcvslog comment on how to find branch start time.Bruce Momjian2005-08-16
| | | | Run autoconf/autoheader in case someone forgot in the past.
* Reject operator names >= NAMEDATALEN characters. These will not workTom Lane2005-08-16
| | | | | anyway, and in assert-enabled builds you are likely to get an assertion failure. Backpatch as far as 7.3; 7.2 seems not to have the problem.
* Rename pg_stat_file columns to be more consistent. Split apart changeBruce Momjian2005-08-15
| | | | and creation columns to behave for Unix or Win32.
* Clean up recent patch for PL handler functions in pg_catalog: the patchTom Lane2005-08-15
| | | | | | caused PL languages and handlers to be dumped ALWAYS, even in the face of contrary --schema or --table switches. Adopt a slightly saner definition.
* Make createlang and droplang proof against weird search_path settingsTom Lane2005-08-15
| | | | by forcing search_path to be just pg_catalog.
* array_in() and array_recv() need to be more paranoid about validatingTom Lane2005-08-15
| | | | | | | | | their OID parameter. It was possible to crash the backend with select array_in('{123}',0,0); because that would bypass the needed step of initializing the workspace. These seem to be the only two places with a problem, though (record_in and record_recv don't have the issue, and the other array functions aren't depending on user-supplied input). Back-patch as far as 7.4; 7.3 does not have the bug.
* Allow the pgstat views to show toast tables as well as regular tablesTom Lane2005-08-15
| | | | | | | | (the stats system has always collected this info, but the views were filtering it out). Modify autovacuum so that over-threshold activity in a toast table can trigger a VACUUM of the parent table, even if the parent didn't appear to need vacuuming itself. Per discussion a month or so back about "short, wide tables".
* Clean up some stray remaining references to pg_shadow, pg_user, pg_group.Tom Lane2005-08-15
|
* Change pg_dump to use pg_roles instead of pg_user on 8.1 and up,Tom Lane2005-08-15
| | | | so that it will correctly dump owners of objects owned by non-login roles.
* Change standard_compliant_strings to standard_conforming_strings.Peter Eisentraut2005-08-14
|
* Update the createuser utility for the ROLEs world. Alvaro HerreraTom Lane2005-08-14
|
* Fix psql's \d commands to use pg_roles instead of pg_user, so thatTom Lane2005-08-14
| | | | they don't miss owners that are NOLOGIN.
* Fix up tab completion for ROLEs and add some more completion logic forTom Lane2005-08-14
| | | | | | other stuff; change \du and \dg to be role-aware (Stefan Kaltenbrunner). Also make tab completion fetch the list of GUC variables from pg_settings instead of having a hard-wired copy of the list (Tom Lane).
* Tweak catalog cache management algorithms to reduce cost ofTom Lane2005-08-13
| | | | | | | | | | | | | | | | | SearchCatCacheList and ReleaseCatCacheList. Previously, we incremented and decremented the refcounts of list member tuples along with the list itself, but that's unnecessary, and very expensive when the list is big. It's cheaper to change only the list refcount. When we are considering deleting a cache entry, we have to check not only its own refcount but its parent list's ... but it's easy to arrange the code so that this check is not made in any commonly-used paths, so the cost is really nil. The bigger gain though is to refrain from DLMoveToFront'ing each individual member tuple each time the list is referenced. To keep some semblance of fair space management, lists are just marked as used or not since the last cache cleanout search, and we do a MoveToFront pass only when about to run a cleanout. In combination, these changes reduce the costs of SearchCatCacheList and ReleaseCatCacheList from about 4.5% of pgbench runtime to under 1%, according to my gprof results.
* Make pg_stat_file() use OUT parameters so that the user doesn't have toTom Lane2005-08-13
| | | | | | | remember the output parameter set for himself. It's a bit of a kluge but fixing array_in to work in bootstrap mode looks worse. I removed the separate pg_file_length() function, as it no longer has any real notational advantage --- you can write (pg_stat_file(...)).length.
* Disable strtoul() ERANGE check on Win32, because it isn't thread safe,Bruce Momjian2005-08-13
| | | | and it isn't really required.
* Reverse out Assert addition.Bruce Momjian2005-08-12
|
* Pass the type OID as the typioparam for all non-array types, rather thanTom Lane2005-08-12
| | | | | only composite types as we did in 8.0. Per discussion with Martijn van Oosterhout.
* Back out plpython makefile change.Bruce Momjian2005-08-12
|
* Improve documention on loading large data sets into plperl.Bruce Momjian2005-08-12
| | | | David Fetter
* This patch fixes the event type used to log output from theBruce Momjian2005-08-12
| | | | | | | | | | | | stderr-in-service or output-from-syslogger-in-service code. Previously everything was flagged as ERRORs there, which caused all instances to log "LOG: logger shutting down" as error... Please apply for 8.1. I'd also like it considered for 8.0 since logging non-errors as errors can be cause for alarm amongst people who actually look at their logs... Magnus Hagander
* Un-break plperl for non-set case.Tom Lane2005-08-12
|
* [ backpatched to 8.0.X.]Bruce Momjian2005-08-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | > >> 3) I restarted the postmaster both times. I got this error > both times. > >> :25: ERROR: could not load library "C:/Program > >> Files/PostgreSQL/8.0/lib/testtrigfuncs.dll": dynamic load error > > > Yes. We really need to look at fixing that error message. I had > > forgotten it completely :-( > > > Bruce, you think we can sneak that in after feature freeze? I would > > call it a bugfix :-) > > Me too. That's been on the radar for awhile --- please do > send in a patch. Here we go, that wasn't too hard :-) Apart from adding the error handling, it does one more thing: it changes the errormode when loading the DLLs. Previously if a DLL was broken, or referenced other DLLs that couldn't be found, a popup dialog box would appear on the screen. Which had to be clicked before the backend could continue. This patch also disables the popup error message for DLL loads. I think this is something we should consider doing for the entire backend - disable those popups, and say we deal with it ourselves. What do you other win32 hackers thinnk about this? In the meantime, this patch fixes the error msgs. Please apply for 8.1 and please consider a backpatch to 8.0. Magnus Hagander
* > Gavin Sherry <swm@linuxworld.com.au> writes:Bruce Momjian2005-08-12
| | | | | | | | | | | | | | | | | | | | | | | | > > I ran across this yesterday on HEAD: > > > template1=# grant select on foo, foo to swm; > > ERROR: tuple already updated by self > > Seems to fail similarly in every version back to 7.2; probably further, > but that's all I have running at the moment. > > > We could do away with the error by producing a unique list of object names > > -- but that would impose an extra cost on the common case. > > CommandCounterIncrement in the GRANT loop would be easier, likely. > I'm having a hard time getting excited about it though... Yeah, its not that exciting but that error message would throw your average user. I've attached a patch which calls CommandCounterIncrement() in each of the grant loops. Gavin Sherry
* More rsi assignment line too.Bruce Momjian2005-08-12
|
* Fix up canonicalize_path to do the right thing in all cases (I think ...Tom Lane2005-08-12
| | | | | this was harder than it seemed at first glance). Also push code for checking for ".." in file names into path.c where it belongs.
* Fix this:Bruce Momjian2005-08-12
| | | | | | | | | | | | $ ./configure --without-docdir .. $ cd contrib/pgstattuple/ $ make install mkdir -p -- /contrib mkdir: cannot create directory `/contrib': Permission denied make: *** [installdirs] Error 1 ISHIDA Akio
* Cleanups for FreeBSD linking (PIC) and plpython compiles.Bruce Momjian2005-08-12
| | | | FreeBSD ports, supplied by Jim C. Nasby
* > The attached patch moves a plperl sanity check into the correctBruce Momjian2005-08-12
| | | | | | | > position. Performing the check in the existing position allows the call > to go through to perl first, possibly resulting in a SEGV. Andrew Dunstan
* No server version of snprintf needed, so remove Makefile rule.Bruce Momjian2005-08-12
|