Fixes test errors

grant_database_2pc_onur_1
gurkanindibay 2024-01-05 13:49:04 +03:00
parent 20dc90289b
commit febbaddc40
2 changed files with 15 additions and 2 deletions

View File

@ -1664,10 +1664,10 @@ RunPostprocessMainDBCommand(Node *parsetree)
} }
} }
/* /*
* IsStatementSupportedIn2Pc returns true if the statement is supported in 2pc * IsStatementSupportedIn2Pc returns true if the statement is supported in 2pc
*/ */
static bool static bool
IsStatementSupportedIn2Pc(Node *parsetree) IsStatementSupportedIn2Pc(Node *parsetree)
{ {
@ -1685,6 +1685,7 @@ IsStatementSupportedIn2Pc(Node *parsetree)
return false; return false;
} }
/* /*
* IsStatementMarkDistributedFor2PC returns true if the statement should be marked * IsStatementMarkDistributedFor2PC returns true if the statement should be marked
* as distributed in 2pc * as distributed in 2pc

View File

@ -625,4 +625,16 @@ BEGIN
) q2 ) q2
JOIN pg_dist_node USING (nodeid); JOIN pg_dist_node USING (nodeid);
END; END;
$func$ LANGUAGE plpgsql; $func$ LANGUAGE plpgsql;
CREATE OR REPLACE FUNCTION check_database_privileges(role_name text, db_name text, permissions text[])
RETURNS TABLE(permission text, result text)
AS $func$
DECLARE
permission text;
BEGIN
FOREACH permission IN ARRAY permissions
LOOP
RETURN QUERY EXECUTE format($inner$SELECT '%s', result FROM run_command_on_all_nodes($$select has_database_privilege('%s','%s', '%s'); $$)$inner$, permission, role_name, db_name, permission);
END LOOP;
END;
$func$ LANGUAGE plpgsql;