steve-chavez
fbc4d565ca
refactor: move debounce from AppState to Logger
...
Will allow to capture accurate timeout metrics.
2024-04-12 14:29:39 -05:00
steve-chavez
2de32fc108
refactor: observation handler to AppConfig
...
With this:
- Is no longer necessary to pass observer as an argument
to every function that needs observations.
- We can invoke the observer on every function that uses AppConfig.
However it'd be better to just call the observer in the upper modules
(like on App.hs).
2024-04-12 14:29:39 -05:00
Laurence Isla and GitHub
460259548d
perf: fix space leaks by downgrading fuzzyset to v0.2.4
2024-04-11 14:13:20 -05:00
steve-chavez
3d55f77bae
Revert "fix: slow responses on schema cache reload"
...
This reverts commit 727ef465c1 .
Also documents requests waiting for the schema cache.
2024-04-02 23:15:09 -05:00
steve-chavez
2543b8d724
fix: clarify PGRST204 error message
2024-04-01 19:03:14 -05:00
Laurence Isla
378c11104b
test: fix some in-db config values
...
To correctly test in-db override of config file values, the former must be different from the latter.
2024-03-27 15:59:35 -05:00
Laurence Isla
428a6fef63
fix: in-db config values not loading for pgrst.server_trace_header and pgrst.server_cors_allowed_origins
2024-03-27 15:59:35 -05:00
steve-chavez
941ea0f929
test: notify do nothing
2024-03-19 13:22:51 +03:30
steve-chavez
ee8b3ef8fe
fix: log on LISTEN notification
2024-03-19 13:22:51 +03:30
steve-chavez
727ef465c1
fix: slow responses on schema cache reload
2024-03-15 11:53:29 -05:00
steve-chavez
11d8da046c
fix: incorrect /ready response on slow schema load
2024-03-15 11:03:01 -05:00
steve-chavez
4b289b1c97
test: requests wait for schema cache load
...
* nix: add postgrest-test-big-schema command
2024-03-15 06:18:26 -05:00
steve-chavez
92ac7e574e
chore: clarify concurrent notifications test
2024-03-14 23:17:05 -05:00
steve-chavez
ec7ab271d6
chore: add postgrest roles to big_schema.sql
2024-03-14 11:21:17 -05:00
Steve Chavez and GitHub
650249ed29
perf: remove json_typeof ( #3316 )
2024-03-08 16:02:28 -05:00
steve-chavez
05cdbb34c2
test: insignificant JSON whitespace on writes
2024-03-07 17:14:16 -05:00
steve-chavez
8eb88ef218
test: reduce threshold on memory tests
2024-03-07 16:01:21 -05:00
Wolfgang Walther
0738785d72
test: Improve dump-schema snapshot test formatting
...
Splitting the output into separate files and adding top-level newlines makes this
much better to read and understand when looking at diffs.
Inspired by #1699
2024-02-24 14:01:19 +01:00
Wolfgang Walther and Wolfgang Walther
8a21a9c34e
fix: Dump media handlers and timezones with --dump-schema
...
Those were left out of the schema dump when the features were introduced, probably
because ByteString doesn't have a toJSON instance. Changing the type to Text solves
this easily.
Resolves #3237
2024-02-20 18:44:17 +01:00
Steve Chavez and GitHub
6d506df6f3
refactor: add observation module ( #3232 )
2024-02-20 12:29:33 -05:00
Taimoor Zaeem and GitHub
32e1900370
feat: dump schema cache through admin API ( #3233 )
2024-02-19 21:20:29 -05:00
Wolfgang Walther
8ff9f3292e
test: Hide "cast on domain" warnings in spec tests
...
Also removes a few other unused settings which originate from running pg_dump.
2024-02-19 17:49:16 +01:00
Wolfgang Walther
00fbe9ff3e
fix: Avoid casting to table type when select= and media type handler are used
...
Previously using a generic mimetype handler failed when any kind of select= was given, because
we tried to cast the select-result to the original table type. With this change, this cast is
only applied when select=* is given implicitly or explicitly. This is the only case where this
makes sense, because this guarantees that correct columns are selected in the correct order for
this cast to succeed.
Resolves #3160
2024-02-15 19:01:12 +01: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
Andrei Dziahel and GitHub
3432f75ed4
fix: fixes server timings' precision ( #3227 )
...
* test: fix test_io accordingly
2024-02-14 12:26:34 -05:00
steve-chavez
5424be76d9
feat: log schema cache stats to stderr
...
adjust the memory tests
2024-02-09 16:18:04 -05:00
Taimoor Zaeem and Steve Chavez
f9ee1f7e73
feat: apply all function settings as transaction-scoped settings
2024-02-09 11:37:01 -05:00
Ivan Kasatenko and GitHub
71887e4b78
feat: dump config through Admin API
2024-02-05 19:16:05 -05:00
Wolfgang Walther
310d04065e
test: Make failing loadtest fixtures pass again
...
PR #2358 added a bulk insert to the loadtest. However this broke the regular insert test,
which just returned 400 Bad Request because of a missing PK value since. Adding the new
id column in the payload to the ?columns= argument fixes that.
2024-02-05 21:40:21 +01:00
steve-chavez
45cabacdcc
fix: wrong subquery error returning as 400 status
2024-02-02 22:08:56 -05:00
Wolfgang Walther and Wolfgang Walther
6682baebd2
nix: Update nixpkgs and build with GHC 9.4.8
2024-01-18 18:54:33 +01:00
steve-chavez
3af63cb94c
fix: empty row on handler function
...
Closes https://github.com/PostgREST/postgrest/issues/3126
2023-12-20 16:18:09 -05:00
steve-chavez
1680a6eed3
fix: aggregates not working for all schemas
...
Closes https://github.com/PostgREST/postgrest/issues/3124
2023-12-20 15:20:18 -05:00
Taimoor Zaeem and GitHub
0b77098460
feat: add max-affected preference to prefer header ( #3083 )
2023-12-18 18:35:23 -05:00
steve-chavez
6b9fde59cd
fix: any handler sets a default application/json
...
Now it sets application/octet-stream as the generic type.
2023-12-12 17:44:07 -05:00
Laurence Isla and GitHub
4fb521cac6
fix: add jwt_cache_max_lifetime as an in-database configuration option ( #3102 )
2023-12-12 16:29:50 -05:00
Andrei Dziahel and GitHub
cbfff2804d
fix: replace json parser error with generic msg ( #3090 )
2023-12-07 18:04:51 -05:00
Laurence Isla and GitHub
d49e3d7132
fix: allow using special characters in json keys ( #3081 )
...
* increase memory size test
2023-12-06 17:28:51 -05:00
steve-chavez
9fe11249f9
feat: custom SQL handler for the "*/*" media type
2023-11-28 23:14:38 -05:00
Laurence Isla and GitHub
ca5eb64deb
chore: fix server-timing metric order and doctest
2023-11-28 12:45:39 -05:00
steve-chavez
b080f59bac
test: server timing on root and options method
2023-11-28 10:25:25 -05:00
steve-chavez
958339b8d3
chore: change server timing render to response
...
"render" is a loaded term than might be thought as the generation
of a full HTML page. While for this phase we only process the status
and the headers.
Changing it to "response" so is not misleading at least. Users can check the
docs for clarification.
2023-11-28 10:25:25 -05:00
Laurence Isla and Steve Chavez
dfa875c8c7
fix: do not log internal db errors like 'acquisition timeout' when log-level=crit
2023-11-27 23:06:40 -05:00
Laurence Isla and Steve Chavez
33891e3a73
feat: log all internal database errors to stderr
2023-11-27 23:06:40 -05:00
Laurence Isla and Steve Chavez
b538ab9823
feat: add timing for the api request parse
2023-11-24 16:29:25 -05:00
Laurence Isla and Steve Chavez
850b15fe13
fix: change timing name from 'query' to 'transaction'
2023-11-24 16:29:25 -05:00
Andrei Dziahel and GitHub
df97a5071f
Display an actual TCP port app is bound to ( #3034 )
2023-11-23 18:17:16 -05: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
Andrei Dziahel and GitHub
c3301a1653
feat: implement server-timing-enabled config parameter ( #3064 )
2023-11-22 17:57:50 -05:00
steve-chavez
f7bf2157f3
feat: apply super settings on impersonated roles
...
If they have GRANT SET ON PARAMETER <setting> TO authenticator
2023-11-21 10:54:56 -05:00