forgejo/modules/setting
zeripath f034804e5d
Set self-adjusting deadline for connection writing (#16068) (#16123)
In #16055 it appears that the simple 5s deadline doesn't work for large
file writes. Now we can't - or at least shouldn't just set no deadline
as go will happily let these connections block indefinitely. However,
what seems reasonable is to set some minimum rate we expect for writing.

This PR suggests the following algorithm:

* Every write has a minimum timeout of 5s (adjustable at compile time.)
* If there has been a previous write - then consider its previous
deadline, add half of the minimum timeout + 2s per kb about to written.
* If that new deadline is after the minimum timeout use that.

Fix #16055

Signed-off-by: Andrew Thornton <art27@cantab.net>

Co-authored-by: 6543 <6543@obermui.de>
2021-06-11 00:26:32 +03:00
..
attachment.go Provide self-registering storage system (#12978) 2020-10-12 23:58:34 -04:00
cache.go Ensure memcache TTL cannot be over 30 days (#14592) 2021-02-09 22:29:03 +00:00
cors.go Movde dependents on macaron from modules/setting (#10050) 2020-01-29 09:47:46 +02:00
cron.go Allow extended config on cron settings (#12939) 2020-09-25 09:58:09 +01:00
cron_test.go Allow extended config on cron settings (#12939) 2020-09-25 09:58:09 +01:00
database.go When reinitialising DBConfig reset the database use flags (#13796) 2020-12-02 19:39:48 -05:00
database_sqlite.go Move database settings from models to setting (#7806) 2019-08-24 11:24:45 +02:00
database_test.go Move database settings from models to setting (#7806) 2019-08-24 11:24:45 +02:00
git.go Add pager to the branches page (#14202) 2021-01-19 05:07:38 +01:00
indexer.go Avoid setting the CONN_STR in issue indexer queue unless it is meant to be set (#13069) 2020-10-07 23:24:41 +01:00
indexer_test.go Restrict repository indexing by glob match (#7767) 2019-09-11 20:26:28 +03:00
lfs.go Handle and propagate errors when checking if paths are Dirs, Files or Exist (#13186) 2020-11-27 21:42:08 -05:00
log.go Migrate to use jsoniter instead of encoding/json (#14841) 2021-03-01 22:08:10 +01:00
mailer.go Sendmail should create a process on the gitea system and have a default timeout (#11256) 2020-05-03 00:04:31 +01:00
markup.go Fix sanitizer config - multiple rules (#11133) 2020-04-29 12:34:59 +01:00
migrations.go Add Allow-/Block-List for Migrate & Mirrors (#13610) 2020-11-28 19:37:58 -05:00
picture.go Avatars and Repo avatars support storing in minio (#12516) 2020-10-14 21:07:51 +08:00
project.go Kanban board (#8346) 2020-08-16 23:07:38 -04:00
queue.go Slightly simplify the queue settings code to help reduce the risk of problems (#12976) 2020-10-15 17:40:03 -04:00
repository.go Added option to disable migrations (#13114) 2020-12-21 15:39:41 +01:00
service.go Add ui.explore settings to control view of explore pages (2) (#14094) 2021-03-11 13:40:54 +00:00
session.go Add SameSite setting for cookies (#14900) 2021-03-07 08:12:43 +00:00
setting.go Set self-adjusting deadline for connection writing (#16068) (#16123) 2021-06-11 00:26:32 +03:00
setting_test.go Migrate to use jsoniter instead of encoding/json (#14841) 2021-03-01 22:08:10 +01:00
storage.go more test case for STORAGE_TYPE overrides (and fixes) (#14096) 2020-12-22 01:03:18 +02:00
storage_test.go more test case for STORAGE_TYPE overrides (and fixes) (#14096) 2020-12-22 01:03:18 +02:00
task.go Avoid setitng the CONN_STR in queues unless it is meant to be set (#13025) 2020-10-04 18:12:26 +01:00
webhook.go Add Matrix webhook (#10831) 2020-03-28 15:09:55 +02:00