Commit Graph

187 Commits

Author SHA1 Message Date
Tom Lane 8609d4abf2 Fix portability problems recently exposed by regression tests on Alphas.
1. Distinguish cases where a Datum representing a tuple datatype is an OID
from cases where it is a pointer to TupleTableSlot, and make sure we use
the right typlen in each case.
2. Make fetchatt() and related code support 8-byte by-value datatypes on
machines where Datum is 8 bytes.  Centralize knowledge of the available
by-value datatype sizes in two macros in tupmacs.h, so that this will be
easier if we ever have to do it again.
2000-12-27 23:59:14 +00:00
Tom Lane 6cc842abd3 Revise lock manager to support "session level" locks as well as "transaction
level" locks.  A session lock is not released at transaction commit (but it
is released on transaction abort, to ensure recovery after an elog(ERROR)).
In VACUUM, use a session lock to protect the master table while vacuuming a
TOAST table, so that the TOAST table can be done in an independent
transaction.

I also took this opportunity to do some cleanup and renaming in the lock
code.  The previously noted bug in ProcLockWakeup, that it couldn't wake up
any waiters beyond the first non-wakeable waiter, is now fixed.  Also found
a previously unknown bug of the same kind (failure to scan all members of
a lock queue in some cases) in DeadLockCheck.  This might have led to failure
to detect a deadlock condition, resulting in indefinite waits, but it's
difficult to characterize the conditions required to trigger a failure.
2000-12-22 00:51:54 +00:00
Thomas G. Lockhart 4408f04208 Rename undocumented utility SyncSyncID to MasterSync. 2000-12-21 15:28:05 +00:00
Thomas G. Lockhart e59e805d83 Rename undocumented utility SyncSyncID to MasterSync.
Document MasterSync.
Fix up a couple of print statements to respect $verbose and $debug.
2000-12-21 15:26:04 +00:00
Thomas G. Lockhart 54f2b601ef rserv replication toolkit from Vadim Mikheev. 2000-12-20 17:22:35 +00:00
Thomas G. Lockhart 96edf0c185 Add rserv replication toolkit from Vadim Mikheev. 2000-12-20 17:22:26 +00:00
Thomas G. Lockhart d8231344f7 Utility to convert MySQL schema dumps to SQL92 and PostgreSQL conventions. 2000-12-20 17:20:24 +00:00
Tom Lane c4e3b0c3aa Links to CUBE, SEG contrib items 2000-12-11 20:40:59 +00:00
Tom Lane a3694b420f Gene Selkov's SEG datatype (GiST example code) 2000-12-11 20:40:33 +00:00
Tom Lane 9892ddf5ee Gene Selkov's CUBE datatype (GiST example code) 2000-12-11 20:39:15 +00:00
Bruce Momjian 457f0b8919 Add fulltextindex TODO list. 2000-12-09 15:52:11 +00:00
Tom Lane d9466046c0 Fix bogus makefiles ... these didn't build on platforms that are sticky
about being given accurate references to referenced libraries ...
2000-12-04 01:32:19 +00:00
Tom Lane 74b8fe1717 Seems to have been missed in GetPgUserName updates. 2000-12-04 01:25:35 +00:00
Tom Lane 7a4cc54e58 Eliminate some of the more blatant platform-dependencies ... it builds here now, anyway ... 2000-12-04 01:20:38 +00:00
Tom Lane a27b691e29 Ensure that all uses of <ctype.h> functions are applied to unsigned-char
values, whether the local char type is signed or not.  This is necessary
for portability.  Per discussion on pghackers around 9/16/00.
2000-12-03 20:45:40 +00:00
Peter Eisentraut e5ba2fc5b5 Make all commands that link a program look like
$(CC) $(CFLAGS) $(LDFLAGS) <object files> <extra-libraries> $(LIBS) -o $@

This form seemed to be the most portable, readable, and logical, but in any
case it's better than having a dozen different ones in the tree.
2000-11-30 20:36:13 +00:00
Tom Lane 89345945d9 Remove old, broken code for query_limit(), assert_enable(),
assert_test() functions --- these weren't accomplishing much except to
render the whole module un-loadable ...
2000-11-22 19:34:49 +00:00
Tom Lane 106710946c This file now redundant with README.pg_dumplo; remove it. 2000-11-22 00:01:46 +00:00
Tom Lane c2d1b3919b Code review: minor cleanups, make the world safe for unsigned OIDs.
Improve documentation, too.
2000-11-22 00:00:55 +00:00
Tom Lane 66d276aab8 Mention pgcrypto. 2000-11-21 21:58:23 +00:00
Tom Lane cfbcb6bb21 Make the world safe for unsigned OIDs. 2000-11-21 21:51:58 +00:00
Tom Lane 280a77d3ee Code review and cleanup. 2000-11-21 17:54:21 +00:00
Tom Lane 5bb2300b59 Revise handling of oldstyle/newstyle functions per recent discussions
in pghackers list.  Support for oldstyle internal functions is gone
(no longer needed, since conversion is complete) and pg_language entry
'internal' now implies newstyle call convention.  pg_language entry
'newC' is gone; both old and newstyle dynamically loaded C functions
are now called language 'C'.  A newstyle function must be identified
by an associated info routine.  See src/backend/utils/fmgr/README.
2000-11-20 20:36:57 +00:00
Tom Lane a933ee38bb Change SearchSysCache coding conventions so that a reference count is
maintained for each cache entry.  A cache entry will not be freed until
the matching ReleaseSysCache call has been executed.  This eliminates
worries about cache entries getting dropped while still in use.  See
my posting to pg-hackers of even date for more info.
2000-11-16 22:30:52 +00:00
Bruce Momjian b83047eee2 Remove pg_dumpaccounts from 7.1 tree. 2000-11-02 22:04:51 +00:00
Jan Wieck 94b8640cd9 Added utility script pg_dumpaccounts to contrib.
Derived from pg_dumpall it just dumps users and groups.

Jan
2000-11-02 18:20:12 +00:00
Tatsuo Ishii 6d7f1d3300 Fix for PQsetdb port parameter due to the interface change.
PQsetdb no more recognize "" as the default port number.
2000-11-01 00:45:46 +00:00
Peter Eisentraut 0c0dde6176 Hashing functions from Marko Kreen <marko@l-t.ee> 2000-10-31 13:11:28 +00:00
Tom Lane 4f44aa04b5 Major overhaul of large-object implementation, by Denis Perchine with
kibitzing from Tom Lane.  Large objects are now all stored in a single
system relation "pg_largeobject" --- no more xinv or xinx files, no more
relkind 'l'.  This should offer substantial performance improvement for
large numbers of LOs, since there won't be directory bloat anymore.
It'll also fix problems like running out of locktable space when you
access thousands of LOs in one transaction.
Also clean up cruft in read/write routines.  LOs with "holes" in them
(never-written byte ranges) now work just like Unix files with holes do:
a hole reads as zeroes but doesn't occupy storage space.
INITDB forced!
2000-10-24 01:38:44 +00:00
Peter Eisentraut 805e431a38 Add support for VPATH builds, that is, building somewhere else than in the
source directory.  This involves mostly makefiles using $(srcdir) when they
might have used ".".  (Regression tests don't work with this, yet.)

Sort out usage of CPPFLAGS, CFLAGS (and CXXFLAGS).  Add "override" keyword
in most places, to preserve necessary flags even when the user overrode the
flags.
2000-10-20 21:04:27 +00:00
Peter Eisentraut 18d99bc264 Update soundex to new fmgr interface and fix algorithm 2000-10-04 19:25:34 +00:00
Peter Eisentraut 2a7da3f564 Standardize on __CYGWIN__ rather than __CYGWIN32__ macro. Doesn't matter
either way (although the former is preferred by the Cygwin folks
themselves), but using only one seems nicer.
2000-09-29 13:53:35 +00:00
Peter Eisentraut 2acdef186d Move contrib/odbc/odbc.sql together with odbc driver, remove old files;
revise ODBC "installation instructions"; update some other outdated
documentation; update contrib documentation
2000-09-18 20:11:37 +00:00
Peter Eisentraut 424f0edcb8 Fix relative path references so that make knowns which dependencies refer
to one another. Sort out builddir vs srcdir variable namings. Remove some
now obsoleted make variables.
2000-08-31 16:12:35 +00:00
Thomas G. Lockhart 87523ab8db Comment fixes from Larry Rosenman" <ler@lerctr.org>. 2000-08-23 13:44:14 +00:00
Thomas G. Lockhart aa2a3bfd48 Create and manage information on MAC address OUIs
(Organizationally Unique Identifiers).
 This is the manufacturer's code in the MAC address.
2000-08-23 06:02:23 +00:00
Tom Lane c298d74d49 More functions updated to new fmgr style --- money, name, tid datatypes.
We're reaching the mopup stage here (good thing too, this is getting
tedious).
2000-08-03 16:35:08 +00:00
Tom Lane 87cdaf5491 Remove <values.h> inclusions, no-longer-needed MAXINT definitions. 2000-07-28 02:13:52 +00:00
Tom Lane d0e17e2112 Arrays are toastable. (At least if you initdb, which I didn't force.)
Remove a bunch of crufty code for large-object-based arrays, which is
superseded by TOAST and likely hasn't worked in a long time anyway.
Clean up array code a little, and in particular eliminate its habit
of scribbling on the input array (ie, modifying the input tuple :-().
2000-07-22 03:34:43 +00:00
Tom Lane 436d04435d Stat functions now in main system, contrib code no longer needed. 2000-07-17 03:55:43 +00:00
Peter Eisentraut 0d59dad770 Automatic dependency tracking
The .DEFAULT rule in backend/Makefile is harmful -- removed.
Replace `::' rules by `:'.
2000-07-16 14:50:44 +00:00
Peter Eisentraut cb292206c5 Remove a bunch of unused configure tests, in particular cases where
* the result is not recorded anywhere
* the result is not used anywhere
* the result is only used in some places, whereas others have been getting away with it
* the result is used improperly

Also make command line options handling a little better (e.g., --disable-locale,
while redundant, should really still *dis*able).
2000-07-12 22:59:15 +00:00
Peter Eisentraut 74618e2b82 Another round of those unportable config/build changes :-/
* Add option to build with OpenSSL out of the box. Fix thusly exposed
  bit rot. Although it compiles now, getting this to do something
  useful is left as an exercise.

* Fix Kerberos options to defer checking for required libraries until
  all the other libraries are checked for.

* Change default odbcinst.ini and krb5.srvtab path to PREFIX/etc.

* Install work around for Autoconf's install-sh relative path anomaly.
  Get rid of old INSTL_*_OPTS variables, now that we don't need them
  anymore.

* Use `gunzip -c' instead of g?zcat. Reportedly broke on AIX.

* Look for only one of readline.h or readline/readline.h, not both.

* Make check for PS_STRINGS cacheable. Don't test for the header files
  separately.

* Disable fcntl(F_SETLK) test on Linux.

* Substitute the standard GCC warnings set into CFLAGS in configure,
  don't add it on in Makefile.global.

* Sweep through contrib tree to teach makefiles standard semantics.

... and in completely unrelated news:

* Make postmaster.opts arbitrary options-aware. I still think we need to
  save the environment as well.
2000-07-09 13:14:19 +00:00
Tom Lane 65da0d66b4 Fix misuse of StrNCpy to copy and add null to non-null-terminated data.
Does not work since it fetches one byte beyond the source data, and when
the phase of the moon is wrong, the source data is smack up against the
end of backend memory and you get SIGSEGV.  Don't laugh, this is a fix
for an actual user bug report.
2000-07-07 21:12:53 +00:00
Tom Lane 40f64064ff Update textin() and textout() to new fmgr style. This is just phase
one of updating the whole text datatype, but there are so dang many
calls of these two routines that it seems worth a separate commit.
2000-07-05 23:12:09 +00:00
Bruce Momjian 5c603943ef Makefile cleanup from Karel. 2000-07-04 16:17:21 +00:00
Jan Wieck 31a020f6eb Added CVS header
Jan
2000-07-04 14:37:32 +00:00
Jan Wieck 92010434d4 New contrib module for statistical mathematics
Jan
2000-07-04 14:36:03 +00:00
Tom Lane 4e71240dbb Now that I look at it, is_stopword() is broken and always has been.
Doesn't anyone remember how to program a binary search??
2000-07-04 06:29:27 +00:00
Tom Lane 6d87107b0e Result of strcmp() is a signed int. Per bug report
from Paul McGarry.
2000-07-04 06:20:14 +00:00