• Stars
    star
    342
  • Rank 123,697 (Top 3 %)
  • Language
    Rust
  • License
    PostgreSQL License
  • Created over 1 year ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Execute SQL now and get the results later.

pg_later

Execute SQL now and get the results later.

A postgres extension to execute queries asynchronously. Built on pgmq.

Static Badge PGXN version

Installation

Run with docker

docker run -p 5432:5432 -e POSTGRES_PASSWORD=postgres quay.io/tembo/pglater-pg:latest

If you'd like to build from source, you can follow the instructions in CONTRIBUTING.md.

Using the extension

Initialize the extension's backend:

CREATE EXTENSION pg_later CASCADE;

SELECT pglater.init();

Execute a SQL query now:

select pglater.exec(
  'select * from pg_available_extensions order by name limit 2'
) as job_id;

 job_id 
--------
     1
(1 row)

Come back at some later time, and retrieve the results by providing the job id:

select pglater.fetch_results(1);

 pg_later_results                                                                                                                                                                                       
--------------------
{
  "query": "select * from pg_available_extensions order by name limit 2",
  "job_id": 1,
  "result": [
    {
      "name": "adminpack",
      "comment": "administrative functions for PostgreSQL",
      "default_version": "2.1",
      "installed_version": null
    },
    {
      "name": "amcheck",
      "comment": "functions for verifying relation integrity",
      "default_version": "1.3",
      "installed_version": null
    }
  ],
  "status": "success"
}