- Feb 12, 2013
-
-
Alvaro Herrera authored
libpgcommon is a new static library to allow sharing code among the various frontend programs and backend; this lets us eliminate duplicate implementations of common routines. We avoid libpgport, because that's intended as a place for porting issues; per discussion, it seems better to keep them separate. The first use case, and the only implemented by this patch, is pg_malloc and friends, which many frontend programs were already using. At the same time, we can use this to provide palloc emulation functions for the frontend; this way, some palloc-using files in the backend can also be used by the frontend cleanly. To do this, we change palloc() in the backend to be a function instead of a macro on top of MemoryContextAlloc(). This was previously believed to cause loss of performance, but this implementation has been tweaked by Tom and Andres so that on modern compilers it provides a slight improvement over the previous one. This lets us clean up some places that were already with localized hacks. Most of the pg_malloc/palloc changes in this patch were authored by Andres Freund. Zoltán Böszörményi also independently provided a form of that. libpgcommon infrastructure was authored by Álvaro.
-
- Oct 02, 2012
-
-
Tom Lane authored
On some platforms these functions return NULL, rather than the more common practice of returning a pointer to a zero-sized block of memory. Hack our various wrapper functions to hide the difference by substituting a size request of 1. This is probably not so important for the callers, who should never touch the block anyway if they asked for size 0 --- but it's important for the wrapper functions themselves, which mistakenly treated the NULL result as an out-of-memory failure. This broke at least pg_dump for the case of no user-defined aggregates, as per report from Matthew Carrington. Back-patch to 9.2 to fix the pg_dump issue. Given the lack of previous complaints, it seems likely that there is no live bug in previous releases, even though some of these functions were in place before that.
-
Tom Lane authored
We had a number of variants on the theme of "malloc or die", with the majority named like "pg_malloc", but by no means all. Standardize on the names pg_malloc, pg_malloc0, pg_realloc, pg_strdup. Get rid of pg_calloc entirely in favor of using pg_malloc0. This is an essentially cosmetic change, so no back-patch. (I did find a couple of places where psql and pg_dump were using plain malloc or strdup instead of the pg_ versions, but they don't look significant enough to bother back-patching.)
-
- Jul 04, 2012
-
-
Robert Haas authored
Amit Kapila, reviewed by Shigeru Hanada and Peter Eisentraut, with some modifications by me.
-
- Jun 18, 2012
-
-
Peter Eisentraut authored
Before, some places didn't document the short options (-? and -V), some documented both, some documented nothing, and they were listed in various orders. Now this is hopefully more consistent and complete.
-
- May 08, 2012
-
-
Peter Eisentraut authored
Placeholders such as OPTION are typically kept in singular.
-
- Jan 25, 2011
-
-
Bruce Momjian authored
-
- Sep 22, 2010
-
-
Magnus Hagander authored
-
- Sep 20, 2010
-
-
Magnus Hagander authored
-
- May 12, 2010
-
-
Bruce Momjian authored
Add PGAPPICON to all executable makefiles.
-
- Feb 26, 2010
-
-
Bruce Momjian authored
-
- Feb 07, 2010
-
-
Tom Lane authored
of shared or nailed system catalogs. This has two key benefits: * The new CLUSTER-based VACUUM FULL can be applied safely to all catalogs. * We no longer have to use an unsafe reindex-in-place approach for reindexing shared catalogs. CLUSTER on nailed catalogs now works too, although I left it disabled on shared catalogs because the resulting pg_index.indisclustered update would only be visible in one database. Since reindexing shared system catalogs is now fully transactional and crash-safe, the former special cases in REINDEX behavior have been removed; shared catalogs are treated the same as non-shared. This commit does not do anything about the recently-discussed problem of deadlocks between VACUUM FULL/CLUSTER on a system catalog and other concurrent queries; will address that in a separate patch. As a stopgap, parallel_schedule has been tweaked to run vacuum.sql by itself, to avoid such failures during the regression tests.
-
- Jun 11, 2009
-
-
Bruce Momjian authored
provided by Andrew.
-
- Feb 27, 2009
-
-
Peter Eisentraut authored
options and normally formatted help output.
-
- Feb 25, 2009
-
-
Peter Eisentraut authored
leftovers from when the password was read from stdin.
-
- Dec 11, 2007
-
-
Tom Lane authored
hazards. Instead teach these programs to prompt for a password when necessary, just like all our other programs. I did not bother to invent -W switches for them, since the return on investment seems so low.
-
- Nov 11, 2007
-
-
Bruce Momjian authored
-
Bruce Momjian authored
or will never be converted.
-
- Jul 26, 2007
-
-
Tom Lane authored
named pg_toast_temp_nnn, alongside the pg_temp_nnn schemas used for the temp tables themselves. This allows low-level code such as the relcache to recognize that these tables are indeed temporary, which enables various optimizations such as not WAL-logging changes and using local rather than shared buffers for access. Aside from obvious performance benefits, this provides a solution to bug #3483, in which other backends unexpectedly held open file references to temporary tables. The scheme preserves the property that TOAST tables are not in any schema that's normally in the search path, so they don't conflict with user table names. initdb forced because of changes in system view definitions.
-
- Jul 16, 2007
-
-
Tom Lane authored
not-too-bright compilers. Per buildfarm results.
-
- Jun 27, 2007
-
-
Tom Lane authored
installations whose pg_config program does not appear first in the PATH. Per gripe from Eddie Stanley and subsequent discussions with Fabien Coelho and others.
-
- Oct 19, 2006
-
-
Tom Lane authored
-
- Mar 11, 2006
-
-
Bruce Momjian authored
-
- Oct 15, 2005
-
-
Bruce Momjian authored
-
- Sep 27, 2005
-
-
Tom Lane authored
to avoid useless multiple executions of pg_config.
-
- Jun 21, 2005
-
-
Tom Lane authored
unlike template0 and template1 does not have any special status in terms of backend functionality. However, all external utilities such as createuser and createdb now connect to "postgres" instead of template1, and the documentation is changed to encourage people to use "postgres" instead of template1 as a play area. This should fix some longstanding gotchas involving unexpected propagation of database objects by createdb (when you used template1 without understanding the implications), as well as ameliorating the problem that CREATE DATABASE is unhappy if anyone else is connected to template1. Patch by Dave Page, minor editing by Tom Lane. All per recent pghackers discussions.
-
- Mar 25, 2005
-
-
Bruce Momjian authored
immunte to changes in libpq's usage of pgport between major versions.
-
- Dec 02, 2004
-
-
Neil Conway authored
Michael Fuhr. Along the way, fix a bunch of accesses to uninitialized memory, add a mystrdup() routine and use it to cleanup some code.
-
- Nov 12, 2004
-
-
Tom Lane authored
referencing the Database File Layout chapter I just added to the main documentation.
-
- Nov 05, 2004
-
-
Tom Lane authored
clause implicitly whenever one is not given explicitly. Remove concept of a schema having an associated tablespace, and simplify the rules for selecting a default tablespace for a table or index. It's now just (a) explicit TABLESPACE clause; (b) default_tablespace if that's not an empty string; (c) database's default. This will allow pg_dump to use SET commands instead of tablespace clauses to determine object locations (but I didn't actually make it do so). All per recent discussions.
-
- Sep 17, 2004
-
-
Tom Lane authored
Alvaro Herrera
-
- Aug 20, 2004
-
-
Bruce Momjian authored
> > The patch adds missing the "libpgport.a" file to the installation under > "install-all-headers". It is needed by some contribs. I install the > library in "pkglibdir", but I was wondering whether it should be "libdir"? > I was wondering also whether it would make sense to have a "libpgport.so"? > > It fixes various macros which are used by contrib makefiles, especially > libpq_*dir and LDFLAGS when used under PGXS. It seems to me that they are > needed to > > It adds the ability to test and use PGXS with contribs, with "make > USE_PGXS=1". Without the macro, this is exactly as before, there should be > no difference, esp. wrt the vpath feature that seemed broken by previous > submission. So it should not harm anybody, and it is useful at least to me. > > It fixes some inconsistencies in various contrib makefiles > (useless override, ":=" instead of "="). Fabien COELHO
-
- Mar 03, 2004
-
-
Bruce Momjian authored
-
- Nov 29, 2003
-
-
PostgreSQL Daemon authored
$Header: -> $PostgreSQL Changes ...
-
- Aug 04, 2003
-
-
Bruce Momjian authored
-
- Jul 27, 2003
-
-
Bruce Momjian authored
-
Bruce Momjian authored
-
Bruce Momjian authored
the new timetravel.c, new timetravel.README (cut from spi/README and modified), modified timetravel.sql.in and modified timetravel.example. Features: - optionally 3 parameter for insert/update/delete user name - work with CREATE UNIQUE INDEX ixxx on table xxx (unique_field,time_off); (the original version was work with unique index on 6.5.0-6.5.3, and not work on 7.3.2,7.3.3) (before 6.5.0 and between 6.5.3 and 7.3.2 I dont know) - get_timetravel(tablename) function for check timetravel-status. - timetravel trigger not change oid of the active record. (it is not a good feature, because the old version is automatice prevent the paralel update with "where oid=nnn") B?jthe Zolt?n
-
- May 14, 2003
-
-
Tom Lane authored
only remnant of this failed experiment is that the server will take SET AUTOCOMMIT TO ON. Still TODO: provide some client-side autocommit logic in libpq.
-
- Mar 10, 2003
-
-
Tom Lane authored
PostgreSQL source code. Neil Conway
-