omni_httpd
HTTP server
Repository
https://docs.omnigres.org/omni_httpd/intro/
https://docs.omnigres.org/omni_httpd/intro/
Source
omnigres-20251108.tar.gz
omnigres-20251108.tar.gz
Overview
| Package | Version | Category | License | Language |
|---|---|---|---|---|
omnigres | 0.4.11 | FEAT | Apache-2.0 | C |
| ID | Extension | Bin | Lib | Load | Create | Trust | Reloc | Schema |
|---|---|---|---|---|---|---|---|---|
| 2940 | omni | No | Yes | Yes | Yes | No | No | omni |
| 2941 | omni_auth | No | No | No | Yes | No | No | omni_auth |
| 2942 | omni_aws | No | No | No | Yes | Yes | No | omni_aws |
| 2943 | omni_cloudevents | No | No | No | Yes | Yes | No | omni_cloudevents |
| 2944 | omni_containers | No | Yes | No | Yes | No | No | omni_containers |
| 2945 | omni_credentials | No | No | No | Yes | No | No | omni_credentials |
| 2948 | omni_email | No | No | No | Yes | No | No | omni_email |
| 2949 | omni_http | No | No | No | Yes | No | No | omni_http |
| 2950 | omni_httpc | No | Yes | No | Yes | No | No | omni_httpc |
| 2951 | omni_httpd | No | Yes | No | Yes | No | No | omni_httpd |
| 2952 | omni_id | No | Yes | No | Yes | No | Yes | - |
| 2953 | omni_json | No | No | No | Yes | Yes | No | omni_json |
| 2954 | omni_kube | No | Yes | No | Yes | No | No | omni_kube |
| 2955 | omni_ledger | No | Yes | No | Yes | No | No | omni_ledger |
| 2956 | omni_manifest | No | No | No | Yes | No | No | omni_manifest |
| 2957 | omni_mimetypes | No | No | No | Yes | No | No | omni_mimetypes |
| 2958 | omni_os | No | Yes | No | Yes | No | No | omni_os |
| 2959 | omni_polyfill | No | Yes | No | Yes | No | No | omni_polyfill |
| 2960 | omni_python | No | Yes | No | Yes | No | No | omni_python |
| 2961 | omni_regex | No | Yes | No | Yes | No | Yes | - |
| 2962 | omni_rest | No | No | No | Yes | No | No | omni_rest |
| 2963 | omni_schema | No | No | No | Yes | No | No | omni_schema |
| 2964 | omni_seq | No | Yes | No | Yes | No | No | omni_seq |
| 2965 | omni_service | No | No | No | Yes | No | No | omni_service |
| 2966 | omni_session | No | No | No | Yes | No | No | omni_session |
| 2968 | omni_sql | No | Yes | No | Yes | No | No | omni_sql |
| 2969 | omni_sqlite | No | Yes | No | Yes | No | No | omni_sqlite |
| 2970 | omni_test | No | No | No | Yes | No | No | omni_test |
| 2971 | omni_txn | No | Yes | No | Yes | No | No | omni_txn |
| 2972 | omni_types | No | Yes | No | Yes | No | No | omni_types |
| 2973 | omni_var | No | Yes | No | Yes | No | No | omni_var |
| 2974 | omni_vfs | No | Yes | No | Yes | No | No | omni_vfs |
| 2975 | omni_vfs_types_v1 | No | No | No | Yes | No | No | omni_vfs_types_v1 |
| 2976 | omni_web | No | Yes | No | Yes | No | No | omni_web |
| 2977 | omni_worker | No | Yes | No | Yes | No | No | omni_worker |
| 2978 | omni_xml | No | Yes | No | Yes | No | No | omni_xml |
| 2979 | omni_yaml | No | Yes | No | Yes | No | No | omni_yaml |
| Related | omni_types omni_http |
|---|---|
| Depended By | omni_rest omni_session |
Version
| Type | Repo | Version | PG Ver | Package | Deps |
|---|---|---|---|---|---|
| EXT | PIGSTY | 0.4.11 | 1817161514 | omnigres | omni_types, omni_http |
| RPM | PIGSTY | 0.4.11 | 1817161514 | omnigres_$v | - |
| DEB | PIGSTY | 0.4.11 | 1817161514 | postgresql-$v-omnigres | - |
| OS / PG | PG18 | PG17 | PG16 | PG15 | PG14 |
|---|---|---|---|---|---|
| el8.x86_64 | PIGSTY MISS | PIGSTY 20250120 | PIGSTY 20250120 | PIGSTY 20250120 | PIGSTY 20250120 |
| el8.aarch64 | PIGSTY MISS | PIGSTY 20250120 | PIGSTY 20250120 | PIGSTY 20250120 | PIGSTY 20250120 |
| el9.x86_64 | PIGSTY MISS | PIGSTY 20250507 | PIGSTY 20250507 | PIGSTY 20250507 | PIGSTY 20250507 |
| el9.aarch64 | PIGSTY MISS | PIGSTY 20250507 | PIGSTY 20250507 | PIGSTY 20250507 | PIGSTY 20250507 |
| el10.x86_64 | PIGSTY MISS | PIGSTY MISS | PIGSTY MISS | PIGSTY MISS | PIGSTY MISS |
| el10.aarch64 | PIGSTY MISS | PIGSTY MISS | PIGSTY MISS | PIGSTY MISS | PIGSTY MISS |
| d12.x86_64 | PIGSTY MISS | PIGSTY 20250120 | PIGSTY 20250120 | PIGSTY 20250120 | PIGSTY 20250120 |
| d12.aarch64 | PIGSTY MISS | PIGSTY 20250120 | PIGSTY 20250120 | PIGSTY 20250120 | PIGSTY 20250120 |
| d13.x86_64 | PIGSTY 20251108 | PIGSTY 20251108 | PIGSTY 20251108 | PIGSTY 20251108 | PIGSTY 20251108 |
| d13.aarch64 | PIGSTY 20251108 | PIGSTY 20251108 | PIGSTY 20251108 | PIGSTY 20251108 | PIGSTY 20251108 |
| u22.x86_64 | PIGSTY MISS | PIGSTY 20250120 | PIGSTY 20250120 | PIGSTY 20250120 | PIGSTY 20250120 |
| u22.aarch64 | PIGSTY MISS | PIGSTY 20250120 | PIGSTY 20250120 | PIGSTY 20250120 | PIGSTY 20250120 |
| u24.x86_64 | PIGSTY 20251108 | PIGSTY 20251108 | PIGSTY 20251108 | PIGSTY 20251108 | PIGSTY 20251108 |
| u24.aarch64 | PIGSTY 20251108 | PIGSTY 20251108 | PIGSTY 20251108 | PIGSTY 20251108 | PIGSTY 20251108 |
Build
You can build the RPM / DEB packages for omnigres using pig build:
pig build pkg omnigres # build RPM / DEB packages
Install
You can install omnigres directly. First, make sure the PGDG and PIGSTY repositories are added and enabled:
pig repo add pgsql -u # Add repo and update cache
Install the extension using pig or apt/yum/dnf:
pig install omnigres; # Install for current active PG version
pig ext install -y omnigres -v 18 # PG 18
pig ext install -y omnigres -v 17 # PG 17
pig ext install -y omnigres -v 16 # PG 16
pig ext install -y omnigres -v 15 # PG 15
pig ext install -y omnigres -v 14 # PG 14
dnf install -y omnigres_18 # PG 18
dnf install -y omnigres_17 # PG 17
dnf install -y omnigres_16 # PG 16
dnf install -y omnigres_15 # PG 15
dnf install -y omnigres_14 # PG 14
apt install -y postgresql-18-omnigres # PG 18
apt install -y postgresql-17-omnigres # PG 17
apt install -y postgresql-16-omnigres # PG 16
apt install -y postgresql-15-omnigres # PG 15
apt install -y postgresql-14-omnigres # PG 14
Create Extension:
CREATE EXTENSION omni_httpd CASCADE; -- requires: omni_types, omni_http
Usage
The omni_httpd extension is an embedded HTTP server for PostgreSQL, allowing HTTP request handling in SQL.
Define a Handler
CREATE FUNCTION my_handler(request omni_httpd.http_request)
RETURNS omni_httpd.http_outcome
RETURN omni_httpd.http_response(body => request.headers::text);
Register a Route
INSERT INTO omni_httpd.urlpattern_router (match, handler)
VALUES (omni_httpd.urlpattern('/headers'), 'my_handler'::regproc);
Configuration
omni_httpd.http_workers– Number of HTTP workers (defaults to CPU count, respectsmax_worker_processes)omni_httpd.temp_dir– Temporary directory for sockets (defaults to/tmp)
Control
SELECT omni_httpd.stop(); -- Stop the server
SELECT omni_httpd.start(); -- Start the server
-- Pass immediate => true for immediate execution without waiting for transaction commit
Key Types
omni_httpd.http_request– Request type withpath,method,query_string,headers,bodyomni_httpd.http_response– Response constructoromni_httpd.http_outcome– Return type for handlers
Feedback
Was this page helpful?
Thanks for the feedback! Please let us know how we can improve.
Sorry to hear that. Please let us know how we can improve.