aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* Suppress a couple of compiler warnings seen with older gcc versions.Tom Lane2013-10-22
| | | | | | | | | | | | To wit, bgworker.c: In function `RegisterDynamicBackgroundWorker': bgworker.c:761: warning: `generation' might be used uninitialized in this function dsm_impl.c: In function `dsm_impl_op': dsm_impl.c:197: warning: control reaches end of non-void function Neither of these represent actual bugs, but we may as well tweak the code so that more compilers can tell that. This won't change the generated code on compilers that do recognize that the cases are unreachable.
* Replace pg_asprintf() with psprintf().Tom Lane2013-10-22
| | | | | | This eliminates an awkward coding pattern that's also unnecessarily inconsistent with backend coding. psprintf() is now the thing to use everywhere.
* Get rid of use of asprintf() in favor of a more portable implementation.Tom Lane2013-10-22
| | | | | | | | | | | | | | | | asprintf(), aside from not being particularly portable, has a fundamentally badly-designed API; the psprintf() function that was added in passing in the previous patch has a much better API choice. Moreover, the NetBSD implementation that was borrowed for the previous patch doesn't work with non-C99-compliant vsnprintf, which is something we still have to cope with on some platforms; and it depends on va_copy which isn't all that portable either. Get rid of that code in favor of an implementation similar to what we've used for many years in stringinfo.c. Also, move it into libpgcommon since it's not really libpgport material. I think this patch will be enough to turn the buildfarm green again, but there's still cosmetic work left to do, namely get rid of pg_asprintf() in favor of using psprintf(). That will come in a followon patch.
* Make use of psprintf() in recent changesPeter Eisentraut2013-10-22
|
* Fix blatantly broken record_image_cmp() logic for pass-by-value fields.Tom Lane2013-10-22
| | | | Doesn't anybody here pay attention to compiler warnings?
* Consistently use unsigned arithmetic for alignment calculations.Noah Misch2013-10-20
| | | | | | | | This avoids an assumption about the signed number representation. It is anticipated to have no functional changes on supported configurations; many two's complement assumptions remain elsewhere. Per a suggestion from Andres Freund.
* Add libpgcommon to backend gettext source filesPeter Eisentraut2013-10-19
| | | | | This ought to have been done when libpgcommon was split off from libpgport.
* Move rmtree() from libpgport to libpgcommonPeter Eisentraut2013-10-19
| | | | It requires pgfnames() from libpgcommon.
* Move pgfnames() from libpgport to libpgcommonPeter Eisentraut2013-10-18
| | | | It requires pstrdup() from libpgcommon.
* Allow only some columns of a view to be auto-updateable.Robert Haas2013-10-18
| | | | | | | | | | Previously, unless all columns were auto-updateable, we wouldn't inserts, updates, or deletes, or at least not without a rule or trigger; now, we'll allow inserts and updates that target only the auto-updateable columns, and deletes even if there are no auto-updateable columns at all provided the view definition is otherwise suitable. Dean Rasheed, reviewed by Marko Tiikkaja
* Provide a reliable mechanism for terminating a background worker.Robert Haas2013-10-18
| | | | | | | | | | | | Although previously-introduced APIs allow the process that registers a background worker to obtain the worker's PID, there's no way to prevent a worker that is not currently running from being restarted. This patch introduces a new API TerminateBackgroundWorker() that prevents the background worker from being restarted, terminates it if it is currently running, and causes it to be unregistered if or when it is not running. Patch by me. Review by Michael Paquier and KaiGai Kohei.
* Fix for lack of va_copy() on certain Windows versionsPeter Eisentraut2013-10-18
| | | | Based-on-patch-by: David Rowley <dgrowleyml@gmail.com>
* Add libpgport to isolationtester on MSVCPeter Eisentraut2013-10-18
| | | | From: Asif Naeem <anaeem.it@gmail.com>
* Switch order of libpgport and libpgcommon in MSVC build as wellPeter Eisentraut2013-10-18
|
* Remove IRIX port.Robert Haas2013-10-18
| | | | | | | Development of IRIX has been discontinued, and support is scheduled to end in December of 2013. Therefore, there will be no supported versions of this operating system by the time PostgreSQL 9.4 is released. Furthermore, we have no maintainer for this platform.
* Switch dependency order of libpgcommon and libpgportPeter Eisentraut2013-10-17
| | | | | | | | | | | Continuing 63f32f3416a8b4f8e057dc184e8e8eae734ccc8a, libpgcommon should depend on libpgport, but not vice versa. But wait_result_to_str() in wait_error.c depends on pstrdup() in libpgcommon. So move exec.c and wait_error.c from libpgport to libpgcommon. Also switch the link order in the place that's actually used by the failing ecpg builds. The function declarations have been left in port.h for now. That should perhaps be separated sometime.
* Remove spinlock support for SINIX, Sun3, and NS32K.Robert Haas2013-10-17
| | | | | | | | | | | | | | | | | | | | All of these platforms are very much obsolete. As far as I can determine, the last version of SINIX, later renamed Reliant, occurred some time between 2002 and 2005. The last release of SunOS that would run on a sun3 was released in November of 1991; the last release of OpenBSD which supported that platform was in 2001. The highest clock speed of any processor in the family was 25MHz. The NS32K (national semiconductor 320xx) architecture was retired in 1990. Support can be re-added if a maintainer emerges for any of these platforms, but it seems unlikely. Reviewed by Andres Freund.
* Silence compiler warning when SSL not in useAlvaro Herrera2013-10-17
| | | | Per Jaime Casanova and Vik Fearing
* Allow 5+ digit years for non-ISO timestamp/date strings, where appropriateBruce Momjian2013-10-16
| | | | Report from Haribabu Kommi
* initdb: Suppress dynamic shared memory when probing for max_connections.Robert Haas2013-10-16
| | | | | | | This might not be the right long-term solution here, but it will hopefully turn the buildfarm green again. Oversight noted by Andres Freund
* Switch order of -lpgport and -lpgcommonPeter Eisentraut2013-10-15
| | | | | | Conceptually, libpgcommon can depend on libpgport, but not the other way around. In the past, this might not have mattered, but it's needed now for asprintf.
* In dsm_impl_windows, don't error out when the segment already exists.Robert Haas2013-10-14
| | | | | | | This is the behavior of the other implementations, and the behavior expected by the callers of this function. Amit Kapila
* Fix details missed by dynamic shared memory patch.Robert Haas2013-10-14
| | | | | | Additional documentation update, and a comment fix. Both issues reported by Amit Kapila.
* Translation updates to fix build failuresPeter Eisentraut2013-10-13
| | | | | | | | | | | Now that msgfmt is run with -c by default, older versions of gettext are complaining about the PO headers Last-Translator and Language-Team still having their default values. Newer gettext versions fail to catch this because of a bug (https://savannah.gnu.org/bugs/?40261), which is why this hasn't been noticed before. Copy updated versions of affected translation files from the pgtranslations repository, were those files have been fixed.
* Add asprintf.cPeter Eisentraut2013-10-13
| | | | Forgotten in 5b6d08cd2992922b667564a49f19580f11676050
* Attempt to fix MSVC build for asprintf additionPeter Eisentraut2013-10-13
|
* Add use of asprintf()Peter Eisentraut2013-10-13
| | | | | | | | | Add asprintf(), pg_asprintf(), and psprintf() to simplify string allocation and composition. Replacement implementations taken from NetBSD. Reviewed-by: Álvaro Herrera <alvherre@2ndquadrant.com> Reviewed-by: Asif Naeem <anaeem.it@gmail.com>
* Tweak "line" test to avoid platform-specific floating-point outputPeter Eisentraut2013-10-12
|
* Fix several possibly non-portable gaffs in record_image_ops.Kevin Grittner2013-10-11
| | | | | | Sparc machines in the buildfarm were made happy by the previous fix, but PowerPC machines still are still failing. Hopefully this will cure that.
* Use $(PERL) to invoke duplicate_oidsAlvaro Herrera2013-10-10
| | | | Per buildfarm failure reported by smilodon
* Rework SSL renegotiation codeAlvaro Herrera2013-10-10
| | | | | | | | | | | | | | | | | | | | | | | | | | The existing renegotiation code was home for several bugs: it might erroneously report that renegotiation had failed; it might try to execute another renegotiation while the previous one was pending; it failed to terminate the connection if the renegotiation never actually took place; if a renegotiation was started, the byte count was reset, even if the renegotiation wasn't completed (this isn't good from a security perspective because it means continuing to use a session that should be considered compromised due to volume of data transferred.) The new code is structured to avoid these pitfalls: renegotiation is started a little earlier than the limit has expired; the handshake sequence is retried until it has actually returned successfully, and no more than that, but if it fails too many times, the connection is closed. The byte count is reset only when the renegotiation has succeeded, and if the renegotiation byte count limit expires, the connection is terminated. This commit only touches the master branch, because some of the changes are controversial. If everything goes well, a back-patch might be considered. Per discussion started by message 20130710212017.GB4941@eldon.alvh.no-ip.org
* Remove maintainer-check target, fold into normal buildPeter Eisentraut2013-10-10
| | | | | | | | | | | | | | | | | | make maintainer-check was obscure and rarely called in practice, and many breakages were missed. Fold everything that make maintainer-check used to do into the normal build. Specifically: - Call duplicate_oids when genbki.pl is called. - Check for tabs in SGML files when the documentation is built. - Run msgfmt with the -c option during the regular build. Add an additional configure check to see whether we are using the GNU version. (make maintainer-check probably used to fail with non-GNU msgfmt.) Keep maintainer-check as around as phony target for the time being in case anyone is calling it. But it won't do anything anymore.
* Replace duplicate_oids with Perl implementationPeter Eisentraut2013-10-10
| | | | | | It is more portable, more robust, and more readable. From: Andrew Dunstan <andrew@dunslane.net>
* Update regression tests for line type patchPeter Eisentraut2013-10-10
| | | | Erroneously omitted in 261c7d4b653bc3e44c31fd456d94f292caa50d8f
* initdb: Select working dynamic shared memory implementation.Robert Haas2013-10-10
| | | | | | If POSIX shared memory is supported and works, we prefer it. Otherwise, we prefer System V, except on Windows, where we use the implementation specific to that platform.
* Fix bug in record_image_ops on big endian machines.Kevin Grittner2013-10-10
| | | | | | The buildfarm pointed out the problem. Fix based on suggestion by Robert Haas.
* json_typeof function.Andrew Dunstan2013-10-10
| | | | Andrew Tipton.
* Fix incorrect use of shm_unlink where unlink should be used.Robert Haas2013-10-10
| | | | Per buildfarm.
* Revive line typePeter Eisentraut2013-10-09
| | | | | | | | | | | | | | Change the input/output format to {A,B,C}, to match the internal representation. Complete the implementations of line_in, line_out, line_recv, line_send. Remove comments and error messages about the line type not being implemented. Add regression tests for existing line operators and functions. Reviewed-by: rui hua <365507506hua@gmail.com> Reviewed-by: Álvaro Herrera <alvherre@2ndquadrant.com> Reviewed-by: Jeevan Chalke <jeevan.chalke@enterprisedb.com>
* Allow dynamic allocation of shared memory segments.Robert Haas2013-10-09
| | | | | Patch by myself and Amit Kapila. Design help from Noah Misch. Review by Andres Freund.
* Add record_image_ops opclass for matview concurrent refresh.Kevin Grittner2013-10-09
| | | | | | | | | | | | | | | | | | | REFRESH MATERIALIZED VIEW CONCURRENTLY was broken for any matview containing a column of a type without a default btree operator class. It also did not produce results consistent with a non- concurrent REFRESH or a normal view if any column was of a type which allowed user-visible differences between values which compared as equal according to the type's default btree opclass. Concurrent matview refresh was modified to use the new operators to solve these problems. Documentation was added for record comparison, both for the default btree operator class for record, and the newly added operators. Regression tests now check for proper behavior both for a matview with a box column and a matview containing a citext column. Reviewed by Steve Singer, who suggested some of the doc language.
* Centralize effective_cache_size default settingBruce Momjian2013-10-09
|
* Adjust the effective_cache_size default for standalone backendsBruce Momjian2013-10-08
|
* Again move function where we set effective_cache_size's defaultBruce Momjian2013-10-08
|
* Move new effective_cache_size functionBruce Momjian2013-10-08
| | | | | Previously set_default_effective_cache_size() could not handle fork, non-fork, and bootstrap cases.
* Fix C comment in check_effective_cache_size()Bruce Momjian2013-10-08
|
* Allow drop-index-concurrently-1 test to run at any isolation level.Kevin Grittner2013-10-08
| | | | | It previously reported failure at REPEATABLE READ and SERIALIZABLE transaction isolation levels for make installcheck.
* Update postgres.conf.sample for effective_cache_size's new defaultBruce Momjian2013-10-08
|
* Auto-tune effective_cache size to be 4x shared buffersBruce Momjian2013-10-08
|
* Additional instructions on minor release note creation.Bruce Momjian2013-10-08
|