Commit Graph

5442 Commits (d18525a9061a95970468603d5a629f6d5bdcb100)

Author SHA1 Message Date
Burak Velioglu d18525a906
Create shell always for local table 2021-12-28 10:58:35 +03:00
Burak Velioglu 416196b9be
Unmark dropped tabled on worker 2021-12-28 10:52:31 +03:00
Burak Velioglu 880533a609
Divide object and metadata handling 2021-12-27 18:14:51 +03:00
Burak Velioglu 6598a23963
Dependency update 2021-12-23 17:46:37 +03:00
Burak Velioglu 48c5ce8960
Dist table refactor 2021-12-23 00:16:38 +03:00
Burak Velioglu a448ca01bc
Add TODOs 2021-12-22 21:40:04 +03:00
Burak Velioglu 6705f0c612
Undistributed removed sequences while undistributing table 2021-12-22 20:26:02 +03:00
Burak Velioglu 81a6cb47d6
Merge branch 'master' into velioglu/table_wo_seq_prototype 2021-12-22 11:24:40 +03:00
Burak Velioglu d66f1243bf
Object distribution change 2021-12-22 11:19:34 +03:00
Burak Velioglu 9fe1c9646d
Uncomment test 2021-12-21 22:31:45 +03:00
Burak Velioglu 50f52101b8
Remove metadata object from ref table prop 2021-12-21 22:27:36 +03:00
Burak Velioglu 9fec89d70b
Citus_disable_node 2021-12-21 21:36:32 +03:00
Ahmet Gedemenli d5a969b055
Merge pull request #5540 from citusdata/fix-function-signature-generation
Fix function signature generation
2021-12-21 19:25:41 +03:00
Ahmet Gedemenli 8e4ff34a2e Do not include return table params in the function arg list
(cherry picked from commit 90928cfd74)

Fix function signature generation

Fix comment typo

Add test for worker_create_or_replace_object

Add test for recreating distributed functions with OUT/TABLE params

Add test for recreating distributed function that returns setof int

Fix test output

Fix comment
2021-12-21 19:01:42 +03:00
Burak Velioglu 2e61c3e6b8
Add todos 2021-12-20 15:44:01 +03:00
Burak Velioglu ab29b939b2
Indentation fix 2021-12-20 12:39:03 +03:00
Burak Velioglu 303c7e230e
Ensure dependency craetion on for adding/activating node 2021-12-20 12:28:43 +03:00
Burak Velioglu b9d1ab38af
Move shell table creation out 2021-12-18 21:28:24 +03:00
Burak Velioglu 3d828bc7b6
Sync metadata first before propagating any 2021-12-18 20:25:09 +03:00
Marco Slot 80f41e94c0
Merge pull request #4945 from citusdata/marcocitus/set-transaction 2021-12-18 11:38:37 +01:00
Marco Slot 2eef71ccab Propagate SET TRANSACTION commands 2021-12-18 11:31:39 +01:00
Halil Ozan Akgül 2108410a40
Merge pull request #5535 from citusdata/turn_metadata_sync_on_in_add_corrdinator
Turn metadata sync on in add_coordinator, foreign_key_to_reference_ta…
2021-12-17 18:05:43 +03:00
Burak Velioglu f66b1d5116
Fix list creation 2021-12-17 17:17:49 +03:00
Halil Ozan Akgul 46f718c76d Turn metadata sync on in add_coordinator, foreign_key_to_reference_table and replicate_reference_tables_to_coordinator 2021-12-17 16:33:25 +03:00
Halil Ozan Akgül c3195f75a5
Merge pull request #5545 from citusdata/turn_ddl_propagation_off_on_multi_copy
Turn ddl propagation off in worker on multi_copy
2021-12-17 16:29:13 +03:00
Halil Ozan Akgul 25755a7094 Turn ddl propagation off in worker on multi_copy 2021-12-17 15:54:20 +03:00
Önder Kalacı 695653911a
Merge pull request #4634 from citusdata/citus_grep_command
Grep Remote/Local commands
2021-12-17 12:07:45 +01:00
Onder Kalaci fc98f83af2 Add citus.grep_remote_commands
Simply applies

```SQL
SELECT textlike(command, citus.grep_remote_commands)
```
And, if returns true, the command is logged. Else, the log is ignored.

When citus.grep_remote_commands is empty string, all commands are
logged.
2021-12-17 11:47:40 +01:00
Halil Ozan Akgül 5b1a25ae7c
Merge pull request #5544 from citusdata/turn_metadata_sync_on_in_multi_replicate_reference_table
Turn metadata sync on in multi_replicate_reference_table and multi_citus_tools
2021-12-17 11:04:41 +03:00
Halil Ozan Akgul df8d0f3db1 Turn metadata sync on in multi_replicate_reference_table and multi_citus_tools 2021-12-17 10:25:57 +03:00
Onur Tirtir cc4c83b1e5
HAVE_LZ4 -> HAVE_CITUS_LZ4 (#5541) 2021-12-16 16:21:52 +03:00
Burak Velioglu 3636b7c9c5
Start handling local tables 2021-12-16 14:57:46 +03:00
Talha Nisanci c0945d88de
Normalize a debug failure to WARNING failure (#4996) 2021-12-16 13:43:49 +03:00
Halil Ozan Akgül 7d0f4f11c3
Merge pull request #5537 from citusdata/turn_metadata_sync_on_in_mx_regular_user
Turn metadata sync on in mx_regular_user and remove_coordinator
2021-12-16 11:35:08 +03:00
Halil Ozan Akgul 8943d7b52f Turn metadata sync on in mx_regular_user and remove_coordinator 2021-12-16 11:26:24 +03:00
Halil Ozan Akgül 047ae2cad0
Merge pull request #5534 from citusdata/turn_metadata_sync_on_in_multi_unsupported_worker_operations
Turn metadata sync on in multi_size_queries, multi_drop_extension and multi_unsupported_worker_operations
2021-12-16 11:25:19 +03:00
Halil Ozan Akgul b82af4db3b Turn metadata sync on in multi_size_queries, multi_drop_extension and multi_unsupported_worker_operations 2021-12-16 11:10:54 +03:00
Hanefi Onaldi 9d4d73898a
Move healthcheck logic into new file (#5531)
and add a missing `CheckCitusVersion(ERROR)` call
2021-12-15 15:58:20 -08:00
Burak Velioglu a6cdd43d42
Fix metadata changes and use same connection for all 2021-12-16 00:04:53 +03:00
Hanefi Onaldi acdcd9422c
Fix one flaky failure test (#5528)
Removes flaky test
2021-12-15 18:59:58 +03:00
Burak Velioglu fea68a43ad
Start moving table dependent metadata 2021-12-15 18:04:59 +03:00
Hanefi Onaldi 29e4516642 Introduce citus_check_cluster_node_health UDF
This UDF coordinates connectivity checks accross the whole cluster.

This UDF gets the list of active readable nodes in the cluster, and
coordinates all connectivity checks in sequential order.

The algorithm is:

for sourceNode in activeReadableWorkerList:
    c = connectToNode(sourceNode)
    for targetNode in activeReadableWorkerList:
        result = c.execute(
            "SELECT citus_check_connection_to_node(targetNode.name,
                                                   targetNode.port")
        emit sourceNode.name,
             sourceNode.port,
             targetNode.name,
             targetNode.port,
             result

- result -> true  ->  connection attempt from source to target succeeded
- result -> false -> connection attempt from source to target failed
- result -> NULL  -> connection attempt from the current node to source node failed

I suggest you use the following query to get an overview on the connectivity:

SELECT bool_and(COALESCE(result, false))
FROM citus_check_cluster_node_health();

Whenever this query returns false, there is a connectivity issue, check in detail.
2021-12-15 01:41:51 +03:00
Hanefi Onaldi 13fff9c37a Remove NOOP tuplestore_donestoring calls
PostgreSQL does not need calling this function since 7.4 release, and it
is a NOOP.

For more details, check PostgreSQL commit below :

commit dd04e958c8b03c0f0512497651678c7816af3198
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date:   Sun Mar 9 03:34:10 2003 +0000

    tuplestore_donestoring() isn't needed anymore, but provide a no-op
    macro definition so as not to create compatibility problems.

diff --git a/src/include/utils/tuplestore.h b/src/include/utils/tuplestore.h
index b46babacd1..76fe9fb428 100644
--- a/src/include/utils/tuplestore.h
+++ b/src/include/utils/tuplestore.h
@@ -17,7 +17,7 @@
  * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $Id: tuplestore.h,v 1.8 2003/03/09 02:19:13 tgl Exp $
+ * $Id: tuplestore.h,v 1.9 2003/03/09 03:34:10 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -41,6 +41,9 @@ extern Tuplestorestate *tuplestore_begin_heap(bool randomAccess,

 extern void tuplestore_puttuple(Tuplestorestate *state, void *tuple);

+/* tuplestore_donestoring() used to be required, but is no longer used */
+#define tuplestore_donestoring(state)  ((void) 0)
+
 /* backwards scan is only allowed if randomAccess was specified 'true' */
 extern void *tuplestore_gettuple(Tuplestorestate *state, bool forward,
                                        bool *should_free);
2021-12-14 18:55:02 +03:00
Halil Ozan Akgül 1c5430635d
Merge pull request #5525 from citusdata/only_drop_dist_indexes_on_metadata_synced_nodes
Fix drop index trying to drop coordinator local indexes on metadata worker nodes
2021-12-14 15:37:45 +03:00
Halil Ozan Akgul e060720370 Fix metadata sync fails in multi_index_statements 2021-12-14 11:28:08 +03:00
Halil Ozan Akgul a951e52ce8 Fix drop index trying to drop coordinator local indexes on metadata worker nodes 2021-12-14 11:28:08 +03:00
Halil Ozan Akgül 811eda6d0f
Merge pull request #5527 from citusdata/turn_metadata_sync_on_in_multi_copy
Fix metadata sync fails on multi_copy
2021-12-14 11:12:15 +03:00
Halil Ozan Akgul 1d7dde2c4c Fix metadata sync fails on multi_copy 2021-12-14 10:59:59 +03:00
Halil Ozan Akgül 31ffb0981d
Merge pull request #5522 from citusdata/fix_metadata_sync_fails_on_failure_connection_establishment
Fix metadata sync fails on failure_connection_establishment
2021-12-14 10:12:45 +03:00
Halil Ozan Akgul 98e38e2e4e Fix metadata sync fails on failure_connection_establishment 2021-12-13 11:51:56 +03:00