| Commit message (Collapse) | Author | Age |
| |
|
| |
|
|
|
|
| |
fit PostgreSQL style.
|
| |
|
|
|
|
|
|
|
| |
on Windows. ecpglib doesn't link with libpgport, but picks and compiles
the .c files it needs individually. To cope with that, move the setlocale()
wrapper from chklocale.c to a separate setlocale.c file, and include that
in ecpglib.
|
| |
|
|
|
|
| |
Patch originally by Akira Kurosawa <kurosawa-akira@mxc.nes.nec.co.jp>.
|
| |
|
|
|
|
|
|
| |
Per recommendation from Peter. Neither choice is bulletproof, but this
is the existing style and it does help prevent unexpected environment
variable substitution.
|
|
|
|
|
|
|
|
|
|
|
| |
The initial commit of the ALTER TABLE ADD FOREIGN KEY NOT VALID feature
failed to support labeling such constraints as deferrable. The best fix
for this seems to be to fold NOT VALID into ConstraintAttributeSpec.
That's a bit more general than the documented syntax, but it allows
better-targeted syntax error messages.
In addition, do some mostly-but-not-entirely-cosmetic code review for
the whole NOT VALID patch.
|
|
|
|
|
|
| |
Apparently there is no buildfarm critter exercising this case after all,
because it fails in several places. With this patch, build, install,
check-world, and installcheck-world pass for me on OS X.
|
|
|
|
| |
We have a SCM, so we don't need to keep old versions of files around.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Normally nel == 0 works okay because the initial value of "last" will be
less than "base"; but if "base" is zero then the calculation wraps around
and we have a very large (unsigned) value for "last", so that the loop can
be entered and we get a SIGSEGV on a bogus pointer.
This is certainly the proximate cause of the recent reports of Windows
builds crashing on 'infinity'::timestamp --- evidently, they're either not
setting an active timezonetktbl, or setting an empty one. It's not yet
clear to me why it's only happening on Windows and not happening on any
buildfarm member. But even if that's due to some bug elsewhere, it seems
wise for this function to not choke on the powerup values of
timezonetktbl/sztimezonetktbl.
I also changed the copy of this code in ecpglib, although I am not sure
whether it's exposed to a similar hazard.
Per report and stack trace from Richard Broersma.
|
|
|
|
|
|
| |
Per recent -hackers discussion. The formats in question are %G and %V,
and cause warnings on MinGW at least. We assume the ecpg application
knows what it's doing if it passes these formats to the library.
|
|
|
|
|
|
|
|
|
| |
printf type functions.
The style is set to "printf" for backwards compatibility everywhere except
on Windows, where it is set to "gnu_printf", which eliminates hundreds of
false error messages from modern versions of gcc arising from %m and %ll{d,u}
formats.
|
|
|
|
|
|
|
|
| |
instead."
This reverts commit 9b1508af8971c1627cda5bb65f5e9eddb9a1a55e.
As requested by Tom.
|
| |
|
|
|
|
| |
we know what should be stored in there.
|
| |
|
|
|
|
|
| |
Also refactor things a little bit so that the same methods for setting
test locale and encoding can be used everywhere.
|
|
|
|
|
|
| |
The recent patch to remove gcc 4.6 warnings created some new ones, at
least on my rather old gcc version. Try to make everybody happy by
casting to "void" when we just want to discard the result.
|
|
|
|
|
|
| |
This warning is new in gcc 4.6 and part of -Wall. This patch cleans
up most of the noise, but there are some still warnings that are
trickier to remove.
|
|
|
|
| |
Backport to 9.0, we're not supporting this compiler on earlier releases.
|
| |
|
|
|
|
| |
using -Wstrict-prototypes
|
|
|
|
|
|
|
|
|
| |
variable hiding. A constant is not a variable. It worked in most cases by
accident, because we add constants to the global list of variables (why?),
but float constants like 1.23 were interpreted as struct field references,
and not found.
Backpatch to 9.0, where the test for variable hiding was added.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In addition to the
all-foo-recurse: all-bar-recurse
dependencies that constraint the order of the rule execution, we need
install-foo-recurse: install-bar-recurse
dependencies in case one runs make install without a make all first,
as some people apparently do.
|
|
|
|
| |
Colson <andy@squeakycode.net>.
|
|
|
|
| |
Andy Colson <andy@squeakycode.net>.
|
|
|
|
| |
dynamic cursornames even in WHERE CURRENT OF clauses.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Recent releases had a check on rel->rd_refcnt in heap_drop_with_catalog,
but failed to cover the possibility of pending trigger events at DROP time.
(Before 8.4 we didn't even check the refcnt.) When the trigger events were
eventually fired, you'd get "could not open relation with OID nnn" errors,
as in recent report from strk. Better to throw a suitable error when the
DROP is attempted.
Also add a similar check in DROP INDEX.
Back-patch to all supported branches.
|
|
|
|
| |
them.
|
|
|
|
| |
array dimension.
|
| |
|
|
|
|
| |
release 8.4 - earlier releases would require more changes and it's not worth the trouble.
|
|
|
|
|
|
| |
string". This is not really needed because the string gets copied to the output
untranslated anyway, but by adding this rule the lexer stays in sync with the
backend lexer.
|
| |
|
|
|
|
|
|
|
|
|
| |
Add some additional dependencies to constrain the build order to prevent
parallel make from failing. In the case of src/Makefile, this is likely to be
too complicated to be worth maintaining, so just add .NOTPARALLEL to get the
old for-loop-like behavior.
More fine-tuning might be necessary for some platforms or configurations.
|
|
|
|
| |
Itagaki Takahiro, with slight modifications.
|
|
|
|
|
|
|
|
| |
Replace for loops in makefiles with proper dependencies. Parallel
make can now span across directories. Also, make -k and make -q work
properly.
GNU make 3.80 or newer is now required.
|
|
|
|
|
|
| |
Use bool as type for booleans instead of int.
Do not implicitely cast size_t to int.
Make the compiler stop complaining about unused variables by adding an empty statement.
|
|
|
|
|
|
|
| |
The trick is to not try to build executables directly from .c files,
but to always build the intermediate .o files. For obscure reasons,
Darwin's version of gcc will leave debug cruft behind in the first
case but not the second. Per complaint from Robert Haas.
|
|
|
|
|
|
| |
ecpglib. Instead of parsing the statement just as ask the database server. This
patch removes the whole client side track keeping of the current transaction
status.
|
| |
|
|
|
|
|
| |
Fix overly-enthusiastic ignores, as identified by
git ls-files -i --exclude-standard
|
|
|
|
| |
Backpatch to 8.2 as that's how far the structure looks the same.
|
| |
|
| |
|