not wait forever in multi_extension test (#3702)

pull/3700/head
SaitTalhaNisanci 2020-04-03 12:21:02 +03:00 committed by GitHub
parent 659283c9a7
commit 710970407f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 2 deletions

View File

@ -15,7 +15,8 @@ DECLARE
activity record; activity record;
BEGIN BEGIN
DO 'BEGIN END'; -- Force maintenance daemon to start DO 'BEGIN END'; -- Force maintenance daemon to start
LOOP -- we don't want to wait forever; loop will exit after 20 seconds
FOR i IN 1 .. 200 LOOP
PERFORM pg_stat_clear_snapshot(); PERFORM pg_stat_clear_snapshot();
SELECT * INTO activity FROM pg_stat_activity SELECT * INTO activity FROM pg_stat_activity
WHERE application_name = 'Citus Maintenance Daemon' AND datname = p_dbname; WHERE application_name = 'Citus Maintenance Daemon' AND datname = p_dbname;
@ -25,6 +26,8 @@ BEGIN
PERFORM pg_sleep(0.1); PERFORM pg_sleep(0.1);
END IF ; END IF ;
END LOOP; END LOOP;
-- fail if we reach the end of this loop
raise 'Waited too long for maintenance daemon to start';
END; END;
$$; $$;
$definition$ create_function_test_maintenance_worker $definition$ create_function_test_maintenance_worker

View File

@ -18,7 +18,8 @@ DECLARE
activity record; activity record;
BEGIN BEGIN
DO 'BEGIN END'; -- Force maintenance daemon to start DO 'BEGIN END'; -- Force maintenance daemon to start
LOOP -- we don't want to wait forever; loop will exit after 20 seconds
FOR i IN 1 .. 200 LOOP
PERFORM pg_stat_clear_snapshot(); PERFORM pg_stat_clear_snapshot();
SELECT * INTO activity FROM pg_stat_activity SELECT * INTO activity FROM pg_stat_activity
WHERE application_name = 'Citus Maintenance Daemon' AND datname = p_dbname; WHERE application_name = 'Citus Maintenance Daemon' AND datname = p_dbname;
@ -28,6 +29,8 @@ BEGIN
PERFORM pg_sleep(0.1); PERFORM pg_sleep(0.1);
END IF ; END IF ;
END LOOP; END LOOP;
-- fail if we reach the end of this loop
raise 'Waited too long for maintenance daemon to start';
END; END;
$$; $$;
$definition$ create_function_test_maintenance_worker $definition$ create_function_test_maintenance_worker