Skip to content

Various fixes#166

Merged
ImVexed merged 5 commits intomasterfrom
various-fixes
Jan 8, 2024
Merged

Various fixes#166
ImVexed merged 5 commits intomasterfrom
various-fixes

Conversation

@ImVexed
Copy link
Contributor

@ImVexed ImVexed commented Jan 8, 2024

This is a rollup MR for a couple of bugs I've observed around timeouts while uploading large files to underpowered VMs.

The primary bug involved hitting nginx read/write timeouts while the upload has stalled network traffic after it's finished uploading the actual content but is waiting for the server to respond and finish the http request. This happened because we chunk large uploads into tiny files in minio, then merge them back together into one when the upload is finished. This consumes a fair bit of I/O, and could take longer than nginx's default timeouts.

This also exposed a weak spot in the codebase around upload failures and making sure that all related minio objects were being deleted. Particularly that only completed chunks were being added to the deletion queue should the request fail. But if there was a chunk in progress when the upload failed, the partial chunk itself would not be added and deleted. Leaving behind many <16mb chunks.

This also fixed a pnpm issue around the image we were using being unmaintained for the last 2 years. Causing newer local installations of pnpm breaking docker builds.

@ImVexed ImVexed requested a review from puckzxz as a code owner January 8, 2024 07:39
@ImVexed ImVexed merged commit bbc6a4d into master Jan 8, 2024
@ImVexed ImVexed deleted the various-fixes branch January 8, 2024 07:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant