sqlxmq/migrations/20210921115907_clear.up.sql
Amanda Graven 05d59b0e39
Move migration changes to separate files
Moves the migration changes introduced in 5d287b7 to separate migration
files, so existing requeuest deployments can migrate without issue.
2021-09-21 14:05:09 +02:00

22 lines
586 B
PL/PgSQL

-- Deletes all messages from a list of channel names.
CREATE FUNCTION mq_clear(channel_names TEXT[])
RETURNS VOID AS $$
BEGIN
WITH deleted_ids AS (
DELETE FROM mq_msgs WHERE channel_name = ANY(channel_names) RETURNING id
)
DELETE FROM mq_payloads WHERE id IN (SELECT id FROM deleted_ids);
END;
$$ LANGUAGE plpgsql;
-- Deletes all messages.
CREATE FUNCTION mq_clear_all()
RETURNS VOID AS $$
BEGIN
WITH deleted_ids AS (
DELETE FROM mq_msgs RETURNING id
)
DELETE FROM mq_payloads WHERE id IN (SELECT id FROM deleted_ids);
END;
$$ LANGUAGE plpgsql;