Commit Graph

2842 Commits (86a4c0925bbbe9fdfb27103f9d223c0a2bc0dbf8)

Author SHA1 Message Date
Philip Dubé bdd30bb181 Don't allow distributing by a generated column 2019-09-04 14:50:17 +00:00
Philip Dubé 41dca121e2 Support GENERATE ALWAYS AS STORED 2019-09-04 14:50:17 +00:00
Nils Dijk 936d546a3c
Refactor Ensure Schema Exists to Ensure Dependecies Exists (#2882)
DESCRIPTION: Refactor ensure schema exists to dependency exists

Historically we only supported schema's as table dependencies to be created on the workers before a table gets distributed. This PR puts infrastructure in place to walk pg_depend to figure out which dependencies to create on the workers. Currently only schema's are supported as objects to create before creating a table.

We also keep track of dependencies that have been created in the cluster. When we add a new node to the cluster we use this catalog to know which objects need to be created on the worker.

Side effect of knowing which objects are already distributed is that we don't have debug messages anymore when creating schema's that are already created on the workers.
2019-09-04 14:10:20 +02:00
Philip Dubé bc97523940
Merge pull request #2925 from citusdata/remove_check_for_updates
Remove CheckForUpdates
2019-09-03 21:28:17 +00:00
Philip Dubé 28d964240f Remove CheckForUpdates
https://reports.citusdata.com/v1/releases/latest
We haven't updated the version CheckForUpdates sees since 7.1.0
2019-09-03 21:11:25 +00:00
Philip Dubé 077f5e26af
Merge pull request #2926 from citusdata/normalize_all_the_tests
Normalize all tests
2019-09-03 21:10:40 +00:00
Philip Dubé 4d26829d50 Remove normalized_tests.lst, don't normalize check-vanilla 2019-09-03 17:25:00 +00:00
Philip Dubé 169d2f193f
Merge pull request #2914 from citusdata/propagate_column_collate
create_distributed_table: include COLLATE on columns
2019-08-29 14:31:21 +00:00
Philip Dubé da00c62eea create_distributed_table: include COLLATE on columns 2019-08-29 14:22:54 +00:00
Philip Dubé dd57232ba3
Merge pull request #2912 from citusdata/MaxBackends_max_wal_senders
Update TotalProcCount to match update in InitializeMaxBackends in pg12
2019-08-29 14:16:38 +00:00
Philip Dubé 32ef459025 backend_data.c: include max_wal_senders in calculating maxBackend, matches changes in pg12's InitializeMaxBackends 2019-08-28 21:24:33 +00:00
Jelte Fennema cbecf97c84
Move tuplestore setup to a helper function (#2898)
* Add tuplestore helpers

* More detailed error messages in tuplestore

* Add CreateTupleDescCopy to SetupTuplestore

* Use new SetupTuplestore helper function

* Remove unnecessary copy

* Remove comment about undefined behaviour
2019-08-27 09:11:08 +02:00
Philip Dubé b354644c56
Merge pull request #2908 from citusdata/sort_colocatedshardintervallist
Sort ColocatedShardIntervalList
2019-08-26 17:53:47 +00:00
Philip Dubé eba3828ef7 ColocatedShardIntervalList: sort 2019-08-26 17:42:41 +00:00
Philip Dubé c1587cc00a
Merge pull request #2906 from citusdata/add-rls-SET-LOCAL-GUC-test
Test SET LOCAL propagation when GUC is used in RLS policy
2019-08-22 20:36:05 +00:00
Matthias Kurz fc069dc611 Test SET LOCAL propagation when GUC is used in RLS policy 2019-08-22 20:29:52 +00:00
Philip Dubé d3be6cd0a6
Merge pull request #2844 from citusdata/postgres12
Postgres 12
2019-08-22 19:36:24 +00:00
Philip Dubé 6b0d8ed83d SortList in FinalizedShardPlacementList, makes 3 failure tests consistent between 11/12 2019-08-22 19:30:56 +00:00
Philip Dubé 693d4695d7 Create a test 'pg12' for pg12 features & error on unsupported new features
Unsupported new features: COPY FROM WHERE, GENERATED ALWAYS AS, non-heap table access methods
2019-08-22 19:30:56 +00:00
Philip Dubé e84fcc0b12 Modify tests to be consistent between versions
Normalize
UNION to prevent optimization
Remove WITH OIDS
Sort ddl events
client_min_messages no longer accepts FATAL
2019-08-22 19:30:50 +00:00
Philip Dubé e5cd298a98 pg12 revised layout of FunctionCallInfoData
See a9c35cf85c

clang raises a warning due to FunctionCall2InfoData technically being variable sized
This is fine, as the struct is the size we want it to be. So silence the warning
2019-08-22 19:02:35 +00:00
Philip Dubé bee779e7d4 planner/distributed_planner.c: get_func_cost replaced with add_function_cost in pg12 2019-08-22 19:02:10 +00:00
Philip Dubé be3285828f Collations matter for hashing strings in pg12
See https://www.postgresql.org/docs/12/collation.html#COLLATION-NONDETERMINISTIC
2019-08-22 18:58:37 +00:00
Philip Dubé fe10ca453d Implement FileCompat to abstract pg12 requiring API consumer to track file offsets 2019-08-22 18:57:47 +00:00
Philip Dubé 018ad1c58e pg12: version_compat.h, tuples, oids, misc 2019-08-22 18:57:23 +00:00
Philip Dubé 9643ff580e Update commands/vacuum.c with pg12 changes
Adds support for SKIP_LOCKED, INDEX_CLEANUP, TRUNCATE
Removes broken assert
2019-08-22 18:56:54 +00:00
Philip Dubé 68c4b71f93 Fix up includes with pg12 changes 2019-08-22 18:56:21 +00:00
Philip Dubé fbc3e346e8 ruleutils_12.c
Produced this file by copying ruleutils_11.c,
then comparing postgres ruleutils.c changes between REL_11_STABLE & REL_12_STABLE
2019-08-22 18:56:05 +00:00
Philip Dubé b7e2908fc2 configure: don't prevent pg12 2019-08-22 18:55:55 +00:00
Hadi Moshayedi 0b939b0455
Merge pull request #2894 from citusdata/fix_locks_3
Fix distributed deadlock in TRUNATE
2019-08-22 11:19:27 -07:00
Hadi Moshayedi 6be1bacddd Fix distributed deadlock for TRUNCATE 2019-08-22 11:03:53 -07:00
Hadi Moshayedi 036b4216a8
Merge pull request #2864 from citusdata/ref2ref_fkey
Foreign key between reference tables
2019-08-22 03:22:33 -07:00
Hadi Moshayedi a5b087c89b Support FKs between reference tables 2019-08-21 16:11:27 -07:00
Hadi Moshayedi 3de851d3c5
Merge pull request #2904 from citusdata/sort_load_shard_placement_array
Sort load_shard_placement_array by worker name/port
2019-08-21 14:44:37 -07:00
Hadi Moshayedi a3578a6e60 Sort load_shard_placement_array by worker name/port 2019-08-21 14:35:05 -07:00
Philip Dubé 4bbea6e3d8
Merge pull request #2903 from citusdata/fix_assertion_error_in_2900
commands/index.c: Fix assertion typo
2019-08-21 19:57:23 +00:00
Philip Dubé 7bf7e41594 commands/index.c: Fix assertion typo 2019-08-21 18:54:05 +00:00
Philip Dubé f0a79800d2
Merge pull request #2900 from citusdata/reindex-error
Raise an error when REINDEX TABLE or INDEX is invoked on a distributed relation
2019-08-21 17:17:58 +00:00
Philip Dubé f4b90419ae Raise an error when REINDEX TABLE or INDEX is invoked on a distributed relation 2019-08-21 17:03:14 +00:00
Philip Dubé 560c9ba4e9
Merge pull request #2897 from citusdata/task_tracker_fix_error_message
Task Tracker: fix error being copy pasted from above block
2019-08-21 15:53:55 +00:00
Philip Dubé db5a7f49a7 Task Tracker: fix error being copy pasted from above block 2019-08-21 15:44:01 +00:00
Philip Dubé bc7a76d139
Merge pull request #2890 from citusdata/check_shard_interval_search_fail
Avoid invalid array accesses to partitionFileArray
2019-08-20 18:07:02 +00:00
Philip Dubé f62d4a6712 citus_rm_job_directory for multi_query_directory_cleanup 2019-08-19 17:04:42 +00:00
Philip Dubé 9777f22e1e Avoid invalid array accesses to partitionFileArray 2019-08-19 17:04:42 +00:00
Önder Kalacı 519dc8329b
Merge pull request #2896 from citusdata/single_shard_commit_no_show
single_shard_commit_protocol: GUC_NO_SHOW_ALL
2019-08-19 10:20:39 +02:00
Philip Dubé f4ca02664a single_shard_commit_protocol: GUC_NO_SHOW_ALL 2019-08-18 12:54:32 +00:00
Hadi Moshayedi 7fccb9d2aa
Merge pull request #2855 from citusdata/fix_locks_2
Add some missing locks.
2019-08-15 12:41:53 -07:00
Hadi Moshayedi c582eb89c8 Add some missing locks. 2019-08-15 12:34:31 -07:00
Philip Dubé 130e999ac7
Merge pull request #2891 from citusdata/guc_to_disable_2pc_for_single_shard_modify
Introduce citus.single_shard_commit_protocol for if users want 1PC on writes to replicas
2019-08-15 19:03:06 +00:00
Philip Dubé f4e513b3d4 Introduce citus.single_shard_commit_protocol for if users want 1PC on writes to replicas 2019-08-15 18:49:40 +00:00