Skip to content
This repository was archived by the owner on Mar 6, 2023. It is now read-only.

Merge current master #44

Open
wants to merge 1,088 commits into
base: cmake_rel11
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1088 commits
Select commit Hold shift + click to select a range
cc4fede
Centralize json and jsonb handling of datetime types
adunstan Jan 17, 2018
585e166
Fix compiler warnings due to commit cc4feded
adunstan Jan 17, 2018
9c7d06d
Ability to advance replication slots
simonat2ndQuadrant Jan 17, 2018
dca48d1
Remove useless lookup of root partitioned rel in ExecInitModifyTable().
tglsfdc Jan 17, 2018
4bbf6ed
postgres_fdw: Avoid 'outer pathkeys do not match mergeclauses' error.
robertmhaas Jan 17, 2018
f033462
Reorder C includes
bmomjian Jan 17, 2018
a063d84
doc: Expand documentation of session_replication_role
petere Jan 18, 2018
2082b37
Extend configure's __int128 test to check for a known gcc bug.
tglsfdc Jan 18, 2018
77216ca
Add tests for session_replication_role
petere Jan 18, 2018
958c7ae
Fix typo and improve punctuation
petere Jan 18, 2018
a228e44
Update comment
petere Jan 19, 2018
4e54dd2
Fix typo in recent commit
simonat2ndQuadrant Jan 19, 2018
29d58fd
Transfer state pertaining to pending REINDEX operations to workers.
robertmhaas Jan 19, 2018
1ef61dd
Fix StoreCatalogInheritance1 to use 32bit inhseqno
alvherre Jan 19, 2018
8b08f7d
Local partitioned indexes
alvherre Jan 19, 2018
189d0ff
Fix regression tests for better stability
alvherre Jan 19, 2018
42b5856
Fix pg_dump version comparison
alvherre Jan 19, 2018
2c6f37e
Replace GrantObjectType with ObjectType
petere Oct 11, 2017
8b9e964
Replace AclObjectKind with ObjectType
petere Dec 2, 2017
7f17fd6
Fix CompareIndexInfo's attnum comparisons
alvherre Jan 19, 2018
2f17844
Allow UPDATE to move rows between partitions.
robertmhaas Jan 19, 2018
eee50a8
PL/Python: Simplify PLyLong_FromInt64
petere Jan 19, 2018
96102a3
Suppress possibly-uninitialized-variable warnings.
tglsfdc Jan 20, 2018
918e02a
Improve type conversion of SPI_processed in Python
petere Jan 20, 2018
815f84a
doc: update intermediate certificate instructions
bmomjian Jan 21, 2018
5c15a54
Fix wording of "hostaddrs"
mhagander Jan 21, 2018
1cc4f53
Support huge pages on Windows
mhagander Jan 21, 2018
b9ff79b
Fix docs typo
mhagander Jan 22, 2018
8561e48
Transaction control in PL procedures
petere Jan 22, 2018
2b792ab
Make pg_dump's ACL, sec label, and comment entries reliably identifia…
tglsfdc Jan 22, 2018
f498704
PL/Python: Fix tests for older Python versions
petere Jan 22, 2018
d6c8466
Reorder code in pg_dump to dump comments etc in a uniform order.
tglsfdc Jan 22, 2018
b3f8401
Move handling of database properties from pg_dumpall into pg_dump.
tglsfdc Jan 22, 2018
f5da568
Add installcheck support to more test suites
petere Jan 19, 2018
7404e77
Split out documentation of SSL parameters into their own section
petere Jan 19, 2018
573bd08
Move EDH support to common files
petere Jan 19, 2018
f966101
Move SSL API comments to header files
petere Jan 19, 2018
1c21834
Extract common bits from OpenSSL implementation
petere Jan 19, 2018
a541dbb
doc: simplify intermediate certificate mention in libpq docs
bmomjian Jan 23, 2018
160a4f6
In pg_dump, force reconnection after issuing ALTER DATABASE SET comma…
tglsfdc Jan 23, 2018
2badb5a
Report an ERROR if a parallel worker fails to start properly.
robertmhaas Jan 23, 2018
28e0415
Update obsolete sentence in README.parallel.
robertmhaas Jan 23, 2018
f9bbd46
pgbench: Remove accidental garbage in test file
petere Jan 23, 2018
c9707d9
Documentation fix: pg_ctl no longer makes connection attempts.
tglsfdc Jan 23, 2018
95be5ce
Remove unnecessary include
alvherre Jan 23, 2018
bb94ce4
Teach reparameterize_path() to handle AppendPaths.
tglsfdc Jan 23, 2018
e0a0dec
doc: mention psql -l uses the 'postgres' database by default
bmomjian Jan 23, 2018
434e6e1
Improve implementation of pg_attribute_always_inline.
tglsfdc Jan 24, 2018
5b2a8cf
doc: clarify use of RegisterDynamicBackgroundWorker
bmomjian Jan 24, 2018
a61116d
Add tests for record_image_eq and record_image_cmp
petere Jan 23, 2018
d6ab720
doc: properly indent CREATE TRIGGER paragraph
bmomjian Jan 24, 2018
945f71d
Avoid referencing off the end of subplan_partition_offsets.
robertmhaas Jan 24, 2018
4a3fdbd
Allow spaces in connection strings in SSL tests
petere Jan 25, 2018
0b5e33f
Remove use of byte-masking macros in record_image_cmp
petere Jan 23, 2018
2a5ecb5
Update documentation to mention huge pages on other OSes
petere Jan 25, 2018
5955d93
Improve pg_dump's handling of "special" built-in objects.
tglsfdc Jan 25, 2018
05fb5d6
Ignore partitioned indexes where appropriate
alvherre Jan 25, 2018
0d4e6ed
Clean up some aspects of pg_dump/pg_restore item-selection logic.
tglsfdc Jan 25, 2018
bb41567
Add missing "static" markers.
tglsfdc Jan 25, 2018
1368e92
Support --no-comments in pg_dump, pg_dumpall, pg_restore.
tglsfdc Jan 25, 2018
6588a43
Fix C comment typo
bmomjian Jan 26, 2018
a6ef00b
Remove byte-masking macros for Datum conversion macros
petere Jan 23, 2018
c186954
Use abstracted SSL API in server connection log messages
petere Jan 25, 2018
b0313f9
pageinspect: Fix use of wrong memory context by hash_page_items.
robertmhaas Jan 26, 2018
4971d2a
Remove the obsolete WITH clause of CREATE FUNCTION.
tglsfdc Jan 26, 2018
9fd8b7d
Factor some code out of create_grouping_paths.
robertmhaas Jan 26, 2018
fb8697b
Avoid unnecessary use of pg_strcasecmp for already-downcased identifi…
tglsfdc Jan 26, 2018
ba8c2df
Add missing semicolons in documentation examples
mhagander Jan 27, 2018
2e668c5
Avoid crash during EvalPlanQual recheck of an inner indexscan.
tglsfdc Jan 27, 2018
41fc04f
Update time zone data files to tzdata release 2018c.
tglsfdc Jan 27, 2018
010123e
C includes: Reorder C includes in partition.c
bmomjian Jan 28, 2018
35a5280
Add stack-overflow guards in set-operation planning.
tglsfdc Jan 28, 2018
15be274
Avoid misleading psql password prompt when username is multiply speci…
tglsfdc Jan 29, 2018
c068f87
Improve bit perturbation in TupleHashTableHash.
anarazel Jan 29, 2018
ab9f2c4
Prevent growth of simplehash tables when they're "too empty".
anarazel Jan 29, 2018
1e1e599
doc: Clarify pg_upgrade documentation
petere Jan 29, 2018
fc96c69
Initialize unused ExprEvalStep fields.
anarazel Jan 24, 2018
97d4445
Save a few bytes by removing useless last argument to SearchCatCacheL…
tglsfdc Jan 29, 2018
c12693d
Introduce ExecQualAndReset() helper.
anarazel Jan 29, 2018
6ad3611
Remove dead assignment
petere Jan 30, 2018
07e524d
Silence complaint about dead assignment
petere Jan 30, 2018
a044378
Add some noreturn attributes to help static analyzers
petere Jan 30, 2018
99f6a17
Fix test case for 'outer pathkeys do not match mergeclauses' fix.
robertmhaas Jan 30, 2018
38d485f
Fix up references to scram-sha-256
petere Jan 30, 2018
f75a959
Refactor client-side SSL certificate checking code
petere Jan 27, 2018
0ff5bd7
pg_prewarm: Add missing LWLockRegisterTranche call.
robertmhaas Jan 31, 2018
3ccdc6f
Fix list partition constraints for partition keys of array type.
robertmhaas Jan 31, 2018
e5dede9
doc: mention datadir locations are actually config locations
bmomjian Jan 31, 2018
d40d97d
pgcrypto's encrypt() supports AES-128, AES-192, and AES-256
robertmhaas Jan 31, 2018
de71541
doc: Improve pg_upgrade rsync examples to use clusterdir
bmomjian Jan 31, 2018
2275796
Fix typo: colums -> columns.
robertmhaas Jan 31, 2018
3b15255
doc: in contrib-spi, mention and link to the meaning of SPI
bmomjian Jan 31, 2018
1cf1112
doc: clearify trigger behavior for inheritance
bmomjian Jan 31, 2018
59ad246
doc: clarify major/minor pg_upgrade versions with examples
bmomjian Jan 31, 2018
eab30cc
doc: fix trigger inheritance wording
bmomjian Jan 31, 2018
df9f599
psql: Add quit/help behavior/hint, for other tool portability
bmomjian Feb 1, 2018
ad25a6b
Fix possible failure to mark hash metapage dirty.
robertmhaas Feb 1, 2018
a2a2205
Improve ALTER TABLE synopsis
sfrost Feb 2, 2018
9222c0d
Add new function WaitForParallelWorkersToAttach.
robertmhaas Feb 2, 2018
9aef173
Refactor code for partition bound searching
robertmhaas Feb 2, 2018
9da0cc3
Support parallel btree index builds.
robertmhaas Feb 2, 2018
533c5d8
Fix application of identity values in some cases
petere Feb 2, 2018
bf641d3
First-draft release notes for 10.2.
tglsfdc Feb 2, 2018
957ff08
Be more wary about shm_toc_lookup failure.
tglsfdc Feb 2, 2018
d59ff4a
Fix another instance of unsafe coding for shm_toc_lookup failure.
tglsfdc Feb 2, 2018
bc38bdb
doc: Fix index link
petere Feb 3, 2018
794eb3a
Minor copy-editing for 10.2 release notes.
tglsfdc Feb 3, 2018
1d81c09
doc: Clarify psql --list documentation a bit more
petere Feb 3, 2018
4ac583f
doc: Fix name in release notes
petere Feb 3, 2018
64fb645
Doc: minor clarifications in xindex.sgml.
tglsfdc Feb 4, 2018
cf1cba3
Release notes for 10.2, 9.6.7, 9.5.11, 9.4.16, 9.3.21.
tglsfdc Feb 4, 2018
ad14919
doc: Update mentions of MD5 in the documentation
petere Feb 3, 2018
05d0f13
Skip setting up shared instrumentation for Hash node if not needed.
tglsfdc Feb 5, 2018
3492a0a
Fix RelationBuildPartitionKey's processing of partition key expressions.
tglsfdc Feb 5, 2018
a926eb8
Ensure that all temp files made during pg_upgrade are non-world-reada…
tglsfdc Feb 5, 2018
1eb5d43
Last-minute updates for release notes.
tglsfdc Feb 5, 2018
f069c91
Fix possible crash in partition-wise join.
robertmhaas Feb 5, 2018
3785f7e
Doc: move info for btree opclass implementors into main documentation.
tglsfdc Feb 6, 2018
9fafa41
Avoid valgrind complaint about write() of uninitalized bytes.
robertmhaas Feb 6, 2018
2320945
Fix incorrect grammar.
robertmhaas Feb 6, 2018
0a459ce
Support all SQL:2011 options for window frame clauses.
tglsfdc Feb 7, 2018
9e03901
Change default git repo URL to https
mhagander Feb 7, 2018
4815dfa
Remove prototype for fmgr() function, which no longer exists.
robertmhaas Feb 7, 2018
b98a7cd
Update out-of-date comment in StartupXLOG.
robertmhaas Feb 7, 2018
32ff269
Add more information_schema columns
petere Feb 7, 2018
7c44b75
Make new triggers tests more robust
petere Feb 7, 2018
1bc0100
postgres_fdw: Push down UPDATE/DELETE joins to remote servers.
robertmhaas Feb 7, 2018
882ea50
postgres_fdw: Remove CTID output from some tests.
robertmhaas Feb 8, 2018
b3a101e
Refine SSL tests test name reporting
petere Feb 8, 2018
88fdc70
Fix possible infinite loop with Parallel Append.
robertmhaas Feb 8, 2018
e44dd84
Avoid listing the same ResultRelInfo in more than one EState list.
robertmhaas Feb 8, 2018
b78d016
Fix incorrect method name in comment.
robertmhaas Feb 8, 2018
958e20e
postgres_fdw: Attmempt to stabilize regression tests.
robertmhaas Feb 9, 2018
be42015
Clear stmt_timeout_active if we disable_all_timeouts.
robertmhaas Feb 9, 2018
935dee9
Mark assorted GUC variables as PGDLLIMPORT.
robertmhaas Feb 9, 2018
fad15f4
Mention partitioned indexes in "Data Definition" chapter
alvherre Feb 10, 2018
65b1d76
Fix oversight in CALL argument handling, and do some minor cleanup.
tglsfdc Feb 10, 2018
d02d4a6
Avoid premature free of pass-by-reference CALL arguments.
tglsfdc Feb 10, 2018
5c9f256
Fix assorted errors in pg_dump's handling of extended statistics obje…
tglsfdc Feb 11, 2018
9138922
psql: give ^D hint for \q in place where \q is ignored
bmomjian Feb 12, 2018
80f021e
Add missing article
alvherre Feb 12, 2018
88ef48c
Fix parallel index builds for dynamic_shared_memory_type=none.
robertmhaas Feb 12, 2018
8237f27
get_relid_attribute_name is dead, long live get_attname
alvherre Feb 12, 2018
ebdb42a
Fix typo
petere Feb 13, 2018
b4e2ada
In LDAP test, restart after pg_hba.conf changes
petere Feb 13, 2018
a7b8f06
Fix typo
petere Feb 12, 2018
7cd56f2
Add tests for pg_get_functiondef
petere Feb 12, 2018
7a32ac8
Add procedure support to pg_get_functiondef
petere Feb 13, 2018
2ac3e6a
doc: pg_function_is_visible also applies to aggregates and procedures
petere Feb 13, 2018
4b93f57
Make plpgsql use its DTYPE_REC code paths for composite-type variables.
tglsfdc Feb 13, 2018
40301c1
Speed up plpgsql function startup by doing fewer pallocs.
tglsfdc Feb 14, 2018
fd333bc
Speed up plpgsql trigger startup by introducing "promises".
tglsfdc Feb 14, 2018
f926300
Support CONSTANT/NOT NULL/initial value for plpgsql composite variables.
tglsfdc Feb 14, 2018
e748e90
Fix broken logic for reporting PL/Python function names in errcontext.
tglsfdc Feb 14, 2018
0c62356
Add an assertion that we don't pass NULL to snprintf("%s").
tglsfdc Feb 14, 2018
9a725f7
Silence assorted "variable may be used uninitialized" warnings.
tglsfdc Feb 14, 2018
6d7dc53
Return implementation defined value if pg_$op_s$bit_overflow overflows.
anarazel Feb 14, 2018
feb1cc5
Stabilize new plpgsql_record regression tests.
tglsfdc Feb 14, 2018
cbadba8
Revert "Stabilize output of new regression test case".
tglsfdc Feb 14, 2018
03c5a00
Move the extern declaration for ExceptionalCondition into c.h.
tglsfdc Feb 15, 2018
51940f9
Cast to void in StaticAssertExpr, not its callers.
tglsfdc Feb 15, 2018
439c7bc
Doc: fix minor bug in CREATE TABLE example.
tglsfdc Feb 15, 2018
51db0d1
Fix plpgsql to enforce domain checks when returning a NULL domain value.
tglsfdc Feb 15, 2018
773aec7
Do execGrouping.c via expression eval machinery.
anarazel Feb 16, 2018
2a41507
Revert "Do execGrouping.c via expression eval machinery."
anarazel Feb 16, 2018
f8437c8
Fix typo in comment
mhagander Feb 16, 2018
2fb1aba
Rename enable_partition_wise_join to enable_partitionwise_join
petere Feb 16, 2018
49bff41
Remove some inappropriate #includes.
tglsfdc Feb 16, 2018
ad9a274
Fix crash when canceling parallel query
petere Feb 1, 2018
bf6c614
Do execGrouping.c via expression eval machinery, take two.
anarazel Feb 16, 2018
ad7dbee
Allow tupleslots to have a fixed tupledesc, use in executor nodes.
anarazel Feb 17, 2018
cef6004
Mention trigger name in trigger test
alvherre Feb 13, 2018
a26116c
Refactor format_type APIs to be more modular
alvherre Feb 17, 2018
7923118
Minor comment fix
petere Feb 18, 2018
1a1adb2
Move function comment to the right place
petere Feb 18, 2018
97a804c
Message style fix
petere Feb 18, 2018
2e1d1eb
Remove redundant function declaration
petere Feb 19, 2018
ebf6049
Fix StaticAssertExpr() under C++
petere Feb 19, 2018
8c44802
Remove redundant initialization of a local variable.
tglsfdc Feb 19, 2018
524d64e
Remove bogus "extern" annotations on function definitions.
tglsfdc Feb 19, 2018
eb7ed3f
Allow UNIQUE indexes on partitioned tables
alvherre Feb 19, 2018
4108a28
Fix expected output
alvherre Feb 19, 2018
159efe4
Fix misbehavior of CTE-used-in-a-subplan during EPQ rechecks.
tglsfdc Feb 19, 2018
6f1d723
Fix crash in pg_replication_slot_advance
alvherre Feb 19, 2018
9a44a26
Fix typo
mhagander Feb 20, 2018
9a89f6d
Adjust ALTER TABLE docs on partitioned constraints
alvherre Feb 20, 2018
3486bcf
Fix pg_dump's logic for eliding sequence limits that match the defaults.
tglsfdc Feb 20, 2018
c2ff42c
Error message improvement
petere Feb 20, 2018
4c0ec9e
Use platform independent type for TupleTableSlot->tts_off.
anarazel Feb 20, 2018
29d432e
Blindly attempt to adapt sepgsql regression tests.
anarazel Feb 21, 2018
38b41f1
Repair pg_upgrade's failure to preserve relfrozenxid for matviews.
tglsfdc Feb 21, 2018
7d8ac98
Charge cpu_tuple_cost * 0.5 for Append and MergeAppend nodes.
robertmhaas Feb 22, 2018
9a5c4f5
Try to stabilize EXPLAIN output in partition_check test.
robertmhaas Feb 22, 2018
de6428a
Avoid another valgrind complaint about write() of uninitalized bytes.
robertmhaas Feb 22, 2018
84cb51b
postgres_fdw: Fix interaction of PHVs with child joins.
robertmhaas Feb 22, 2018
810e7e2
Remove extra word from comment.
robertmhaas Feb 22, 2018
edd4473
Be lazier about partition tuple routing.
robertmhaas Feb 22, 2018
10cfce3
Add user-callable SHA-2 functions
petere Feb 7, 2018
0db2fc9
Update gratuitous use of MD5 in documentation
petere Feb 7, 2018
abcba70
Fix perlcritic warnings
petere Feb 22, 2018
a6a8013
Remove extra words.
robertmhaas Feb 22, 2018
76b6aa4
Support parameters in CALL
petere Feb 20, 2018
b022923
Revise API for partition_rbound_cmp/partition_rbound_datum_cmp.
robertmhaas Feb 23, 2018
f724022
Revise API for partition bound search functions.
robertmhaas Feb 23, 2018
9afd513
Fix planner failures with overlapping mergejoin clauses in an outer j…
tglsfdc Feb 23, 2018
fe35cea
Synchronize doc/ copies of src/test/examples/.
nmisch Feb 23, 2018
8af87f4
Allow auto_explain.log_min_duration to go up to INT_MAX.
tglsfdc Feb 23, 2018
9fe802c
Fix brown-paper-bag bug in commit 0a459cec96d3856f476c2db298c6b52f592…
tglsfdc Feb 23, 2018
eec1a8c
First-draft release notes for 10.3.
tglsfdc Feb 23, 2018
bc1adc6
Fix filtering of unsupported relations in logical replication
petere Feb 24, 2018
081bfc1
Check error messages in SSL tests
petere Feb 23, 2018
8b29e88
Add window RANGE support for float4, float8, numeric.
tglsfdc Feb 24, 2018
32291ae
Fix thinko in in_range_float4_float8.
tglsfdc Feb 24, 2018
fde03e8
Use croak instead of die in Perl code when appropriate
petere Feb 24, 2018
9ee0573
Add current directory to Perl include path
petere Feb 24, 2018
c4ba1be
Update headers of generated files
petere Feb 24, 2018
1316417
Release notes for 10.3, 9.6.8, 9.5.12, 9.4.17, 9.3.22.
tglsfdc Feb 25, 2018
5b570d7
Un-break parallel pg_upgrade.
tglsfdc Feb 25, 2018
3bf05e0
Add a new upper planner relation for partially-aggregated results.
robertmhaas Feb 26, 2018
3d2aed6
Avoid using unsafe search_path settings during dump and restore.
tglsfdc Feb 26, 2018
582edc3
Empty search_path in Autovacuum and non-psql/pgbench clients.
nmisch Feb 26, 2018
5770172
Document security implications of search_path and the public schema.
nmisch Feb 26, 2018
964bddf
Fix typo in internal error message
petere Feb 26, 2018
8af3855
Last-minute updates for release notes.
tglsfdc Feb 26, 2018
fb533e4
Schema-qualify references in test_ddl_deparse test script.
tglsfdc Feb 26, 2018
364de25
Update PartitionTupleRouting struct comment
alvherre Feb 26, 2018
db3af9f
Remove unused functions in regress.c.
tglsfdc Feb 27, 2018
be42eb9
Improve regression test coverage of regress.c.
tglsfdc Feb 27, 2018
3bfe957
Fix logic error in add_paths_to_partial_grouping_rel.
robertmhaas Feb 27, 2018
5e6a63c
Minor cleanup of code related to partially_grouped_rel.
robertmhaas Feb 27, 2018
25b6925
Prevent dangling-pointer access when update trigger returns old tuple.
tglsfdc Feb 27, 2018
6614aaa
doc: Fix grammar.
robertmhaas Feb 27, 2018
c40e20a
Revert renaming of int44in/int44out.
tglsfdc Feb 27, 2018
e98a4de
Use the correct tuplestore read pointer in a NamedTuplestoreScan.
tglsfdc Feb 27, 2018
51057fe
Fix up ecpg's configuration so it handles "long long int" in MSVC bui…
tglsfdc Feb 27, 2018
d21ddc2
Fix warnings in man page build
petere Feb 28, 2018
6d933da
doc: Improve man build speed
petere Feb 24, 2018
c161ea1
Update and improve comments.
robertmhaas Feb 28, 2018
4fa3964
postgres_fdw: Third attempt to stabilize regression tests.
robertmhaas Feb 28, 2018
ce1663c
Fix assertion failure when Parallel Append is run serially.
robertmhaas Feb 28, 2018
f012133
Merge branch 'master' into cmake
ildus Mar 1, 2018
d0269ae
Fix version
ildus Mar 1, 2018
1bad0e6
Fix tzdata tests and add custom tzdata directory support
ildus Mar 5, 2018
873987e
Fix openssl, remove windows endings
ildus Mar 5, 2018
86aa7be
Fix timezones installation
ildus Mar 5, 2018
fb9d3b2
Fix citext
ildus Mar 5, 2018
fbd9b4a
Fix cube
ildus Mar 5, 2018
e41ae23
Fix hstore
ildus Mar 5, 2018
c0a2d73
Fix isn
ildus Mar 5, 2018
9b229b9
Fix seg
ildus Mar 5, 2018
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,9 @@ objfiles.txt
*.gcda
*.gcov
*.gcov.out
lcov.info
lcov*.info
coverage/
coverage-html-stamp
*.vcproj
*.vcxproj
win32ver.rc
Expand Down Expand Up @@ -58,3 +59,4 @@ lib*.pc
/src/test/isolation/regression.out
/src/test/isolation/regression.diffs
/src/test/isolation/regression.out
/contrib/pgcrypto/rijndael.tbl
19 changes: 17 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ set(POSTGRES_VERSION
${POSTGRES_MAJOR_VERSION}.${POSTGRES_MINOR_VERSION}.${POSTGRES_PATCH_VERSION})

set(PG_VERSION "11devel")
set(PG_VERSION_NUM 100000)
set(PG_VERSION_NUM 110000)
set(PACKAGE_BUGREPORT "pgsql-bugs@postgresql.org")

# Offer the user the choice of overriding the installation directories
Expand Down Expand Up @@ -286,6 +286,15 @@ if(USE_BONJOUR)
endif()
endif()

option(WITH_SYSTEM_TZDATA "Define to use system tzdata information." OFF)
if (WITH_SYSTEM_TZDATA)
if (EXISTS ${WITH_SYSTEM_TZDATA})
add_compile_options(-DSYSTEMTZDIR="${WITH_SYSTEM_TZDATA}")
else()
message(FATAL_ERROR "tzdata directory \"${WITH_SYSTEM_TZDATA}\" does not exists")
endif()
endif()

option(STRONG_RANDOM "Strong random number source" ON)
option(STRONG_RANDOM_SOURCE "which random number source to use - openssl, win32, dev" OFF)
if(STRONG_RANDOM)
Expand Down Expand Up @@ -691,6 +700,8 @@ if(OPENSSL_FOUND)
set(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${OPENSSL_INCLUDE_DIR}")
set(CMAKE_REQUIRED_LIBRARIES ${OPENSSL_LIBRARIES})
check_function_exists(SSL_get_current_compression HAVE_SSL_GET_CURRENT_COMPRESSION)
check_function_exists(BIO_get_data HAVE_BIO_GET_DATA)
check_function_exists(BIO_meth_new HAVE_BIO_METH_NEW)
endif(OPENSSL_FOUND)

if(USE_SYSTEMD)
Expand Down Expand Up @@ -1416,7 +1427,11 @@ add_subdirectory(contrib)
message(STATUS "------------------")
message(STATUS " Conclusion")
message(STATUS "Host tuple: ${HOST_TUPLE}")
message(STATUS "OpenSSL: ${OPENSSL_FOUND} version: ${OPENSSL_VERSION} libs: ${OPENSSL_LIBRARIES} include: ${OPENSSL_INCLUDE_DIR}")
if(OPENSSL_FOUND)
message(STATUS "OpenSSL version: ${OPENSSL_VERSION} libs: ${OPENSSL_LIBRARIES} include: ${OPENSSL_INCLUDE_DIR}")
else()
message(STATUS "OpenSSL: off")
endif()
message(STATUS "Python: ${PYTHONINTERP_FOUND}")
message(STATUS "PythonLibs: ${PYTHONLIBS_FOUND}")
message(STATUS "PerlLibs: ${PERLLIBS_FOUND}")
Expand Down
2 changes: 1 addition & 1 deletion COPYRIGHT
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
PostgreSQL Database Management System
(formerly known as Postgres, then as Postgres95)

Portions Copyright (c) 1996-2017, PostgreSQL Global Development Group
Portions Copyright (c) 1996-2018, PostgreSQL Global Development Group

Portions Copyright (c) 1994, The Regents of the University of California

Expand Down
4 changes: 4 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,10 @@
# GNUmakefile won't exist yet, so we catch that case as well.


# AIX make defaults to building *every* target of the first rule. Start with
# a single-target, empty rule to make the other targets non-default.
all:

all check install installdirs installcheck installcheck-parallel uninstall clean distclean maintainer-clean dist distcheck world check-world install-world installcheck-world:
@if [ ! -f GNUmakefile ] ; then \
echo "You need to run the 'configure' program first. See the file"; \
Expand Down
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,8 @@ CMake build options

**-DSTRONG_RANDOM_SOURCE** default OFF (autodetect), which random number source to use - openssl, win32, dev

**-DWITH_SYSTEM_TZDATA=<dir>** default OFF, custom tzdata directory

Only **MSVC** options:

**-DUSE_FP_STRICT** default ON, if we use /fp:stirct compiler option we much closer to C99 standart in float part
Expand Down
3 changes: 3 additions & 0 deletions cmake/CheckRestrict.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
CHECK_C_SOURCE_COMPILES (
"int test (void *restrict x); int main (void) {return 0;}"
HAVE_RESTRICT)
107 changes: 96 additions & 11 deletions config/c-compiler.m4
Original file line number Diff line number Diff line change
Expand Up @@ -96,38 +96,73 @@ undefine([Ac_cachevar])dnl
# PGAC_TYPE_128BIT_INT
# ---------------------
# Check if __int128 is a working 128 bit integer type, and if so
# define PG_INT128_TYPE to that typename. This currently only detects
# a GCC/clang extension, but support for different environments may be
# added in the future.
# define PG_INT128_TYPE to that typename, and define ALIGNOF_PG_INT128_TYPE
# as its alignment requirement.
#
# This currently only detects a GCC/clang extension, but support for other
# environments may be added in the future.
#
# For the moment we only test for support for 128bit math; support for
# 128bit literals and snprintf is not required.
AC_DEFUN([PGAC_TYPE_128BIT_INT],
[AC_CACHE_CHECK([for __int128], [pgac_cv__128bit_int],
[AC_LINK_IFELSE([AC_LANG_PROGRAM([
/*
* We don't actually run this test, just link it to verify that any support
* functions needed for __int128 are present.
*
* These are globals to discourage the compiler from folding all the
* arithmetic tests down to compile-time constants. We do not have
* convenient support for 64bit literals at this point...
* convenient support for 128bit literals at this point...
*/
__int128 a = 48828125;
__int128 b = 97656255;
__int128 b = 97656250;
],[
__int128 c,d;
a = (a << 12) + 1; /* 200000000001 */
b = (b << 12) + 5; /* 400000000005 */
/* use the most relevant arithmetic ops */
/* try the most relevant arithmetic ops */
c = a * b;
d = (c + b) / b;
/* return different values, to prevent optimizations */
/* must use the results, else compiler may optimize arithmetic away */
if (d != a+1)
return 0;
return 1;
return 1;
])],
[pgac_cv__128bit_int=yes],
[pgac_cv__128bit_int=no])])
if test x"$pgac_cv__128bit_int" = xyes ; then
AC_DEFINE(PG_INT128_TYPE, __int128, [Define to the name of a signed 128-bit integer type.])
# Use of non-default alignment with __int128 tickles bugs in some compilers.
# If not cross-compiling, we can test for bugs and disable use of __int128
# with buggy compilers. If cross-compiling, hope for the best.
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83925
AC_CACHE_CHECK([for __int128 alignment bug], [pgac_cv__128bit_int_bug],
[AC_RUN_IFELSE([AC_LANG_PROGRAM([
/* This must match the corresponding code in c.h: */
#if defined(__GNUC__) || defined(__SUNPRO_C) || defined(__IBMC__)
#define pg_attribute_aligned(a) __attribute__((aligned(a)))
#endif
typedef __int128 int128a
#if defined(pg_attribute_aligned)
pg_attribute_aligned(8)
#endif
;
int128a holder;
void pass_by_val(void *buffer, int128a par) { holder = par; }
],[
long int i64 = 97656225L << 12;
int128a q;
pass_by_val(main, (int128a) i64);
q = (int128a) i64;
if (q != holder)
return 1;
])],
[pgac_cv__128bit_int_bug=ok],
[pgac_cv__128bit_int_bug=broken],
[pgac_cv__128bit_int_bug="assuming ok"])])
if test x"$pgac_cv__128bit_int_bug" != xbroken ; then
AC_DEFINE(PG_INT128_TYPE, __int128, [Define to the name of a signed 128-bit integer type.])
AC_CHECK_ALIGNOF(PG_INT128_TYPE)
fi
fi])# PGAC_TYPE_128BIT_INT


Expand Down Expand Up @@ -224,6 +259,23 @@ AC_DEFINE(HAVE__BUILTIN_TYPES_COMPATIBLE_P, 1,
fi])# PGAC_C_TYPES_COMPATIBLE


# PGAC_C_BUILTIN_BSWAP16
# -------------------------
# Check if the C compiler understands __builtin_bswap16(),
# and define HAVE__BUILTIN_BSWAP16 if so.
AC_DEFUN([PGAC_C_BUILTIN_BSWAP16],
[AC_CACHE_CHECK(for __builtin_bswap16, pgac_cv__builtin_bswap16,
[AC_COMPILE_IFELSE([AC_LANG_SOURCE(
[static unsigned long int x = __builtin_bswap16(0xaabb);]
)],
[pgac_cv__builtin_bswap16=yes],
[pgac_cv__builtin_bswap16=no])])
if test x"$pgac_cv__builtin_bswap16" = xyes ; then
AC_DEFINE(HAVE__BUILTIN_BSWAP16, 1,
[Define to 1 if your compiler understands __builtin_bswap16.])
fi])# PGAC_C_BUILTIN_BSWAP16



# PGAC_C_BUILTIN_BSWAP32
# -------------------------
Expand Down Expand Up @@ -265,10 +317,15 @@ fi])# PGAC_C_BUILTIN_BSWAP64
# -------------------------
# Check if the C compiler understands __builtin_constant_p(),
# and define HAVE__BUILTIN_CONSTANT_P if so.
# We need __builtin_constant_p("string literal") to be true, but some older
# compilers don't think that, so test for that case explicitly.
AC_DEFUN([PGAC_C_BUILTIN_CONSTANT_P],
[AC_CACHE_CHECK(for __builtin_constant_p, pgac_cv__builtin_constant_p,
[AC_COMPILE_IFELSE([AC_LANG_SOURCE(
[[static int x; static int y[__builtin_constant_p(x) ? x : 1];]]
[[static int x;
static int y[__builtin_constant_p(x) ? x : 1];
static int z[__builtin_constant_p("string literal") ? 1 : x];
]]
)],
[pgac_cv__builtin_constant_p=yes],
[pgac_cv__builtin_constant_p=no])])
Expand All @@ -279,6 +336,34 @@ fi])# PGAC_C_BUILTIN_CONSTANT_P



# PGAC_C_BUILTIN_OP_OVERFLOW
# -------------------------
# Check if the C compiler understands __builtin_$op_overflow(),
# and define HAVE__BUILTIN_OP_OVERFLOW if so.
#
# Check for the most complicated case, 64 bit multiplication, as a
# proxy for all of the operations. To detect the case where the compiler
# knows the function but library support is missing, we must link not just
# compile, and store the results in global variables so the compiler doesn't
# optimize away the call.
AC_DEFUN([PGAC_C_BUILTIN_OP_OVERFLOW],
[AC_CACHE_CHECK(for __builtin_mul_overflow, pgac_cv__builtin_op_overflow,
[AC_LINK_IFELSE([AC_LANG_PROGRAM([
PG_INT64_TYPE a = 1;
PG_INT64_TYPE b = 1;
PG_INT64_TYPE result;
int oflo;
],
[oflo = __builtin_mul_overflow(a, b, &result);])],
[pgac_cv__builtin_op_overflow=yes],
[pgac_cv__builtin_op_overflow=no])])
if test x"$pgac_cv__builtin_op_overflow" = xyes ; then
AC_DEFINE(HAVE__BUILTIN_OP_OVERFLOW, 1,
[Define to 1 if your compiler understands __builtin_$op_overflow.])
fi])# PGAC_C_BUILTIN_OP_OVERFLOW



# PGAC_C_BUILTIN_UNREACHABLE
# --------------------------
# Check if the C compiler understands __builtin_unreachable(),
Expand Down
22 changes: 11 additions & 11 deletions config/docbook.m4
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
# config/docbook.m4

# PGAC_PROG_NSGMLS
# ----------------
AC_DEFUN([PGAC_PROG_NSGMLS],
[PGAC_PATH_PROGS(NSGMLS, [onsgmls nsgmls])])
# PGAC_PATH_XMLLINT
# -----------------
AC_DEFUN([PGAC_PATH_XMLLINT],
[PGAC_PATH_PROGS(XMLLINT, xmllint)])


# PGAC_CHECK_DOCBOOK(VERSION)
# ---------------------------
AC_DEFUN([PGAC_CHECK_DOCBOOK],
[AC_REQUIRE([PGAC_PROG_NSGMLS])
AC_CACHE_CHECK([for DocBook V$1], [pgac_cv_check_docbook],
[cat >conftest.sgml <<EOF
<!doctype book PUBLIC "-//OASIS//DTD DocBook V$1//EN">
[AC_REQUIRE([PGAC_PATH_XMLLINT])
AC_CACHE_CHECK([for DocBook XML V$1], [pgac_cv_check_docbook],
[cat >conftest.xml <<EOF
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V$1//EN" "http://www.oasis-open.org/docbook/xml/$1/docbookx.dtd">
<book>
<title>test</title>
<chapter>
Expand All @@ -27,13 +27,13 @@ EOF

pgac_cv_check_docbook=no

if test -n "$NSGMLS"; then
$NSGMLS -s conftest.sgml 1>&AS_MESSAGE_LOG_FD 2>&1
if test -n "$XMLLINT"; then
$XMLLINT --noout --valid conftest.xml 1>&AS_MESSAGE_LOG_FD 2>&1
if test $? -eq 0; then
pgac_cv_check_docbook=yes
fi
fi
rm -f conftest.sgml])
rm -f conftest.xml])

have_docbook=$pgac_cv_check_docbook
AC_SUBST([have_docbook])
Expand Down
47 changes: 29 additions & 18 deletions config/perl.m4
Original file line number Diff line number Diff line change
Expand Up @@ -48,19 +48,23 @@ AC_DEFUN([PGAC_CHECK_PERL_CONFIGS],

# PGAC_CHECK_PERL_EMBED_CCFLAGS
# -----------------------------
# We selectively extract stuff from $Config{ccflags}. We don't really need
# anything except -D switches, and other sorts of compiler switches can
# actively break things if Perl was compiled with a different compiler.
# Moreover, although Perl likes to put stuff like -D_LARGEFILE_SOURCE and
# -D_FILE_OFFSET_BITS=64 here, it would be fatal to try to compile PL/Perl
# to a different libc ABI than core Postgres uses. The available information
# says that all the symbols that affect Perl's own ABI begin with letters,
# so it should be sufficient to adopt -D switches for symbols not beginning
# with underscore. An exception is that we need to let through
# -D_USE_32BIT_TIME_T if it's present. (We probably could restrict that to
# only get through on Windows, but for the moment we let it through always.)
# For debugging purposes, let's have the configure output report the raw
# ccflags value as well as the set of flags we chose to adopt.
# We selectively extract stuff from $Config{ccflags}. For debugging purposes,
# let's have the configure output report the raw ccflags value as well as the
# set of flags we chose to adopt. We don't really need anything except -D
# switches, and other sorts of compiler switches can actively break things if
# Perl was compiled with a different compiler. Moreover, although Perl likes
# to put stuff like -D_LARGEFILE_SOURCE and -D_FILE_OFFSET_BITS=64 here, it
# would be fatal to try to compile PL/Perl to a different libc ABI than core
# Postgres uses. The available information says that most symbols that affect
# Perl's own ABI begin with letters, so it's almost sufficient to adopt -D
# switches for symbols not beginning with underscore. Some exceptions are the
# Windows-specific -D_USE_32BIT_TIME_T and -D__MINGW_USE_VC2005_COMPAT; see
# Mkvcbuild.pm for details. We absorb the former when Perl reports it. Perl
# never reports the latter, and we don't attempt to deduce when it's needed.
# Consequently, we don't support using MinGW to link to MSVC-built Perl. As
# of 2017, all supported ActivePerl and Strawberry Perl are MinGW-built. If
# that changes or an MSVC-built Perl distribution becomes prominent, we can
# revisit this limitation.
AC_DEFUN([PGAC_CHECK_PERL_EMBED_CCFLAGS],
[AC_REQUIRE([PGAC_PATH_PERL])
AC_MSG_CHECKING([for CFLAGS recommended by Perl])
Expand All @@ -83,12 +87,19 @@ AC_DEFUN([PGAC_CHECK_PERL_EMBED_LDFLAGS],
[AC_REQUIRE([PGAC_PATH_PERL])
AC_MSG_CHECKING(for flags to link embedded Perl)
if test "$PORTNAME" = "win32" ; then
perl_lib=`basename $perl_archlibexp/CORE/perl[[5-9]]*.lib .lib`
test -e "$perl_archlibexp/CORE/$perl_lib.lib" && perl_embed_ldflags="-L$perl_archlibexp/CORE -l$perl_lib"
perl_lib=`basename $perl_archlibexp/CORE/perl[[5-9]]*.lib .lib`
if test -e "$perl_archlibexp/CORE/$perl_lib.lib"; then
perl_embed_ldflags="-L$perl_archlibexp/CORE -l$perl_lib"
else
perl_lib=`basename $perl_archlibexp/CORE/libperl[[5-9]]*.a .a | sed 's/^lib//'`
if test -e "$perl_archlibexp/CORE/lib$perl_lib.a"; then
perl_embed_ldflags="-L$perl_archlibexp/CORE -l$perl_lib"
fi
fi
else
pgac_tmp1=`$PERL -MExtUtils::Embed -e ldopts`
pgac_tmp2=`$PERL -MConfig -e 'print $Config{ccdlflags}'`
perl_embed_ldflags=`echo X"$pgac_tmp1" | sed -e "s/^X//" -e "s%$pgac_tmp2%%" -e ["s/ -arch [-a-zA-Z0-9_]*//g"]`
pgac_tmp1=`$PERL -MExtUtils::Embed -e ldopts`
pgac_tmp2=`$PERL -MConfig -e 'print $Config{ccdlflags}'`
perl_embed_ldflags=`echo X"$pgac_tmp1" | sed -e "s/^X//" -e "s%$pgac_tmp2%%" -e ["s/ -arch [-a-zA-Z0-9_]*//g"]`
fi
AC_SUBST(perl_embed_ldflags)dnl
if test -z "$perl_embed_ldflags" ; then
Expand Down
Loading