aboutsummaryrefslogtreecommitdiff
path: root/src/backend
Commit message (Collapse)AuthorAge
...
* Pass less-unsafe parameters to Darwin's NSLinkModule. While this change ↵Tom Lane2002-10-01
| | | | prevents a backend coredump when loading a broken shlib, it also seems to suppress the error messages that might help debug the problem :-(. Perhaps someone would like to supply a 'linkEdit' hook to get the best of both worlds. But in the meantime, backend crash trumps error reporting.
* Add Bear's SSL comments.Bruce Momjian2002-09-29
|
* Make the world at least somewhat safe for zero-column tables, andTom Lane2002-09-28
| | | | | remove the special case in ALTER DROP COLUMN to prohibit dropping a table's last column.
* ARGH!Tom Lane2002-09-27
| | | | | | | | Vacuum must not advance pg_database.datvacuumxid nor truncate CLOG unless it's processed *all* tables in the database. Vacuums run by unprivileged users don't count. (Beats head against nearest convenient wall...)
* Use heap_formtuple not heap_addheader to construct pg_index tuples.Tom Lane2002-09-27
| | | | | heap_addheader is wrong because it doesn't cope with varlena fields, notably indpred.
* Don't mess with HEAP_XMAX_INVALID in heaptuple.c routines; there isTom Lane2002-09-27
| | | | | | no reason to worry about the tuple commit status bits until the tuple is inserted in a relation by heapam.c. Also, improve comments for heap_addheader().
* Have -d5 -d0 not affect the extra variables set with -d5.Bruce Momjian2002-09-27
|
* Make postgres -d0 set server_min_messages to notice. Reset doesn't workBruce Momjian2002-09-27
| | | | at this area in the code.
* Ensure that before truncating CLOG, we force a checkpoint even if noTom Lane2002-09-26
| | | | | | recent WAL activity has occurred. Without this, it's possible that a later crash might leave tuples on disk with un-updated commit status bits.
* Fix problems with loss of tuple commit status bits during WAL redo ofTom Lane2002-09-26
| | | | | | | | | VACUUM FULL tuple moves. Store full-width t_infomask in WAL, rather than storing low 8 bits and expecting to be able to reconstruct upper bits. While at it, remove redundant t_oid field from WAL headers (the OID, if present, is now recorded in the data portion of the tuple). WAL version number bumped --- this does not force an initdb, you can instead run pg_resetxlog after a clean shutdown of the old postmaster.
* This patch removes a use of uninitialized memory in lmgr/lock.c, byBruce Momjian2002-09-26
| | | | | | adding a missing sprintf(). Neil Conway
* Pass postmaster -d down to the postgres backend to trigger special -dBruce Momjian2002-09-26
| | | | handling in the backend.
* Allow SSL to work withouth client-side certificate infrastructure.Bruce Momjian2002-09-26
|
* Remove ShutdownBufferPoolAccess exit callback, and do the work inTom Lane2002-09-25
| | | | | | | | | ProcKill instead, where we still have a PGPROC with which to wait on LWLocks. This fixes 'can't wait without a PROC structure' failures occasionally seen during backend shutdown (I'm surprised they weren't more frequent, actually). Add an Assert() to LWLockAcquire to help catch any similar mistakes in future. Fix failure to update MyProcPid for standalone backends and pgstat processes.
* Change default privileges for languages and functions to be PUBLIC USAGETom Lane2002-09-24
| | | | | and PUBLIC EXECUTE, respectively. Per discussion about easing updates from prior versions.
* Tweak conversion names to follow the established naming scheme, andPeter Eisentraut2002-09-24
| | | | document that scheme.
* Add missing correction of sublevelsup when pulling up a subquery.Tom Lane2002-09-24
| | | | | | Fixes problem with cases like SELECT * FROM foo t WHERE NOT EXISTS (SELECT remoteid FROM (SELECT f1 as remoteid FROM foo WHERE f1 = t.f1) AS t1)
* Further thinking about heap_mark4update: in HeapTupleSelfUpdated case,Tom Lane2002-09-23
| | | | | | | | | executor should not return the tuple as successfully marked, because in fact it's been deleted. Not clear that this case has ever been seen in practice (I think you'd have to write a SELECT FOR UPDATE that calls a function that deletes some row the SELECT will visit later...) but we should be consistent. Also add comments to several other places that got it right but didn't explain what they were doing.
* Disallow VACUUM, ANALYZE, TRUNCATE on temp tables belonging to otherTom Lane2002-09-23
| | | | | backends. Given that temp tables now store data locally in the local buffer manager, these things are not going to work safely.
* Get rid of bogus use of heap_mark4update in reindex operations (cf.Tom Lane2002-09-23
| | | | | recent bug report). Fix processing of nailed-in-cache indexes; it appears that REINDEX DATABASE has been broken for months :-(.
* In UpdateStats(), don't bother to update the pg_class row if it alreadyTom Lane2002-09-22
| | | | | | | | contains the correct statistics. This is a partial solution for the problem of allowing concurrent CREATE INDEX commands: unless they commit at nearly the same instant, the second one will see the first one's pg_class updates as committed, and won't try to update again, thus avoiding the 'tuple concurrently updated' failure.
* Remove commas from %type and %token lists, for compatibility with newerTom Lane2002-09-22
| | | | versions of bison.
* Translation updates, some messages tweaked.Peter Eisentraut2002-09-22
|
* RelationClearRelation must reset rd_targblock and update rd_nblocksTom Lane2002-09-22
| | | | | | even when dealing with a nailed-in-cache relation; otherwise, following VACUUM truncation of a system catalog, other backends might have unreasonably large values of these fields.
* server_min_messages and friends should have valid values at bootup.Tom Lane2002-09-22
|
* Replace pg_attribute.attisinherited with attislocal and attinhcountTom Lane2002-09-22
| | | | | columns, to allow more correct behavior in multiple-inheritance cases. Patch by Alvaro Herrera, review by Tom Lane.
* Bring SIMILAR TO and SUBSTRING into some semblance of conformance withTom Lane2002-09-22
| | | | | | | the SQL99 standard. (I'm not sure that the character-class features are quite right, but that can be fixed later.) Document SQL99 and POSIX regexps as being different features; provide variants of SUBSTRING for each.
* Move most of the error checking for foreign-key constraints out ofTom Lane2002-09-22
| | | | | | | | | | | | | | | | | | | | | | parse analysis and into the execution code (in tablecmds.c). This eliminates a lot of unreasonably complex code that needed to have two or more execution paths in case it was dealing with a not-yet-created table column vs. an already-existing one. The execution code is always dealing with already-created tables and so needs only one case. This also eliminates some potential race conditions (the table wasn't locked between parse analysis and execution), makes it easy to fix the gripe about wrong referenced-column names generating a misleading error message, and lets us easily add a dependency from the foreign-key constraint to the unique index that it requires the referenced table to have. (Cf. complaint from Kris Jurka 12-Sep-2002 on pgsql-bugs.) Also, third try at building a deletion mechanism that is not sensitive to the order in which pg_depend entries are visited. Adding the above- mentioned dependency exposed the folly of what dependency.c had been doing: it failed for cases where B depends on C while both auto-depend on A. Dropping A should succeed in this case, but was failing if C happened to be visited before B. It appears the only solution is two separate walks over the dependency tree.
* Add last-ditch defense against attempts to compile datetime code withTom Lane2002-09-21
| | | | -ffast-math.
* Provide an upgrade strategy for dump files containing functions declaredTom Lane2002-09-21
| | | | | | | | with OPAQUE. CREATE LANGUAGE, CREATE TRIGGER, and CREATE TYPE will all accept references to functions declared with OPAQUE --- but they will issue a NOTICE, and will modify the function entries in pg_proc to have the preferred type-safe argument or result types instead of OPAQUE. Per recent pghackers discussions.
* Fix PPC s_lock operations to work correctly on multi-CPU machines.Tom Lane2002-09-21
| | | | Need 'isync' during TAS and 'sync' during S_UNLOCK.
* Performance improvement for MultiRecordFreeSpace on large relations ---Tom Lane2002-09-20
| | | | | avoid O(N^2) behavior. Problem noted and fixed by Stephen Marshall <smarshall@wsicorp.com>, with some help from Tom Lane.
* Code review for check-domain-constraints-in-COPY patch. Do correct thingTom Lane2002-09-20
| | | | | when default expression for a domain is being used. Avoid repetitive catalog lookups.
* Change domain patch to COERCE_IMPLICIT_CAST, per Tom.Bruce Momjian2002-09-20
|
* Fix compile error from Rod's patch.Bruce Momjian2002-09-20
|
* The patch fix bug described in TODO:Bruce Momjian2002-09-20
| | | | | | * to_char(0,'FM999.99') returns a period, to_char(1,'FM999.99') does not Karel Zak
* Tom Lane wrote:Bruce Momjian2002-09-20
| | | | | | | | | | | | | | | > I see in your recent bytea-LIKE patch > > if (datatype != BYTEAOID && pg_database_encoding_max_length() > 1) > len = pg_mbcliplen((const unsigned char *) workstr, len, len - 1); > else > len -= -1; > > Surely there's one too many minus signs in that last? Joe Conway
* This patch cleans up some of the code in src/util/adt/formatting.c,Bruce Momjian2002-09-20
| | | | | | | fixes a few minor bugs (typos, potential buffer overruns, etc.), and fixes some spelling/grammar mistakes. Neil Conway
* This patch fixes two typos in src/backend/storage/ipc/README.Bruce Momjian2002-09-20
| | | | Neil Conway
* Fixed this problem and added regression tests in domain.sql.Bruce Momjian2002-09-20
| | | | | | | | Also: - Changed header file order (alphabetical) - Changed to m = attnum - 1 in binary copy code for consistency Rod Taylor
* > I'm not sure why NDirectFileRead/NDirectFileWrite are unused at theBruce Momjian2002-09-20
| | | | | | | | | | | | | | | > moment, but they used to be used; I think the correct response is to > put back the missing counter increments, not rip out the counters. Ok, fair enough. It's worth noting that they've been broken for a while -- for example, the HashJoin counter increments were broken when you comitted r1.20 of executor/nodeHashJoin.c in May of '99. I've attached a revised patch that doesn't remove the counters (but doesn't increment them either: I'm not sure of all the places where the counter should be incremented). Neil Conway
* Tweak heap.c to refuse attempts to create table columns of standaloneTom Lane2002-09-19
| | | | | | composite types. Add a couple more lsyscache.c routines to support this, and make use of them in some other places that were doing lookups the hard way.
* Department of second thoughts: suppressing implicit casts everywhere inTom Lane2002-09-19
| | | | | | | | ruleutils display is not such a great idea. For arguments of functions and operators I think we'd better keep the historical behavior of showing such casts explicitly, to ensure that the function/operator is reparsed the same way when the rule is reloaded. This also makes the output of EXPLAIN less obscurantist about exactly what's happening.
* Extend pg_cast castimplicit column to a three-way value; this allows usTom Lane2002-09-18
| | | | | | | | | | | | | | | | | | | | | | | | to be flexible about assignment casts without introducing ambiguity in operator/function resolution. Introduce a well-defined promotion hierarchy for numeric datatypes (int2->int4->int8->numeric->float4->float8). Change make_const to initially label numeric literals as int4, int8, or numeric (never float8 anymore). Explicitly mark Func and RelabelType nodes to indicate whether they came from a function call, explicit cast, or implicit cast; use this to do reverse-listing more accurately and without so many heuristics. Explicit casts to char, varchar, bit, varbit will truncate or pad without raising an error (the pre-7.2 behavior), while assigning to a column without any explicit cast will still raise an error for wrong-length data like 7.3. This more nearly follows the SQL spec than 7.2 behavior (we should be reporting a 'completion condition' in the explicit-cast cases, but we have no mechanism for that, so just do silent truncation). Fix some problems with enforcement of typmod for array elements; it didn't work at all in 'UPDATE ... SET array[n] = foo', for example. Provide a generalized array_length_coerce() function to replace the specialized per-array-type functions that used to be needed (and were missing for NUMERIC as well as all the datetime types). Add missing conversions int8<->float4, text<->numeric, oid<->int8. initdb forced.
* Fix bug in encoding conversion map.Tatsuo Ishii2002-09-18
|
* Update Japanese README so that it reflects the changes made to theTatsuo Ishii2002-09-18
| | | | conversion function interface.
* Remove retest Makefile entry because it does not compile.Bruce Momjian2002-09-16
|
* Fix for rare race-condition-like failure: if a backend receives SIGUSR2Tom Lane2002-09-16
| | | | | | | | | | (notify/SI-overrun interrupt) while it is in process of doing proc_exit, it is possible for Async_NotifyHandler() to try to start a transaction when one is already running. This leads to Asserts() or worse. I think it may only be possible to occur when frontend synchronization is lost (ie, the elog(FATAL) in SocketBackend() fires), but that is a standard occurrence after error during COPY. In any case, I have seen this failure occur during regression tests, so it is definitely possible.
* Cast functions can be immutable or stable.Peter Eisentraut2002-09-15
|
* Update obsolete comment.Tom Lane2002-09-14
|