This repository has been archived on 2024-01-04. You can view files and clone it, but cannot push or open issues or pull requests.
forgejo/modules/setting
zeripath daa5a23548
Set self-adjusting deadline for connection writing (#16068)
* Set self-adjusting deadline for connection writing

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

* Linearly increase timeout

* Make PerWriteTimeout, PerWritePerKbTimeouts configurable

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

Co-authored-by: 6543 <6543@obermui.de>
2021-06-11 00:25:25 +03:00
..
attachment.go
cache.go Ensure memcache TTL cannot be over 30 days (#14592) 2021-02-09 22:29:03 +00:00
cors.go
cron.go
cron_test.go
database.go When reinitialising DBConfig reset the database use flags (#13796) 2020-12-02 19:39:48 -05:00
database_sqlite.go
database_test.go
git.go Add pager to the branches page (#14202) 2021-01-19 05:07:38 +01:00
indexer.go Use filepath.ToSlash and Join in indexer defaults and queues (#15971) 2021-05-25 22:50:35 -04:00
indexer_test.go
lfs.go Unified custom config creation (#16012) 2021-05-29 19:44:14 +01:00
log.go add a new internal hook to save ssh log (#15787) 2021-05-21 17:37:16 -04:00
mailer.go
markup.go Fix regression of renderer (#16091) 2021-06-06 18:50:07 -04:00
migrations.go Add Allow-/Block-List for Migrate & Mirrors (#13610) 2020-11-28 19:37:58 -05:00
mime_type_map.go Add mimetype mapping settings (#15133) 2021-05-10 16:38:08 -04:00
oauth2_client.go OAuth2 login: Set account link to "login" as default behavior (#15768) 2021-05-07 16:15:16 +02:00
picture.go add /assets as root dir of public files (#15219) 2021-04-28 12:35:06 +00:00
project.go
queue.go Use filepath.ToSlash and Join in indexer defaults and queues (#15971) 2021-05-25 22:50:35 -04:00
repository.go Disable Stars config option (#14653) 2021-04-15 18:53:57 +02:00
service.go Allow only internal registration (#15795) 2021-05-09 16:13:35 +02: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) 2021-06-11 00:25:25 +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
webhook.go