Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4a3936f71c | ||
|
|
9b6b5d06ea |
@@ -5,6 +5,12 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
|||||||
|
|
||||||
## Unreleased
|
## Unreleased
|
||||||
|
|
||||||
|
## [12.2.8] - 2025-02-10
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
- #3841, Log `503` client error to stderr - @taimoorzaeem
|
||||||
|
|
||||||
## [12.2.7] - 2025-02-03
|
## [12.2.7] - 2025-02-03
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|||||||
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
name: postgrest
|
name: postgrest
|
||||||
version: 12.2.7
|
version: 12.2.8
|
||||||
synopsis: REST API for any Postgres database
|
synopsis: REST API for any Postgres database
|
||||||
description: Reads the schema of a PostgreSQL database and creates RESTful routes
|
description: Reads the schema of a PostgreSQL database and creates RESTful routes
|
||||||
for tables, views, and functions, supporting all HTTP methods that security
|
for tables, views, and functions, supporting all HTTP methods that security
|
||||||
|
|||||||
@@ -265,8 +265,9 @@ usePool AppState{stateObserver=observer, stateMainThreadId=mainThreadId, ..} ses
|
|||||||
SQL.ServerError{} ->
|
SQL.ServerError{} ->
|
||||||
when (Error.status (Error.PgError False err) >= HTTP.status500) $
|
when (Error.status (Error.PgError False err) >= HTTP.status500) $
|
||||||
observer $ QueryErrorCodeHighObs err
|
observer $ QueryErrorCodeHighObs err
|
||||||
SQL.SessionUsageError (SQL.QueryError _ _ (SQL.ClientError _)) ->
|
err@(SQL.SessionUsageError (SQL.QueryError _ _ (SQL.ClientError _))) ->
|
||||||
pure ()
|
-- An error on the client-side, usually indicates problems wth connection
|
||||||
|
observer $ QueryErrorCodeHighObs err
|
||||||
)
|
)
|
||||||
|
|
||||||
return res
|
return res
|
||||||
|
|||||||
@@ -1644,3 +1644,22 @@ def test_jwt_cache_purges_expired_entries(defaultenv):
|
|||||||
response = postgrest.session.get("/authors_only", headers=hdrs3)
|
response = postgrest.session.get("/authors_only", headers=hdrs3)
|
||||||
|
|
||||||
assert response.status_code == 200
|
assert response.status_code == 200
|
||||||
|
|
||||||
|
|
||||||
|
def test_pgrst_log_503_client_error_to_stderr(defaultenv):
|
||||||
|
"PostgREST should log 503 errors to stderr"
|
||||||
|
|
||||||
|
env = {
|
||||||
|
**defaultenv,
|
||||||
|
"PGAPPNAME": "test-io",
|
||||||
|
}
|
||||||
|
|
||||||
|
with run(env=env) as postgrest:
|
||||||
|
|
||||||
|
postgrest.session.get("/rpc/terminate_pgrst?appname=test-io")
|
||||||
|
|
||||||
|
output = postgrest.read_stdout(nlines=6)
|
||||||
|
|
||||||
|
log_message = '{"code":"PGRST001","details":"no connection to the server\\n","hint":null,"message":"Database client error. Retrying the connection."}\n'
|
||||||
|
|
||||||
|
assert any(log_message in line for line in output)
|
||||||
|
|||||||
Reference in New Issue
Block a user