Skip to content

Commit

Permalink
Re run the crashing test & update the output
Browse files Browse the repository at this point in the history
  • Loading branch information
onurctirtir committed Dec 18, 2024
1 parent 5fbcc65 commit 9f2f0e3
Showing 1 changed file with 28 additions and 2 deletions.
30 changes: 28 additions & 2 deletions src/test/regress/expected/remove_coordinator.out
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,31 @@ BEGIN;
-- that should fail because of bad hostname & port
SELECT citus_add_node('200.200.200.200', 1, 200);
ERROR: connection to the remote node [email protected]:1 failed
SSL SYSCALL error: EOF detected
connection to server was lost
-- Since above command failed, now Postgres will need to revert the
-- application_name change made in this transaction and this will
-- happen within abort-transaction callback, so we won't be in a
-- transaction block while Postgres does that.
--
-- And when the application_name changes, Citus tries to re-assign
-- the global pid but it does so only for Citus internal backends,
-- and doing so for Citus internal backends doesn't require being
-- in a transaction block and is safe.
--
-- However, for the client external backends (like us here), Citus
-- doesn't re-assign the global pid because it's not safe to do so
-- outside of a transaction block. This is because, it would require
-- performing a catalog access to retrive the local node id when the
-- cached local node is invalidated like what just happened here
-- because of the failed citus_add_node() call made above.
--
-- So by failing here (rather than crashing), we ensure this behavior.
ROLLBACK;
RESET client_min_messages;
RESET citus.node_connection_timeout;
-- restore coordinator for the rest of the tests
SELECT citus_set_coordinator_host('localhost', :master_port);
citus_set_coordinator_host
---------------------------------------------------------------------

(1 row)

0 comments on commit 9f2f0e3

Please sign in to comment.