mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2025-01-04 12:13:54 +01:00
849de07064
Add a new optional `CONN_MAX_IDLETIME`[^1] This allows to set the `SetConnMaxIdleTime` on `database/sql`. It's useful to allow to close more idle connections to reduce database connections, especially on postgresql. For me i would like to use it to set a higher max idle connections but they will all be closed after being idle. So also the last idle connection will be closed when there is no load on forgejo. I also use it with max connection lifetime, because currently `database/sql` doesn't detect a postgresql master change[^2] and i'll get `[E] can't update runner status: pq: cannot execute UPDATE in a read-only transaction`[^3] on forgejo until the connection is closed. [^1]: https://pkg.go.dev/database/sql#DB.SetConnMaxIdleTime [^2]: https://stackoverflow.com/questions/51858659/how-to-safely-discard-golang-database-sql-pooled-connections-for-example-when-t [^3]: https://matrix.to/#/!zpNKWqkiEOyljSMQDK:matrix.org/$_AJft_amsGn5hXGOYw75JoBJQnW3aKJEpb-Iw53L_TU?via=schinas.net&via=matrix.org&via=nitro.chat Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/2418 Reviewed-by: Gusted <gusted@noreply.codeberg.org> Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org> Co-authored-by: Michael Kriese <michael.kriese@visualon.de> Co-committed-by: Michael Kriese <michael.kriese@visualon.de> |
||
---|---|---|
.. | ||
config | ||
actions.go | ||
actions_test.go | ||
admin.go | ||
api.go | ||
asset_dynamic.go | ||
asset_static.go | ||
attachment.go | ||
attachment_test.go | ||
badges.go | ||
cache.go | ||
camo.go | ||
config.go | ||
config_env.go | ||
config_env_test.go | ||
config_provider.go | ||
config_provider_test.go | ||
cors.go | ||
cron.go | ||
cron_test.go | ||
database.go | ||
database_sqlite.go | ||
database_test.go | ||
federation.go | ||
forgejo_storage_test.go | ||
git.go | ||
git_test.go | ||
highlight.go | ||
i18n.go | ||
incoming_email.go | ||
indexer.go | ||
indexer_test.go | ||
lfs.go | ||
lfs_test.go | ||
log.go | ||
log_test.go | ||
mailer.go | ||
mailer_test.go | ||
markup.go | ||
metrics.go | ||
migrations.go | ||
mime_type_map.go | ||
mirror.go | ||
oauth2.go | ||
oauth2_test.go | ||
other.go | ||
packages.go | ||
packages_test.go | ||
path.go | ||
path_test.go | ||
picture.go | ||
project.go | ||
proxy.go | ||
queue.go | ||
repository.go | ||
repository_archive.go | ||
repository_archive_test.go | ||
security.go | ||
server.go | ||
service.go | ||
service_test.go | ||
session.go | ||
setting.go | ||
setting_test.go | ||
ssh.go | ||
storage.go | ||
storage_test.go | ||
task.go | ||
time.go | ||
ui.go | ||
webhook.go |