aboutsummaryrefslogtreecommitdiff
path: root/src/backend/commands
Commit message (Collapse)AuthorAge
* Relaxed pickiness about user and group commands in transaction blocks.Peter Eisentraut2000-06-25
|
* Second pass over run-time configuration system. Adjust priorities on somePeter Eisentraut2000-06-22
| | | | | | | | | | | | | | | | | | | option settings. Sort out SIGHUP vs BACKEND -- there is no total ordering here, so make explicit checks. Add comments explaining all of this. Removed permissions check on SHOW command. Add examine_subclass to the game, rename to SQL_inheritance to fit the official data model better. Adjust documentation. Standalone backend needs to reset all options before it starts. To facilitate that, have IsUnderPostmaster be set by the postmaster itself, don't wait for the magic -p switch. Also make sure that all environment variables and argv's survive init_ps_display(). Use strdup where necessary. Have initdb make configuration files (postgresql.conf, pg_hba.conf) mode 0600 -- having configuration files is no fun if you can't edit them.
* Make renaming a temp table behave sensibly. We don't need to touchTom Lane2000-06-20
| | | | | the underlying table at all, just change the mapping entry ... but that logic was missing.
* Reimplement nodeMaterial to use a temporary BufFile (or even memory, if theTom Lane2000-06-18
| | | | | | | | | | materialized tupleset is small enough) instead of a temporary relation. This was something I was thinking of doing anyway for performance, and Jan says he needs it for TOAST because he doesn't want to cope with toasting noname relations. With this change, the 'noname table' support in heap.c is dead code, and I have accordingly removed it. Also clean up 'noname' plan handling in planner --- nonames are either sort or materialize plans, and it seems less confusing to handle them separately under those names.
* Get rid of IndexIsUniqueNoCache() kluge by the simple expedient ofTom Lane2000-06-17
| | | | | | | passing the index-is-unique flag to index build routines (duh! ... why wasn't it done this way to begin with?). Aside from eliminating an eyesore, this should save a few milliseconds in btree index creation because a full scan of pg_index is not needed any more.
* Fix performance problems with pg_index lookups (see, for example,Tom Lane2000-06-17
| | | | | | | | | | discussion of 5/19/00). pg_index is now searched for indexes of a relation using an indexscan. Moreover, this is done once and cached in the relcache entry for the relation, in the form of a list of OIDs for the indexes. This list is used by the parser and executor to drive lookups in the pg_index syscache when they want to know the properties of the indexes. Net result: index information will be fully cached for repetitive operations such as inserts.
* Final #include cleanup.Bruce Momjian2000-06-15
|
* Clean up #include's.Bruce Momjian2000-06-15
|
* Big warnings cleanup for Solaris/GCC. Down to about 40 now, butPeter Eisentraut2000-06-14
| | | | | | | | | | | we'll get there one day. Use `cat' to create aclocal.m4, not `aclocal'. Some people don't have automake installed. Only run the autoconf rule in the top-level GNUmakefile if the invoker specified `make configure', don't run it automatically because of CVS timestamp skew.
* Rename rule CURRENT to OLD in source tree. Add mapping for backwardBruce Momjian2000-06-12
| | | | compatiblity with old rules.
* Back out pg_shadow changes to allow create table and locking permissions.Bruce Momjian2000-06-12
|
* Update sequence-related functions to new fmgr style. Remove downcasing,Tom Lane2000-06-11
| | | | | | | | quote-stripping, and acl-checking tasks for these functions from the parser, and do them at function execution time instead. This fixes the failure of pg_dump to produce correct output for nextval(Foo) used in a rule, and also eliminates the restriction that the argument of these functions must be a parse-time constant.
* I have large database and with this DB work more users and I very needBruce Momjian2000-06-09
| | | | | | | | | | | | | | | | | | | | | | | | more restriction for fretful users. The current PG allow define only NO-CREATE-DB and NO-CREATE-USER restriction, but for some users I need NO-CREATE-TABLE and NO-LOCK-TABLE. This patch add to current code NOCREATETABLE and NOLOCKTABLE feature: CREATE USER username [ WITH [ SYSID uid ] [ PASSWORD 'password' ] ] [ CREATEDB | NOCREATEDB ] [ CREATEUSER | NOCREATEUSER ] -> [ CREATETABLE | NOCREATETABLE ] [ LOCKTABLE | NOLOCKTABLE ] ...etc. If CREATETABLE or LOCKTABLE is not specific in CREATE USER command, as default is set CREATETABLE or LOCKTABLE (true). A user with NOCREATETABLE restriction can't call CREATE TABLE or SELECT INTO commands, only create temp table is allow for him. Karel
* Inheritance overhaul by Chris Bitmead <chris@bitmead.com>Bruce Momjian2000-06-09
|
* Another round of updates for new fmgr, mostly in the datetime code.Tom Lane2000-06-09
|
* Mark functions as static and ifdef NOT_USED as appropriate.Bruce Momjian2000-06-08
|
* Re-order pg_listener index so it can later be used in an index scan.Bruce Momjian2000-06-07
|
* Update for 7.0.2.Bruce Momjian2000-06-05
|
* Latest round of fmgr updates. All functions with bool,char, or int2Tom Lane2000-06-05
| | | | | | | inputs have been converted to newstyle. This should go a long way towards fixing our portability problems with platforms where char and short parameters are passed differently from int-width parameters. Still more to do for the Alpha port however.
* Disallow CLOSE of reserved system portal names.Tom Lane2000-06-04
|
* New ps display code, works on more platforms.Peter Eisentraut2000-06-04
| | | | | | Install a default configuration file. Clean up some funny business in the config file code.
* Remove NT-specific file open defines by defining our own open macros forBruce Momjian2000-06-02
| | | | "rb" and "wb".
* If create/drop database are going to call closeAllVfds(), they oughtTom Lane2000-06-02
| | | | | to do it at the last moment before calling system() ... not at some randomly-chosen earlier point in the routine ...
* Create an fd.c entry point that is just like plain open(2) except thatTom Lane2000-06-02
| | | | | | | | | | it will close VFDs if necessary to surmount ENFILE or EMFILE failures. Make use of this in md.c, xlog.c, and user.c routines that were formerly vulnerable to these failures. In particular, this should handle failures of mdblindwrt() that have been observed under heavy load conditions. (By golly, every other process on the system may crash after Postgres eats up all the kernel FDs, but Postgres will keep going!)
* The heralded `Grand Unified Configuration scheme' (GUC)Peter Eisentraut2000-05-31
| | | | | | | | | | | | | That means you can now set your options in either or all of $PGDATA/configuration, some postmaster option (--enable-fsync=off), or set a SET command. The list of options is in backend/utils/misc/guc.c, documentation will be written post haste. pg_options is gone, so is that pq_geqo config file. Also removed were backend -K, -Q, and -T options (no longer applicable, although -d0 does the same as -Q). Added to configure an --enable-syslog option. changed all callers from TPRINTF to elog(DEBUG)
* Added header files required for ALTER TABLE DROP COLUMNHiroshi Inoue2000-05-30
| | | | trial implementation.
* Third round of fmgr updates: eliminate calls using fmgr() andTom Lane2000-05-30
| | | | | fmgr_faddr() in favor of new-style calls. Lots of cleanup of sloppy casts to use XXXGetDatum and DatumGetXXX ...
* Remove unused include files. Do not touch /port or includes used by defines.Bruce Momjian2000-05-30
|
* Add analyze.c file for split.Bruce Momjian2000-05-29
|
* Split vacuum and analyze into separate filesBruce Momjian2000-05-29
|
* Update messages.Bruce Momjian2000-05-29
|
* Make analyze do vacuum/analyze in one step.Bruce Momjian2000-05-29
|
* More vacuum cleanupBruce Momjian2000-05-29
|
* more cleanupBruce Momjian2000-05-29
|
* Add analyze log messages for verbose mode.Bruce Momjian2000-05-29
|
* cleanupBruce Momjian2000-05-29
|
* Allow vacuum to perform analyze with shared lock. Update cvs manual.Bruce Momjian2000-05-29
|
* Generated header files parse.h and fmgroids.h are now copied intoTom Lane2000-05-29
| | | | | the src/include tree, so that -I backend is no longer necessary anywhere. Also, clean up some bit rot in contrib tree.
* Second round of fmgr changes: triggers are now invoked in new style,Tom Lane2000-05-29
| | | | CurrentTriggerData is history.
* More vacuum cleanupsBruce Momjian2000-05-29
|
* More vacuum renaming.Bruce Momjian2000-05-29
|
* Miscellaneous cleanups of places that needed to account for newTom Lane2000-05-28
| | | | pg_language entries.
* First round of changes for new fmgr interface. fmgr itself and theTom Lane2000-05-28
| | | | | | | key call sites are changed, but most called functions are still oldstyle. An exception is that the PL managers are updated (so, for example, NULL handling now behaves as expected in plperl and plpgsql functions). NOTE initdb is forced due to added column in pg_proc.
* Do table renaming in a sane order: physical file rename must happenTom Lane2000-05-25
| | | | | | | *last*, after all updating of system catalogs. In old code, an error detected during TypeRename left the relation hosed. Also, add a call to flush the relation's relcache entry, rather than trusting to shared cache invalidation to flush it for us.
* On solaris, createdb/dropdb fails because of strange behavior of system().Tatsuo Ishii2000-05-25
| | | | | (it returns error with errno ECHILD upon successful completion of commands). This fix ignores an error from system() if errno == ECHILD.
* Revise FlushRelationBuffers/ReleaseRelationBuffers per discussion withTom Lane2000-05-19
| | | | | | | | | | | | | | | | | | | | | Hiroshi. ReleaseRelationBuffers now removes rel's buffers from pool, instead of merely marking them nondirty. The old code would leave valid buffers for a deleted relation, which didn't cause any known problems but can't possibly be a good idea. There were several places which called ReleaseRelationBuffers *and* FlushRelationBuffers, which is now unnecessary; but there were others that did not. FlushRelationBuffers no longer emits a warning notice if it finds dirty buffers to flush, because with the current bufmgr behavior that's not an unexpected condition. Also, FlushRelationBuffers will flush out all dirty buffers for the relation regardless of block number. This ensures that pg_upgrade's expectations are met about tuple on-row status bits being up-to-date on disk. Lastly, tweak BufTableDelete() to clear the buffer's tag so that no one can mistake it for being a still-valid buffer for the page it once held. Formerly, the buffer would not be found by buffer hashtable searches after BufTableDelete(), but it would still be thought to belong to its old relation by the routines that sequentially scan the shared-buffer array. Again I know of no bugs caused by that, but it still can't be a good idea.
* Change remove function warning for built-ins.Bruce Momjian2000-05-18
|
* Throw NOTICE on built-in function removalBruce Momjian2000-05-18
|
* Reduce COPY IN lock from AccessExclusive to a more reasonableTom Lane2000-05-18
| | | | | | | RowExclusive (my fault). Also, install a check to prevent people from trying COPY BINARY to stdout/from stdin. No way that will work unless we redesign the frontend COPY protocol ... which is not worth the trouble in the near future ...
* Finally fix LISTEN problem.Bruce Momjian2000-05-14
|