summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2001-01-22Remove rangechecks on errno; just call strerror unconditionally. ThisTom Lane
eliminates a raft of portability issues, including whether sys_nerr exists, whether the platform has any valid negative errnos, etc. The downside is minimal: errno shouldn't ever contain an invalid value anyway, and if it does, reasonably modern versions of strerror will not choke. This rangecheck idea seemed good at the time, but it's clearly a net loss, and I apologize to all concerned for having ever put it in.
2001-01-22Clean up lockmanager data structures some more, in preparation for plannedTom Lane
rewrite of deadlock checking. Lock holder objects are now reachable from the associated LOCK as well as from the owning PROC. This makes it practical to find all the processes holding a lock, as well as all those waiting on the lock. Also, clean up some of the grottier aspects of the SHMQueue API, and cause the waitProcs list to be stored in the intuitive direction instead of the nonintuitive one. (Bet you didn't know that the code followed the 'prev' link to get to the next waiting process, instead of the 'next' link. It doesn't do that anymore.)
2001-01-22Synced preproc.y with gram.y and added missing include file to pgc.l.Michael Meskes
2001-01-22Clean up per-tuple memory leaks in trigger firing and plpgsqlTom Lane
expression evaluation.
2001-01-22All the global memory contexts should be DLLIMPORT, if any are.Tom Lane
2001-01-21Put quotes around environment variables.Bruce Momjian
2001-01-21Back out patch for BLOB operations until approval.Bruce Momjian
2001-01-21Hello,Bruce Momjian
here is the patch attached which do check in each BLOB operation, if we are in transaction, and raise an error otherwise. This will prevent such mistakes. -- Sincerely Yours, Denis Perchine
2001-01-21Deal with C++ incompatibility of sys_nerr declaration by taking it outTom Lane
of c.h altogether, and putting it into the only places that use it (elog.c and exc.c), instead. Modify these routines to check for a NULL or empty-string return from strerror, too, since some platforms define strerror to return empty string for unknown errors (what a useless definition that is ...). Clean up some cruft in ExcPrint while at it.
2001-01-20Get rid of sunos4-only strerror() macro, and arrange to use theTom Lane
implementation in backend/port/strerror.c if configure finds no strerror in libc, same as we do for snprintf and inet_aton.
2001-01-20Remove no-longer-used STRERROR2 config symbol.Tom Lane
2001-01-20Get rid of initdb -t bugs by the simple expedient of getting rid ofTom Lane
initdb -t. This option is obsoleted by 7.1's ability to drop and recreate template1 during normal operation.
2001-01-20Give a good error message for what's likely to be a common syntax error,Tom Lane
namely omitting the alias clause for a sub-SELECT in FROM.
2001-01-20Add missing piece of BitString support to node output functions. ExpandPeter Eisentraut
and remove IsA_Value macro.
2001-01-20Still further tweaking of s_lock assembler: do not assume that leadingTom Lane
whitespace is unimportant in assembly code. Also, move VAX definition of typedef slock_t to port header files to be like all the other ports. Note that netbsd.h and openbsd.h are now identical, and I rather think that freebsd.h is broken in the places where it doesn't agree --- but I'll leave it to the freebsders to look at that.
2001-01-19From Jason Tishler <jt@dothill.com>Peter Eisentraut
* doc/FAQ_MSWIN: Update to be consistent with software -- mainly change comment from lack of Cygwin UNIX domain socket support and to list of current Cygwin UNIX domain socket issues. * src/include/config.h.in: Enable UNIX domain sockets for Cygwin. * src/include/port/win.h: Disable UNIX domain sockets for Cygwin b20.1. * src/test/regress/pg_regress.sh: Use UNIX domain sockets for Cygwin instead of TCP/IP.
2001-01-19Make critical sections (elog->crash) and interrupt holdoff sectionsTom Lane
into distinct concepts, per recent discussion on pghackers.
2001-01-19cleanup.Bruce Momjian
2001-01-19Remove ; and add \n to ASM code.Bruce Momjian
2001-01-19Update to reality.Peter Eisentraut
2001-01-19Make pqexpbuffer a little more robust, per bug report from Heinz Ekker.Tom Lane
2001-01-19Repair circular dependencies and broken clean commands.Peter Eisentraut
2001-01-19ChangePeter Eisentraut
#! /usr/local/bin/perl -w to #! /usr/bin/perl The path is probably more portable, and the -w was kind of silly for a six line script that produces two warnings as it stands.
2001-01-19ChangePeter Eisentraut
#! /usr/local/bin/python to #! /usr/bin/env python which is the recommended way.
2001-01-19> > I have attached a simple change to src/pl/plperl/plperl.c toBruce Momjian
> > enable the :bash_math opcodes. Currently plperl.c only > > enables the :default opcodes. This leave out about five of six > > math functions including sqrt(). Travis Bauer
2001-01-19Fri Jan 19 08:47:00 GMT 2001 peter@retep.org.ukPeter Mount
- Applied patch submitted by John Schutz <schutz@austin.rr.com> that fixed a bug with ANT's SQL functions (not needed for building but nice to have fixed).
2001-01-19Fix alignmentBruce Momjian
2001-01-19Fix univel asm alignmentBruce Momjian
2001-01-19Suppress compiler warning in MULTIBYTE code.Tom Lane
2001-01-19Suppress compiler warning in MULTIBYTE case.Tom Lane
2001-01-19Suppress unused-variable warning in non-Assert compilations.Tom Lane
2001-01-19Add __volatile__ to all __asm__ and make consistent indentingBruce Momjian
2001-01-19New ASM format:Bruce Momjian
/* * Standard __asm__ format: * * __asm__( * "command;" * "command;" * "command;" * : "=r"(_res) return value, in register * : "r"(lock) argument, 'lock pointer', in register * : "r0"); inline code uses this register */
2001-01-18Fix VAX ASM '1 f' -> '1f'.Bruce Momjian
2001-01-18Oops. Remove extra semicolon in comment.Bruce Momjian
2001-01-18Comment out xlrec in xact_redo - no support for file unlinking onVadim B. Mikheev
commit yet.
2001-01-18Forgot to cvs add UpdateableResultSet.java ;-)Peter Mount
2001-01-18Thu Jan 18 17:37:00 GMT 2001 peter@retep.org.ukPeter Mount
- Added new error message into errors.properties "postgresql.notsensitive" This is used by jdbc2.ResultSet when a method is called that should fetch the current value of a row from the database refreshRow() for example. - These methods no longer throw the not implemented but the new noupdate error. This is in preparation for the Updateable ResultSet support which will overide these methods by extending the existing class to implement that functionality, but needed to show something other than notimplemented: moveToCurrentRow() moveToInsertRow() rowDeleted() rowInserted() all update*() methods, except those that took the column as a String as they were already implemented to convert the String to an int. - getFetchDirection() and setFetchDirection() now throws "postgresql.notimp" as we only support one direction. The CursorResultSet will overide this when its implemented. - Created a new class under jdbc2 UpdateableResultSet which extends ResultSet and overides the relevent update methods. This allows us to implement them easily at a later date. - In jdbc2.Connection, the following methods are now implemented: createStatement(type,concurrency); getTypeMap(); setTypeMap(Map); - The JDBC2 type mapping scheme almost complete, just needs SQLInput & SQLOutput to be implemented. - Removed some Statement methods that somehow appeared in Connection. - In jdbc2.Statement() getResultSetConcurrency() getResultSetType() setResultSetConcurrency() setResultSetType() - Finally removed the old 6.5.x driver.
2001-01-18Thu Jan 18 12:24:00 GMT 2001 peter@retep.org.ukPeter Mount
- These methods in org.postgresql.jdbc2.ResultSet are now implemented: getBigDecimal(int) ie: without a scale (why did this get missed?) getBlob(int) getCharacterStream(int) getConcurrency() getDate(int,Calendar) getFetchDirection() getFetchSize() getTime(int,Calendar) getTimestamp(int,Calendar) getType() NB: Where int represents the column name, the associated version taking a String were already implemented by calling the int version. - These methods no longer throw the not implemented but the new noupdate error. This is in preparation for the Updateable ResultSet support which will overide these methods by extending the existing class to implement that functionality, but needed to show something other than notimplemented: cancelRowUpdates() deleteRow() - Added new error message into errors.properties "postgresql.noupdate" This is used by jdbc2.ResultSet when an update method is called and the ResultSet is not updateable. A new method notUpdateable() has been added to that class to throw this exception, keeping the binary size down. - Added new error message into errors.properties "postgresql.psqlnotimp" This is used instead of unimplemented when it's a feature in the backend that is preventing this method from being implemented. - Removed getKeysetSize() as its not part of the ResultSet API Thu Jan 18 09:46:00 GMT 2001 peter@retep.org.uk - Applied modified patch from Richard Bullington-McGuire <rbulling@microstate.com>. I had to modify it as some of the code patched now exists in different classes, and some of it actually patched obsolete code. Wed Jan 17 10:19:00 GMT 2001 peter@retep.org.uk - Updated Implementation to include both ANT & JBuilder - Updated README to reflect the changes since 7.0 - Created jdbc.jpr file which allows JBuilder to be used to edit the source. JBuilder _CAN_NOT_ be used to compile. You must use ANT for that. It's only to allow JBuilders syntax checking to improve the drivers source. Refer to Implementation for more details
2001-01-18Fix some leaks(was my fault).Hiroshi Inoue
2001-01-18Fix up "Postgres-style" time interval representation when fields haveThomas G. Lockhart
mixed-signs. Previous effort left way too many minus signs, and was at least as broken as the one before that :( Clean up "ISO-style" time interval representation to omit zero fields if there is at least one non-zero field. Supress some leading plus signs when not necessary for clarity. Replace every #ifdef __CYGWIN__ block with a cleaner TIMEZONE_GLOBAL macro defined in datetime.h.
2001-01-18Fix performance issue with qualifications on VIEWs: outer query shouldTom Lane
try to push restrictions on the view down into the view subquery, so that they can become indexscan quals or what-have-you rather than being applied at the top level of the subquery. 7.0 and before were able to do this, though in a much klugier way, and I'd hate to have anyone complaining that 7.1 is stupider than 7.0 ...
2001-01-18Change LockClassinfoForUpdate() to retry mark4update() in caseHiroshi Inoue
the tuple is already uodated. (If LockClassinfoForUpdate() is thought to be useful).
2001-01-17attached is a patch that makes SysV semaphore emulationBruce Momjian
using POSIX semaphores more robust on Darwin 1.2/Mac OS X Public Beta. this is for the version of 7.1 available via anon cvs as of Jan 14 2001 14:00 PST. since the semaphores and shared memory created by this emulator are shared with the backends via fork(), their persistent names are not necessary. removing their names with shm_unlink() and sem_unlink() after creation obviates the need for any "ipcclean" function. further, without these changes, the shared memory (and, therefore, the semaphores) will not be re-initialized/re-created after the first execution of the postmaster, until reboot or until some (non-existent) ipcclean function is executed. this patch does the following: 1) if the shared memory segment "SysV_Sem_Info" already existed, it is cleaned up. it shouldn't be there anyways. 2) the real indicator for whether the shared memory/semaphore emulator has been initialized is if "SemInfo" has been initialized. the shared memory and semaphores must be initialized regardless of whether there was a garbage shared memory segment lying around. 3) the shared memory segment "SysV_Sem_Info" is created with "O_EXCL" to catch the case where two postmasters might be starting simultaneously, so they don't both end up with the same shared memory (one will fail). note that this can't be done with the semaphores because Darwin 1.2 has a bug where attempting to open an existing semaphore with "O_EXCL" set will ruin the semaphore until the next reboot. 4) the shared memory segment "SysV_Sem_Info" is unlinked after it is created. it will then exist without a name until the postmaster and all backend children exit. 5) all semaphores are unlinked after they are created. they'll then exist without names until the postmaster and all backend children exit. -michael thornburgh, zenomt@armory.com
2001-01-17Change lcons(x, NIL) to makeList(x) where appropriate.Bruce Momjian
2001-01-17Change comparisons of tm->tm_isdst from "nonzero" to "greater than zero".Thomas G. Lockhart
Not sure why some were this way, and others were already correct, but it seems to have been like this for several years. This caused problems on a few damaged platforms like AIX and IRIX which do not support DST calculations for years before 1970. Thanks to Andreas Zeugswetter <ZeugswetterA@wien.spardat.at> for finding the problem.
2001-01-17Move structure comments from the top block down to the line entries forBruce Momjian
this file to match all the other files, and to be clearer.
2001-01-16Remove bogus backslashes in sed command.Tom Lane
2001-01-16Oops, I had managed to break query-cancel-while-waiting-for-lock.Tom Lane
2001-01-16Rename fields of lock and lockholder structures to something a tad lessTom Lane
confusing, and clean up documentation.