summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2004-05-12Tighten up overflow check in path_recv, pursuant to code review inspiredTom Lane
by Ken Ashcraft's report. I think there is no actual bug here since if the int32 value does wrap a little bit, palloc will still reject it. Still it's better that the code be obviously correct.
2004-05-12Here's a patch that will allow external modules like pl<lang> to setBruce Momjian
additional flags for the dlltool and dllwrap commands. More info here: http://archives.postgresql.org/pgsql-hackers/2004-05/msg00350.php Thomas Hallgren
2004-05-12Rename find_my_binary/find_other_binary toBruce Momjian
find_my_exec/find_other_exec(). Remove passing of progname to these functions as they can find that out from argv[0], which they already have. Make get_progname return const char *, and update all progname variables to be const char *.
2004-05-12Fix bug by passing arg[0] to find_my_binary().Bruce Momjian
2004-05-11Yawn ... still another place not quite ready for zero-column tables.Tom Lane
2004-05-11As part of the work for making relocatable installs, I have re-factoredBruce Momjian
all the code that looks for other binaries. I move FindExec into port/exec.c (and renamed it to find_my_binary()). I also added find_other_binary that looks for another binary in the same directory as the calling program, and checks the version string. The only behavior change was that initdb and pg_dump would look in the hard-coded bindir directory if it can't find the requested binary in the same directory as the caller. The new code throws an error. The old behavior seemed too error prone for version mismatches.
2004-05-11Add tests to enlargeStringInfo() to avoid possible buffer-overrun orTom Lane
infinite-loop problems if a bogus data length is passed.
2004-05-11Refactor low-level aclcheck code to provide useful interfaces for multi-bitTom Lane
permissions tests in about the same amount of code as before. Exactly what the GRANT/REVOKE code ought to be doing is still up for debate, but this should be helpful in any case, and it already solves an efficiency problem in executor startup.
2004-05-11Fix oversights in processing of LIMIT expressions during planning.Tom Lane
2004-05-11Repair recalculation failure for nested sub-SELECTs, per bug report fromTom Lane
Didier Moens. Bug is new in 7.4, and was caused by not updating everyplace I should've when replacing locParam markers by allParam. Add a regression test to catch related errors in future.
2004-05-10Clean up indenting of Makefile filenames.Bruce Momjian
2004-05-10Promote row expressions to full-fledged citizens of the expression syntax,Tom Lane
rather than allowing them only in a few special cases as before. In particular you can now pass a ROW() construct to a function that accepts a rowtype parameter. Internal generation of RowExprs fixes a number of corner cases that used to not work very well, such as referencing the whole-row result of a JOIN or subquery. This represents a further step in the work I started a month or so back to make rowtype values into first-class citizens.
2004-05-10Add variables names to static prototypes in initdb.c.Bruce Momjian
2004-05-10- Argh, just another bug in adjust_informix.Michael Meskes
- Added "extern C" flags for C++ compiler. Hopefully I got that one right.
2004-05-08Fix a couple of oversights in new ALTER TABLE code that brokeTom Lane
ALTER SET STATISTICS for functional indexes.
2004-05-08Alter string format used for integer and OID lists in stored rules.Tom Lane
This simplifies and speeds up the reader by letting it get the representation right the first time, rather than correcting it after-the-fact. Also, after int and OID lists become separate node types per Neil's pending patch, this will let us treat these lists as just plain Nodes instead of requiring separate read/write macros the way we have now.
2004-05-08Get rid of rd_nblocks field in relcache entries. Turns out this wasTom Lane
costing us lots more to maintain than it was worth. On shared tables it was of exactly zero benefit because we couldn't trust it to be up to date. On temp tables it sometimes saved an lseek, but not often enough to be worth getting excited about. And the real problem was that we forced an lseek on every relcache flush in order to update the field. So all in all it seems best to lose the complexity.
2004-05-08Improve style of new log_statement_stats error message, per Peter.Bruce Momjian
2004-05-08Get rid of cluster.c's apparatus for rebuilding a relation's indexesTom Lane
in favor of using the REINDEX TABLE apparatus, which does the same thing simpler and faster. Also, make TRUNCATE not use cluster.c at all, but just assign a new relfilenode and REINDEX. This partially addresses Hartmut Raschick's complaint from last December that 7.4's TRUNCATE is an order of magnitude slower than prior releases. By getting rid of a lot of unnecessary catalog updates, these changes buy back about a factor of two (on my system). The remaining overhead seems associated with creating and deleting storage files, which we may not be able to do much about without abandoning transaction safety for TRUNCATE.
2004-05-07Refactor CheckDropPermissions() to move some initialization code forNeil Conway
printing the proper error message out of the common path.
2004-05-07The timezone() family of functions (a/k/a AT TIME ZONE construct) canTom Lane
safely be marked immutable, since their results don't depend on the TimeZone GUC variable. Per recent discussion.
2004-05-07- Added additional test case.Michael Meskes
- Fixed bug that reversed string length in typedefs. - Added portability file to pgtypeslib.
2004-05-07NATURAL CROSS JOIN is a contradiction in terms, not to mention disallowedTom Lane
by the SQL spec and by our parser. Thanks to Jonathan Scott for finding this longstanding error.
2004-05-07Remove crude test for log_statement_stats in startup code now that weBruce Momjian
have a more proper GUC based test. Also change error return code to ERRCODE_INVALID_PARAMETER_VALUE so it matches the old error return code.
2004-05-07Throw error if log_statement_stats is used with confliction options forBruce Momjian
per-query stage stats.
2004-05-07Solve the 'Turkish problem' with undesirable locale behavior for caseTom Lane
conversion of basic ASCII letters. Remove all uses of strcasecmp and strncasecmp in favor of new functions pg_strcasecmp and pg_strncasecmp; remove most but not all direct uses of toupper and tolower in favor of pg_toupper and pg_tolower. These functions use the same notions of case folding already developed for identifier case conversion. I left the straight locale-based folding in place for situations where we are just manipulating user data and not trying to match it to built-in strings --- for example, the SQL upper() function is still locale dependent. Perhaps this will prove not to be what's wanted, but at the moment we can initdb and pass regression tests in Turkish locale.
2004-05-06sysv_shmem.c patch is to correct a bug that prevents the postmasterBruce Momjian
recovering from an unexpected backend termination. The remaining patches are to allow whitespace in db/install directory names. Claudio Natoli
2004-05-06Erase MD5 user passwords when a user is renamed because the username isBruce Momjian
used as salt for the MD5 password.
2004-05-06Make ALTER COLUMN TYPE preserve clustered status for indexes it doesn'tTom Lane
modify. Also fix a passel of problems with ALTER TABLE CLUSTER ON: failure to check that the index is safe to cluster on (or even belongs to the indicated rel, or even exists), and failure to broadcast a relcache flush event when changing an index's state.
2004-05-06Rewrite nodeRead() in a less obfuscated fashion, per discussion withTom Lane
Neil Conway.
2004-05-06Fix grammatical error in comment.Neil Conway
2004-05-05Second try at a portable unsetenv().Tom Lane
2004-05-05Don't assume that struct timeval's tv_sec field is the same datatype asTom Lane
time_t; on some platforms they are not the same width. Per Manfred Koizar.
2004-05-05Fix get_rels_with_domain to not do the wrong thing with views andTom Lane
composite types that use a domain.
2004-05-05Use a more portable technique for unsetting environment variables,Tom Lane
and unset PGCLIENTENCODING to prevent backend from dying if it's set to something incompatible with the -E option.
2004-05-05- Fixed bug in adjust_informix that treated arrays as simple variables.Michael Meskes
- Synced parser again. - Synced lexer.
2004-05-05ALTER TABLE rewrite. New cool stuff:Tom Lane
* ALTER ... ADD COLUMN with defaults and NOT NULL constraints works per SQL spec. A default is implemented by rewriting the table with the new value stored in each row. * ALTER COLUMN TYPE. You can change a column's datatype to anything you want, so long as you can specify how to convert the old value. Rewrites the table. (Possible future improvement: optimize no-op conversions such as varchar(N) to varchar(N+1).) * Multiple ALTER actions in a single ALTER TABLE command. You can perform any number of column additions, type changes, and constraint additions with only one pass over the table contents. Basic documentation provided in ALTER TABLE ref page, but some more docs work is needed. Original patch from Rod Taylor, additional work from Tom Lane.
2004-05-03More PWD adjustments for win32.Bruce Momjian
2004-05-02Use $build_platform for PWD flag test, per suggestion from Peter.Bruce Momjian
2004-05-02Update catalog version for acl removal changes.Bruce Momjian
2004-05-02Revert patch --- needs more generalized solution.Bruce Momjian
> Please find a attached a small patch that adds accessor functions > for "aclitem" so that it is not an opaque datatype. > > I needed these functions to browse aclitems from user land. I can load > them when necessary, but it seems to me that these accessors for a > backend type belong to the backend, so I submit them. > > Fabien Coelho
2004-05-02Set PWDFLAGS based on test platform, not target platform.Bruce Momjian
Andrew Dunstan
2004-05-02this patch makes sure that:Bruce Momjian
* correct platform specific regression files are used under ming * pwd prints out a usable win32 pathname Claudio Natoli
2004-05-02Set std error to no buffering on Win32.Bruce Momjian
2004-05-02More win32 adjustment for timezone directory.Bruce Momjian
2004-05-01Fix timezone data path for Unix and win32.Bruce Momjian
2004-05-01Align prototype in C code.Bruce Momjian
2004-05-01Remove debug output line.Bruce Momjian
2004-05-01Rename function to be less win32 specific.Bruce Momjian
2004-04-30Suppress use of timezone library by ecpg.Bruce Momjian