forgejo/modules/setting
Michael Kriese 849de07064 feat(xorm): add max idle time setting for db connections (#2418)
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>
2024-02-21 12:17:16 +00:00
..
config Refactor system setting (#27000) 2023-10-05 09:08:19 +08:00
actions.go [CI] DEFAULT_ACTIONS_URL = https://code.forgejo.org 2024-02-05 13:33:58 +01:00
actions_test.go [CI] DEFAULT_ACTIONS_URL = https://code.forgejo.org 2024-02-05 13:33:58 +01:00
admin.go [GITEA] notifies admins on new user registration 2024-02-05 16:09:28 +01:00
api.go
asset_dynamic.go
asset_static.go
attachment.go Fix incorrect default value of [attachment].MAX_SIZE (#28373) 2023-12-06 10:59:56 -05:00
attachment_test.go
badges.go [GITEA] Add support for shields.io-based badges 2024-02-05 16:09:42 +01:00
cache.go Always enable caches (#28527) 2023-12-19 09:29:05 +00:00
camo.go
config.go Refactor system setting (#27000) 2023-10-05 09:08:19 +08:00
config_env.go [BRANDING] parse FORGEJO__* in the container environment 2024-02-05 16:05:02 +01:00
config_env_test.go [BRANDING] parse FORGEJO__* in the container environment 2024-02-05 16:05:02 +01:00
config_provider.go [gitea] Remove unnecessary parameter (#29092) 2024-02-10 10:53:43 +01:00
config_provider_test.go
cors.go Refactor CORS handler (#28587) 2023-12-25 20:13:18 +08:00
cron.go
cron_test.go
database.go feat(xorm): add max idle time setting for db connections (#2418) 2024-02-21 12:17:16 +00:00
database_sqlite.go
database_test.go Fix incorrect PostgreSQL connection string for Unix sockets (#28865) 2024-01-20 16:04:47 +00:00
federation.go
forgejo_storage_test.go [TESTS] verify facts for the admin storage documentation 2024-02-05 14:44:33 +01:00
git.go
git_test.go
highlight.go
i18n.go
incoming_email.go
indexer.go
indexer_test.go
lfs.go Port "Use general token signing secret" 2024-02-19 20:49:37 +01:00
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 Port "Use general token signing secret" 2024-02-19 20:49:37 +01:00
oauth2_test.go Port "Use general token signing secret" 2024-02-19 20:49:37 +01:00
other.go
packages.go
packages_test.go
path.go [BRANDING] alias {FORGEJO,GITEA}_{CUSTOM,WORK_DIR} 2024-02-05 16:05:01 +01:00
path_test.go [BRANDING] alias {FORGEJO,GITEA}_{CUSTOM,WORK_DIR} 2024-02-05 16:05:01 +01:00
picture.go
project.go
proxy.go
queue.go Increase queue length (#27555) 2023-10-10 18:47:49 +08:00
repository.go Merge branch 'rebase-forgejo-dependency' into wip-forgejo 2024-02-05 18:58:23 +01:00
repository_archive.go
repository_archive_test.go
security.go Warn that DISABLE_QUERY_AUTH_TOKEN is false only if it's explicitly defined (#28783) 2024-01-14 21:20:18 +01:00
server.go [BRANDING] Rebrand default config settings for new installs (#140) 2024-02-05 16:02:13 +01:00
service.go [GITEA] add option for banning dots in usernames 2024-02-05 16:05:50 +01:00
service_test.go
session.go Use secure cookie for HTTPS sites (#26999) 2023-09-11 17:03:51 +08:00
setting.go [gitea] Remove unnecessary parameter (#29092) 2024-02-10 10:53:43 +01:00
setting_test.go
ssh.go
storage.go Support storage base path as prefix (#27827) 2023-11-01 19:17:18 +08:00
storage_test.go Support storage base path as prefix (#27827) 2023-11-01 19:17:18 +08:00
task.go
time.go
ui.go [THEME] Add colorblind theme variants 2024-02-05 16:05:02 +01:00
webhook.go [BRANDING] add the forgejo webhook type & update webhook docs URLs 2024-02-05 16:02:14 +01:00