API Coverage
pgmq4s implements the following PGMQ SQL API functions:
Message Operations
Implemented in PgmqClient[F].
| PGMQ Function | pgmq4s Method | Description |
|---|---|---|
send |
send[P] |
Send a message |
send (with headers) |
send[P, H] |
Send a message with typed headers |
send_batch |
sendBatch[P] |
Send multiple messages |
send_batch (with headers) |
sendBatch[P, H] |
Send multiple messages with headers |
read |
read[P] / read[P, H] |
Read messages with visibility timeout |
pop |
pop[P] / pop[P, H] |
Read and immediately delete one message |
delete |
delete |
Delete a single message |
delete (batch) |
deleteBatch |
Delete multiple messages |
archive |
archive |
Archive a single message |
archive (batch) |
archiveBatch |
Archive multiple messages |
set_vt |
setVisibilityTimeout[P] / setVisibilityTimeout[P, H] |
Change visibility timeout of a message |
send_topic |
sendTopic[P] |
Send a message to queues matching a routing key |
send_topic (with headers) |
sendTopic[P, H] |
Send a message with headers via routing key |
send_batch_topic |
sendBatchTopic[P] |
Send multiple messages via routing key |
send_batch_topic (with headers) |
sendBatchTopic[P, H] |
Send multiple messages with headers via routing key |
Queue Management
Implemented in PgmqAdmin[F].
| PGMQ Function | pgmq4s Method | Description |
|---|---|---|
create |
createQueue |
Create a new queue |
create_partitioned |
createPartitionedQueue |
Create a partitioned queue |
create_unlogged |
createUnloggedQueue |
Create an unlogged queue (no WAL) |
convert_archive_partitioned |
convertArchivePartitioned |
Convert archive table to partitioned |
| (none) | dropOldArchive |
Drop pgmq.a_<queue>_old left by convertArchivePartitioned |
drop_queue |
dropQueue |
Drop a queue |
purge_queue |
purgeQueue |
Purge all messages from a queue |
metrics |
metrics |
Get metrics for a single queue |
metrics_all |
metricsAll |
Get metrics for all queues |
list_queues |
listQueues |
List all queues |
detach_archive |
detachArchive |
Detach archive table (deprecated upstream) |
bind_topic |
bindTopic |
Bind a wildcard pattern to a queue |
unbind_topic |
unbindTopic |
Remove a pattern-to-queue binding |
test_routing |
testRouting |
Dry-run to see which queues match a routing key |
enable_notify_insert |
enableNotifyInsert |
Enable NOTIFY triggers on a queue |
disable_notify_insert |
disableNotifyInsert |
Disable NOTIFY triggers |
update_notify_insert |
updateNotifyInsert |
Update notify throttle interval |
list_notify_insert_throttles |
listNotifyInsertThrottles |
List queues with active notify throttles |
Planned Features
The following PGMQ functions are not yet supported but are planned for future releases:
Advanced Reading
Long-polling and grouped reads for consumer loops and FIFO patterns:
read_with_poll— long-poll when queue is emptyread_grouped— AWS SQS FIFO-style grouped readsread_grouped_with_poll— grouped + long-pollread_grouped_rr/read_grouped_rr_with_poll— round-robin interleaving
Utilities
set_vt(batch) — set visibility timeout for multiple messages at oncecreate_fifo_index/create_fifo_indexes_all— GIN indexes for FIFO performance
In this article
