Wolfgang Walther and Wolfgang Walther
ee4bfbf253
perf: Pass arguments to RPCs called via GET directly
...
Previously they were passed as a JSON payload. This results in a LATERAL
join for the calling expression, which prevents LIMIT from being pushed
into the inlined function call, making some requests really slow.
Resolves #2858
2024-07-09 08:29:13 +02:00
Wolfgang Walther and Wolfgang Walther
bb96c2dc74
feat: Drop support for pg 11
...
PostgreSQL 11 is EOL since November 2023.
2024-06-15 17:23:34 +02:00
Steve Chavez and GitHub
650249ed29
perf: remove json_typeof ( #3316 )
2024-03-08 16:02:28 -05:00
Wolfgang Walther
2466f4e738
fix: Return 406 instead of 415 for non-acceptable media type
...
415 is for Content-Type and 406 for Accept headers.
2024-02-15 19:01:12 +01:00
Tim Abdulla and GitHub
1c60b50e2e
Add aggregate functions ( #2925 )
...
The aggregate functions SUM(), MAX(), MIN(), AVG(), and COUNT() are now supported.
2023-11-23 14:03:03 -05:00
Taimoor Zaeem and GitHub
5c9c7f4ff4
fix: HTTP status responses for upserts
...
* PUT returns 201 instead of 200 when rows are inserted
* POST with "Prefer: resolution=merge-duplicates" returns 200 instead of 201 when no rows are inserted
2023-10-26 20:49:20 -05:00
steve-chavez
82b38341bf
feat: sql handlers for custom media types
...
* test text/html and drop HtmlRawOutputSpec.hs
* all tests passing, removed all pendingWith
* make functions compatible with pg <= 12
* move custom media types tests to own spec
* anyelement aggregate
* apply aggregates without a final function
* overriding works
* overriding anyelement with particular agg
* cannot override vendored media types
* plan spec works with custom aggregate
* renamed media types to make clear which ones are overridable
* correct content negotiation with same weight
* text/tab-separated-values media type
* text/csv with BOM plus content-disposition header
2023-10-26 09:04:02 -05:00
steve-chavez
14d030b96c
break: remove binary field logic, raw-media-types
...
BREAKING CHANGE
Can be done later with custom media types
2023-10-26 09:04:02 -05:00
Taimoor Zaeem and GitHub
618f93dec1
test: fix typos in batch upsert tests
2023-10-21 16:29:43 -05:00
steve-chavez
54786a6c04
fix: unnecessary count() on RPC returning single
2023-10-19 15:54:22 -05:00
Taimoor Zaeem and GitHub
f10b4c3268
test: add tests for batch upserts ( #3005 )
2023-10-13 09:47:26 -03:00
steve-chavez
28d5278d62
fix: use index on jsonb/jsonb arrow filter/order
2023-07-12 14:51:21 -05:00
steve-chavez
40dc46ed2e
fix: compilation on Ubuntu, GHC 9.0.2 compat
2023-06-21 16:22:30 -05:00
steve-chavez
856d450775
refactor: stricter plan media type
2023-06-20 19:12:17 -05:00
steve-chavez
aa15f4782e
refactor: remove MTPlanAttrs to doctest
2023-06-18 15:27:25 -05:00
steve-chavez
bc1fb67df0
drop: Prefer: params=multiple-objects on RPC
...
BREAKING CHANGE
A function with a JSON array or object parameter should be used instead
2023-04-04 19:55:10 -05:00
steve-chavez
032f07f3f0
refactor: remove character varying casting
2023-03-29 13:17:15 -05:00
steve-chavez
46fd856fc6
test: tidy inlining plan test
2023-03-29 05:33:38 -05:00
steve-chavez
5b6421d03a
test: fix sporadic failure on PlanSpec
2023-02-28 17:30:54 -05:00
steve-chavez
0d5d209bfb
perf: use LATERAL instead of CTE for json body
...
* add pgbench test for INSERT and RPC
* use LATERAL for RPC and INSERT
* add tests for inlining
2023-02-25 15:01:06 -05:00
steve-chavez
3773cce246
feat: null filters on embedded resources
2022-12-12 17:14:54 -05:00
steve-chavez
781fa592ca
refactor: delete QueryCost, instead use PlanSpec
2022-12-12 13:31:02 -05:00
steve-chavez
1065021348
refactor: add planCost and planHdr for tests
2022-12-12 13:31:02 -05:00
Laurence Isla and GitHub
b2b92e75cc
Make text the default format for the execution plan
2022-08-17 17:58:02 -05:00
steve-chavez
3648986aa8
refactor: correlated subquery for o2m query
...
Improves the query costs a bit as shown in the tests and reduces code.
2022-08-06 21:42:53 -05:00
steve-chavez
c050b61db8
tests: add basic resource embedding costs
...
Adds costs thresholds on the PlanSpec for the o2m,m2o and m2m queries.
2022-08-06 21:42:53 -05:00
steve-chavez
fd7c23f7a1
Add "for" param for the vnd.pgrst.plan media type
2022-08-01 17:41:23 -05:00
Steve Chavez and GitHub
8911afd079
feat: Allow getting the EXPLAIN plan of a request
2022-07-27 19:33:34 -05:00