Laurence Isla
e0baf7e78e
feat: log error message when JWT secret is less than 32 characters long
...
breaking change: PostgREST now fails to start or reload the config when the JWT secret is less than 32 characters long.
2024-07-04 12:06:24 -05:00
Wolfgang Walther and Wolfgang Walther
0948d38863
test: Rewrite JWT cache tests
...
Timing dependent tests in the IO tests don't work too well when the next
commit increases the JWT parsing performance.
The remaining IO tests are for coverage and basic breakage. Loadtests
are adapted so that performance regressions for JWT caching would be
detected that way.
2024-06-17 08:55:32 +02:00
Wolfgang Walther and Wolfgang Walther
f69ef6c42d
test: Add basic tests for JWT errors
2024-06-17 08:55:32 +02:00
Laurence Isla
9c165e3edb
fix: log connection pool events on log-level="debug" instead of "info"
2024-05-24 17:19:31 -05:00
Laurence Isla
c8612f1df1
test: use only the first line in the logs to check the server version
2024-05-24 17:19:31 -05:00
Taimoor Zaeem and Steve Chavez
8cbcf9867b
feat: add config db-hoisted-tx-settings to allow only hoisted function settings
2024-05-21 19:50:03 -05:00
Taimoor Zaeem and Steve Chavez
a1582a6136
test: clean test_role_settings in io-tests
2024-05-21 19:50:03 -05:00
steve-chavez
3cf565614d
fix: listener retries with exponential backoff
...
Also corrects the admin ready response which now considers the listener
state.
2024-05-19 20:48:59 -05:00
steve-chavez
bfa4e1bedb
test: isolate pg_terminate_backend to appname
...
The pg_terminate_backend done in the io test:
`test_fail_with_automatic_recovery_disabled_and_terminated_using_query`
Can affect other connections.
2024-05-19 19:58:27 -05:00
steve-chavez
ae91fd89b3
test: assert empty response text on 204
2024-05-19 13:44:23 -05:00
steve-chavez
d25df459ea
feat: add metric label for scache load
...
localhost:3001/metrics now includes:
pgrst_schema_cache_loads_total{status="FAIL"} 352.0
pgrst_schema_cache_loads_total{status="SUCCESS"} 3.0
This allows testing the failure case on:
https://github.com/PostgREST/postgrest/issues/3424#issuecomment-2104904910
2024-05-14 17:57:21 -05:00
Wolfgang Walther and Wolfgang Walther
8392357863
test: Fix internal_schema_cache_sleep after 747c78f6
...
The $subject commit broke internal_schema_cache_sleep for other tests.
This reverts the order change, but keeps the scaling by x1000 to ms and
thus changes other users of this setting to the new scale.
2024-05-12 11:44:43 +02:00
Wolfgang Walther and Wolfgang Walther
747c78f6f4
test: Prevent test_admin_ready_includes_schema_cache_state from timing out
...
By increasing the delays in this test by factor 400x, postgrest will not
swamp pg with connection retries after the failed schema cache anymore.
This would happen because there is no backoff included after fatal
errors. Once it does, the io tests hang indefinitely in CI.
2024-05-09 13:36:03 +02:00
Wolfgang Walther and Wolfgang Walther
e96e16fa27
test: Reset statement timeout after each test
...
The statement timeout needs to be cleaned up after each test that
modifies it instead of before the test. Otherwise the changed timeout
leaks into other tests.
2024-05-09 13:36:03 +02:00
steve-chavez
0060abeb01
feat: /live and /ready respond with 500 on failure
...
503 is still used by /ready to indicate a transient state
that can be recovered from.
2024-05-08 17:19:48 -05:00
steve-chavez
357400b2b8
feat: schema cache metrics
2024-04-23 19:08:37 -05:00
steve-chavez
653c7955b2
feat: connection pool metrics in admin server
2024-04-23 19:08:37 -05:00
steve-chavez
3e615bd0d9
feat: add log-level=debug
2024-04-22 21:36:29 -05:00
steve-chavez
1bf0c54dd6
feat: log connection pool events on log-level=info
2024-04-15 18:31:51 -05:00
Steve Chavez and GitHub
9d1dc783bf
test: use postgrest.read_stdout in io tests ( #3412 )
...
It's easier to maintain this way in case there are new log lines.
2024-04-15 13:51:23 -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
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
Taimoor Zaeem and GitHub
32e1900370
feat: dump schema cache through admin API ( #3233 )
2024-02-19 21:20:29 -05: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
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
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
Andrei Dziahel and GitHub
df97a5071f
Display an actual TCP port app is bound to ( #3034 )
2023-11-23 18:17:16 -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
Taimoor Zaeem and GitHub
125f10a60f
feat: add statement_timeout set on functions ( #3056 )
2023-11-17 12:36:51 -05:00
Laurence Isla and GitHub
b235227119
allow all origins when server-cors-allowed-origins is an empty string
2023-10-27 21:30:56 -05:00
Taimoor Zaeem and GitHub
d94286c185
feat: add config to specify CORS origins ( #2986 )
2023-10-24 09:38:25 -05:00
steve-chavez
eb238ad678
test: DRY scache/config sleep in io tests
...
Also increase schema cache sleep to 0.2 as 0.1 tends to fail in CI.
2023-10-20 17:53:54 -05:00
Andrei Dziahel and GitHub
dc01c748ae
feat: add more perf counters to Server-Timing ( #2983 )
2023-10-12 09:55:30 -03:00
Taimoor Zaeem and Steve Chavez
3c1cdd434a
feat: add handling=strict/lenient for Prefer header
2023-09-27 15:00:52 -03:00
Taimoor Zaeem and GitHub
a6e3eda5b2
feat: implement JWT caching ( #2928 )
2023-09-25 14:46:55 -03:00
Taimoor Zaeem and GitHub
57fa2719dd
feat: add db-pool-automatic-recovery configuration to disable connection retrying
2023-08-23 21:08:04 -05:00
steve-chavez
5ce020d5bc
fix: impersonated role applying superuser settings
2023-08-09 20:05:22 -05:00
Laurence Isla and GitHub
e752224f14
feat: show PostgREST version in the logs
2023-07-07 10:28:27 -05:00
Laurence Isla and GitHub
7508230760
feat: allow to verify the PostgREST version through SQL
2023-07-03 18:31:32 -05:00
steve-chavez
9a3d453bf4
test: remove big_schema.sql from io tests
...
It was unused(test skipped) and made the scache reload slower, causing
test failure on CI.
2023-06-02 17:45:25 -05:00
Steve Chavez and GitHub
a852b766eb
Fix dropping schema cache reload notifications
...
* test: bad schema reload
* refactor: DRY using the "extra" lib
* refactor: move worker funtions inside AppState
* Also rename Workers.hs to Admin.hs
2023-06-02 12:22:17 -05:00
steve-chavez
aaf77902f6
feat: isolation level for roles/functions
2023-04-15 18:05:04 -05:00
steve-chavez
e572d1d1a2
feat: configurable role settings
2023-04-10 14:27:08 -05:00
Robert Vollmert
963416ae29
test: stabilize log probe in test_pool_acquisition_timeout
...
There's two lines of log output, and their order is not deterministic.
2023-04-06 22:40:22 +02:00
Wolfgang Walther and Wolfgang Walther
68d2d834ba
nix: Update nixpkgs to 2023-03-25
2023-04-04 18:51:34 +02:00