Commit Graph

5545 Commits (5e2e5c3470bfb3721c794619cf6d636ac92f7239)

Author SHA1 Message Date
Burak Velioglu 5e2e5c3470
Fix indentation for shell table func 2022-01-16 16:24:59 +03:00
Burak Velioglu 427bdf08a0
Use function to get seq dep definition list 2022-01-16 16:15:01 +03:00
Burak Velioglu ef7ddef07d
Test style 2022-01-16 15:57:18 +03:00
Burak Velioglu 9dc9d0d4dd
citus indent 2022-01-16 15:44:45 +03:00
Burak Velioglu fc307afdc4
Use function to get table command list and fix isolation test 2022-01-16 15:42:54 +03:00
Burak Velioglu 041a8c3d73
Revert truncate back 2022-01-16 15:10:04 +03:00
Burak Velioglu 060e6bf02f
Update truncate with delete from for metadata table 2022-01-15 23:24:17 +03:00
Burak Velioglu f29af1e23e
Check isolation test 2022-01-14 12:41:54 +03:00
Burak Velioglu 16807343b4
Update tests 2022-01-14 11:35:19 +03:00
Burak Velioglu 2d85858c26
Check isolation tests 2022-01-14 11:31:04 +03:00
Burak Velioglu f0536fa299
Check manual value for test 2022-01-14 11:18:20 +03:00
Burak Velioglu 2789d45e9a
Fix failure test 2022-01-13 16:52:32 +03:00
Burak Velioglu b7f3e1e766
Fix multi partitioning test 2022-01-13 15:29:55 +03:00
Burak Velioglu 2e046ea8e5
Continue fixing multi-1 tests 2022-01-13 15:12:10 +03:00
Burak Velioglu 727b40e064
Fix multimetadata sync test 2022-01-13 13:31:33 +03:00
Burak Velioglu d84e1c1835
Fix style of UDF 2022-01-13 13:00:58 +03:00
Burak Velioglu 718a864232
Fix mx test 2022-01-13 12:46:12 +03:00
Burak Velioglu 4fe8ec3e61
Fix function create-drop scripts 2022-01-13 12:12:36 +03:00
Burak Velioglu d1f3f6e5e4
Fix upgrade tests 2022-01-13 11:34:11 +03:00
Burak Velioglu 3eb0121bb6
Normalize output 2022-01-13 11:24:25 +03:00
Burak Velioglu 02526f1bee
Minor refactors 2022-01-13 01:01:47 +03:00
Burak Velioglu 33efade04c
Merge branch 'master' into velioglu/table_wo_seq_prototype 2022-01-13 00:41:45 +03:00
Burak Velioglu 0c506606cd
Fix MX tests 2022-01-12 17:25:16 +03:00
Burak Velioglu 9fc09947ed
Citus indent 2022-01-12 15:26:01 +03:00
Burak Velioglu ad67942cda
Sequence and add node fix 2022-01-12 15:24:09 +03:00
Halil Ozan Akgül deac77e053
Merge pull request #5616 from citusdata/add_missing_library_to_dependencies
Add missing library to dependencies.c
2022-01-12 10:38:05 +03:00
Halil Ozan Akgul 63cd90e5dd Add missing library to dependencies.c 2022-01-11 18:36:43 +03:00
Önder Kalacı cb447d7bc9
Merge pull request #5611 from citusdata/onderkalaci-patch-1
Enable MX for rebalancer tests
2022-01-11 12:22:08 +01:00
Önder Kalacı 46ec7cd5cf Enable MX for rebalancer tests 2022-01-11 12:07:39 +01:00
Burak Velioglu 5204db187b
Remove stale comment 2022-01-11 11:39:30 +03:00
Burak Velioglu 2b513c4100
Merge branch 'master' into velioglu/table_wo_seq_prototype 2022-01-11 11:35:32 +03:00
Burak Velioglu f3522763e5
Remove hacky group id check and unused UDFs 2022-01-11 11:22:45 +03:00
Burak Velioglu 697d1468fe
Use coordianated transaction for object prop 2022-01-10 22:08:43 +03:00
Önder Kalacı 885601c02c
Require superuser while activating a node (#5609)
* Require superuser while activating a node

With this change, we require ActiveNode() (hence citus_add_node(),
citus_activate_node()) explicitly require for a superuser.

Before this commit, these functions were designed to work with
non-superuser roles with the relevent GRANTs given.

However, that is not a widely used way for calling the functions
above.

Due to possibility of non-super user calling the UDFs, they were
designed in a way that some commands were using some additional
short-lived superuser connections. That is:
	(a) breaking transactional behavior (e.g., ROLLBACK
 	    wouldn't fully rollback the whole transaction)
        (b) Making it very complicated to reason about which
	    parts of the node activation goes over which connections,
	    and becoming vulnerable to deadlocks / visibility issues.
2022-01-10 08:30:13 -08:00
Burak Velioglu 4a7a8b8835
Fix sequence owner, reference shards and update tests 2022-01-10 11:30:52 +03:00
Onur Tirtir 3cc44ed8b3
Tell other backends it's safe to ignore the backend that concurrently built the shell table index (#5520)
In addition to starting a new transaction, we also need to tell other
backends --including the ones spawned for connections opened to
localhost to build indexes on shards of this relation-- that concurrent
index builds can safely ignore us.

Normally, DefineIndex() only does that if index doesn't have any
predicates (i.e.: where clause) and no index expressions at all.
However, now that we already called standard process utility, index
build on the shell table is finished anyway.

The reason behind doing so is that we cannot guarantee not grabbing any
snapshots via adaptive executor, and the backends creating indexes on
local shards (if any) might block on waiting for current xact of the
current backend to finish, which would cause self deadlocks that are not
detectable.
2022-01-10 10:23:09 +03:00
Burak Velioglu 76e1e1fd6b
Add adjust sequence settings and update tests 2022-01-09 19:35:07 +03:00
Marco Slot 73a76b876a
Merge pull request #5602 from citusdata/marcocitus/disallow-remote-execution 2022-01-07 18:02:13 +01:00
Marco Slot ee3b50b026 Disallow remote execution from queries on shards 2022-01-07 17:46:21 +01:00
Önder Kalacı 8d1b188620
Enable MX for the remaining failure tests (#5606) 2022-01-07 17:24:31 +01:00
Ahmet Gedemenli 3c834e6693
Disable foreign distributed tables (#5605)
* Disable foreign distributed tables
* Add warning for existing distributed foreign tables
2022-01-07 18:12:23 +03:00
Burak Velioglu 8006765504
Handle foreign tables and update tests 2022-01-07 15:48:20 +03:00
Burak Velioglu 21138784a3
Update comment 2022-01-07 13:03:31 +03:00
Burak Velioglu 942f1a2c48
Revert local sequence break change 2022-01-07 12:55:47 +03:00
Burak Velioglu 36fb662bf4
Merge branch 'master' into velioglu/table_wo_seq_prototype 2022-01-07 12:43:35 +03:00
Önder Kalacı 9d858cb1da
Merge pull request #5579 from citusdata/improve_metadata_conn
Improve metadata connection selection logic
2022-01-07 10:42:23 +01:00
Onder Kalaci 7cb1d6ae06 Improve metadata connections
With https://github.com/citusdata/citus/pull/5493 we introduced
metadata specific connections.

With this connection we guarantee that there is a single metadata connection.
But note that this connection can be used for any other operation.
In other words, this connection is not only reserved for metadata
operations.

However, as https://github.com/citusdata/citus-enterprise/issues/715 showed
us that the logic has a flaw. We allowed ineligible connections to be
picked as metadata connections: such as exclusively claimed connections
or not fully initialized connections.

With this commit, we make sure that we only consider eligable connections
for metadata operations.
2022-01-07 10:36:32 +01:00
Burak Velioglu 1383c442ea
Update multiple table integration sync 2022-01-07 12:18:06 +03:00
Önder Kalacı b6cf5a969b
Merge pull request #5597 from citusdata/move_placement_deletions
Move placement deletion from disable node to activate node
2022-01-07 10:03:35 +01:00
Onder Kalaci 9f2d9e1487 Move placement deletion from disable node to activate node
We prefer the background daemon to only sync node metadata. That's
why we move placement metadata changes from disable node to
activate node. With that, we can make sure that disable node
only changes node metadata, whereas activate node syncs all
the metadata changes. In essence, we already expect all
nodes to be up when a node is activated. So, this does not change
the behavior much.
2022-01-07 09:56:03 +01:00