naisila
d00880b7ba
Mechanical code beautification ruleutils_15.c
...
Relevant PG commit:
23e7b38bfe396f919fdb66057174d29e17086418
2022-08-09 06:32:38 +03:00
naisila
731e2fc82e
set_deparse_plan: Reuse variable to appease Coverity ruleutils_15.c
...
Relevant PG commit:
e70813fbc4aaca35ec012d5a426706bd54e4acab
2022-08-09 06:32:38 +03:00
naisila
165100539b
Remove extra blank lines before block-closing braces ruleutils_15.c
...
Relevant PG commit:
24d2b2680a8d0e01b30ce8a41c4eb3b47aca5031
2022-08-09 06:32:38 +03:00
naisila
62b4046835
Add PLAN function for JSON table in ruleutils_15.c
...
Relevant PG commit:
fadb48b00e02ccfd152baa80942de30205ab3c4f
2022-08-09 06:32:38 +03:00
naisila
0cefedfa31
Adds JSON table functions in ruleutils_15.c
...
Relevant PG commit:
4e34747c88a03ede6e9d731727815e37273d4bc9
2022-08-09 06:32:38 +03:00
naisila
08a852fbf8
Adds three different SQL/JSON values to ruleutils_15.c
...
Relevant PG commits:
606948b058dc16bce494270eea577011a602810e
49082c2cc3d8167cca70cfe697afb064710828ca
2022-08-09 06:32:38 +03:00
naisila
3f618cc519
Add SQL/JSON query functions to ruleutils_15.c
...
Relevant PG commit:
1a36bc9dba8eae90963a586d37b6457b32b2fed4
2022-08-09 06:32:38 +03:00
naisila
946fa2c1fd
Add IS JSON predicate to ruleutils_15.c
...
Relevant PG commit:
33a377608fc29cdd1f6b63be561eab0aee5c81f0
2022-08-09 06:32:38 +03:00
naisila
58c87df44c
Adds support for MERGE in ruleutils_15.c
...
Relevant PG commit:
7103ebb7aae8ab8076b7e85f335ceb8fe799097c
2022-08-09 06:32:38 +03:00
naisila
cc7d8cb6c9
Adds SQL/JSON constructors to ruleutils_15.c
...
Relevant PG commits:
f4fb45d15c59d7add2e1b81a9d477d0119a9691a
cc7401d5ca498a84d9b47fd2e01cebd8e830e558
2022-08-09 06:32:38 +03:00
naisila
d72f53d1e8
Adds grammar support for SQL/JSON clauses in ruleutils_15.c
...
Relevant PG commit:
f79b803dcc98d707450e158db3638dc67ff8380b
2022-08-09 06:32:38 +03:00
naisila
f1e0c54e57
Fix assorted missing logic for GroupingFunc nodes in ruleutils_15.c
...
Relevant PG commit:
2591ee8ec44d8cbc8e1226550337a64c684746e4
2022-08-09 06:32:38 +03:00
naisila
aeb05dd9c8
Fix ruleutils_15.c's dumping of whole-row Vars in more contexts
...
Relevant PG commit:
43c2175121c829c8591fc5117b725f1f22bfb670
2022-08-09 06:32:38 +03:00
naisila
695324a85a
Fix display of SQL-std func's args in INSERT/SELECT in ruleutils_15.c
...
Relevant PG commit:
a8d8445a7b2f80f6d0bfe97b19f90bd2cbef8759
2022-08-09 06:32:38 +03:00
naisila
67c0324602
Adds find_recursive_union to ruleutils_15.c
...
Relevant PG commit:
3f50b82639637c9908afa2087de7588450aa866b
2022-08-09 06:32:38 +03:00
naisila
45805e40cd
Change varno from Index (unsigned int) to int in ruleutils_15.c
...
Relevant PG commit:
e3ec3c00d85bd2844ffddee83df2bd67c4f8297f
2022-08-09 06:32:38 +03:00
naisila
7c8a7fe8ea
Clean up code using "(expr) ? true : false" in ruleutils_15.c
...
Relevant PG commit:
fd0625c7a9c679c0c1e896014b8f49a489c3a245
2022-08-09 06:32:38 +03:00
naisila
412dc7e543
Uses get_namespace_name_or_temp in ruleutils_15.c
...
Relevant PG commit:
48c5c9068211e0a04fd9553c8714b2821ed3ad17
2022-08-09 06:32:38 +03:00
naisila
3855f57d34
Adds copy of ruleutils_14.c as ruleutils_15.c
2022-08-09 06:32:38 +03:00
naisila
6b771e597c
Adjust configure script to allow PG15
2022-08-09 06:32:38 +03:00
Naisila Puka
bcbba99c96
Clean up large_table_shard_count guc leftovers ( #6144 )
2022-08-09 06:31:57 +03:00
Naisila Puka
3806f6f6a9
Add ORDER BY in pg_locks to avoid output order diffs ( #6145 )
2022-08-09 06:02:07 +03:00
Naisila Puka
ce944c3c0f
Remove bogus guc citus.compression ( #6142 )
2022-08-09 05:21:32 +03:00
Jelte Fennema
dd548ee3c7
Use faster custom copy logic for non-blocking shard moves ( #6119 )
...
DESCRIPTION: Use faster custom copy logic for non-blocking shard moves
Non-blocking shard moves consist of two main phases:
1. Initial data copy
2. Catchup phase
This changes the first of these phases significantly. Previously we used the
copy logic provided by postgres subscriptions. This meant we didn't have
to implement it ourselves, but it came with the downside of little control.
When implementing shard splits we needed more control to even make it
work, so we implemented our own logic for copying data between nodes.
This PR starts using that logic for non-blocking shard moves. Doing so
has four main advantages:
1. It uses COPY in binary format when possible, which is cheaper to encode
and decode. Furthermore it very often results in less data that needs to
be sent over the network.
2. It allows us to create the primary key (or other replica identity) after doing
the initial data copy. This should give some speed up over the total run,
because creating an index is bulk is much faster than incrementally building it.
3. It doesn't require a replication slot per parallel copy. Increasing the maximum
number of replication slots uses resources in postgres, even if they are not used.
So reducing the number of replication slots that shard moves need is nice.
4. Logical replication table_sync workers are slow to start up, so if lots of shards
need to be copied that can make it quite slow. This can happen easily when
combining Postgres partitioning with Citus.
2022-08-08 17:09:43 +02:00
Marco Slot
cc2afb4b63
Merge pull request #6137 from citusdata/marcocitus/tenant-isolation
2022-08-08 13:56:02 +02:00
Marco Slot
6aee8f35a6
Fix tenant isolation failure tests
2022-08-08 13:33:23 +02:00
Marco Slot
ead9d28835
Avoid deadlocks on split failure by closing connections
2022-08-08 13:33:23 +02:00
Marco Slot
044dd26e40
Reimplement tenant isolation on top of block shard split
2022-08-08 13:33:23 +02:00
Naisila Puka
3401b31c13
Deletes unnecessary test outputs ( #6140 )
2022-08-08 11:19:14 +03:00
Naisila Puka
9eedf6dcf8
Reduce log level to avoid alternative output for PG15 ( #6139 )
2022-08-07 16:07:58 +03:00
Teja Mupparti
430c201d03
get_current_transaction_id() UDF is not printing the timestamp of the current transaction on the coordinator even when non-null
2022-08-05 10:12:07 -07:00
Naisila Puka
73f515f651
Add another expr to ORDER BY clause for consistency ( #6136 )
2022-08-05 15:42:25 +03:00
aykut-bozkurt
4992533e33
support grant statement propagation for aggregates ( #6132 )
2022-08-05 14:47:33 +03:00
Ahmet Gedemenli
8b68b0b5bb
Fix pg upgrade script for foreign tables ( #6100 )
...
Fixes unexpected error for foreign tables when upgrading pg
2022-08-05 13:35:17 +03:00
Sameer Awasekar
e236711eea
Introduce Non-Blocking Shard Split Workflow
2022-08-04 16:32:38 +02:00
aykut-bozkurt
b67abdd28c
we should not log error in preprocess if attached partition is missing. ( #6131 )
2022-08-04 15:49:14 +03:00
Naisila Puka
a1c630a16e
Reduce shard_count to reduce drain_node execution time ( #6128 )
...
master_drain_node in distributed_triggers.sql test file takes too
long to execute. It is directly dependent on the shard count.
Hence I reduced shard count from 32 to 4 (default in tests),
since this doesn't affect the validity of the tests.
2022-08-04 15:34:13 +03:00
aykut-bozkurt
3ddc089651
stop distributing views with no distributed dependency if GUC DistributeLocalViews is set false. ( #6083 )
2022-08-04 12:34:40 +03:00
aykut-bozkurt
4ffe436bf9
we validate constraint as well if the statement is alter domain drop constraint ( #6125 )
2022-08-03 23:06:33 +03:00
Jelte Fennema
dff71abc32
Fix flakyness in isolation_data_migration.spec ( #6122 )
...
The tests isolation_concurrent_dml and isolation_data_migration tests
were being run in parallel, but they were interfering with each others
output. Sometimes queries from isolation_concurrent_dml were blocking
create_distributed_table in isolation_data_migration:
1. https://app.circleci.com/pipelines/github/citusdata/citus/25562/workflows/f9d0a6ff-bb7a-4b71-9fcf-1a3e46d54425/jobs/713270
2. https://app.circleci.com/pipelines/github/citusdata/citus/25562/workflows/1e22454c-1623-48a7-97fb-c6803c7959c7/jobs/713223
3. https://app.circleci.com/pipelines/github/citusdata/citus/25562/workflows/618c419e-eefb-4582-9482-322dbb9ac96d/jobs/713110
This fixes it changing the schedule to not run these tests in parallel.
2022-08-03 17:56:49 +03:00
aykut-bozkurt
a662331668
qualify text dict and conf respect missingok ( #6120 )
2022-08-03 13:13:53 +03:00
Jelte Fennema
8bbc1a45e1
Fix flakyness in isolation_replicate_reference_tables_to_coordinator.spec ( #6123 )
...
When the deadlock detector kills s2-update-dist-table both sessions
finish at the same time. The order in which they are displayed can be
swapped. To counteract this we start using the ["marker" feature][1] of
the isolationtester framework to create consistent output.
In passing this also sets the next_shard_id to the expected value by
this test so it can be run using `make check-isolation-base`.
Failed CI test: https://app.circleci.com/pipelines/github/citusdata/citus/25562/workflows/dfe6f88a-c306-4d91-b771-d5d1deb1798d/jobs/713417
[1]: ec62ce55a8/src/test/isolation/README (L152)
2022-08-03 12:00:30 +02:00
aykut-bozkurt
f91f0f4b55
Merge pull request #6088 from citusdata/validate-address
...
use address method to decide if we should run preprocess
2022-08-02 21:19:29 +03:00
aykutbozkurt
7387c7ed3d
address method should take parameter isPostprocess
2022-08-02 21:00:23 +03:00
aykutbozkurt
c98a68662a
introduces operation type for dist ops
2022-08-02 20:42:32 +03:00
aykutbozkurt
57ce4cf8c4
use address method to decide if we should run preprocess and postprocess steps for a distributed object
2022-08-02 20:42:32 +03:00
Jelte Fennema
8866d9ac32
Reduce setup time of check-minimal and check-minimal-mx ( #6117 )
...
This change reduces the setup time of our minimal schedules in two ways:
1. Don't run `multi_cluster_managament`, but instead run a much smaller
sql file with almost the same results. `multi_cluster_management`
adds and removes lots of nodes and tests all kinds of failure
scenarios. This is not needed for the minimal schedules. The only
reason we were using it there was to get a working cluster of the
layout that the tests expected. The new `minimal_cluster_management`
test achieves this with much less work, going from ~2s to ~0.5s.
2. Parallelize a bit more of the helper tests.
2022-08-02 17:58:59 +03:00
Naisila Puka
28e22c4abf
Reduce log level to avoid alternative output for PG15 ( #6118 )
...
We are reducing the log level here to avoid alternative test output
in PG15 because of the change in the display of SQL-standard
function's arguments in INSERT/SELECT in PG15.
The log level changes can be reverted when we drop support for PG14
Relevant PG commit:
a8d8445a7b2f80f6d0bfe97b19f90bd2cbef8759
2022-08-02 11:56:28 +03:00
Önder Kalacı
5e3162fa05
Merge pull request #6116 from citusdata/main_pg_15
...
Add missing ifdef for PG 15 for testing & development purposes
2022-08-02 09:54:27 +02:00
Onder Kalaci
c7b51025ab
Add missing ifdef for PG 15
2022-08-02 09:46:53 +02:00