Improve hashing management for large file parts
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 22/100
- Type d'issue
- Fonctionnalité
- Clarté
- Plutôt claire
- Activité
- À l'abandon
- Stack technique
- python
- Domaine
- performance
Piste de recherche
The issue asks for hashing of large file parts to move off the main sync thread, possibly into a multiprocessing pool behind a new parameter. The payload names no files or tests, so start by locating the sync path where hashing and uploads are scheduled and how the existing executor is passed in. Done would mean a design agreed in the thread first, then a parameter that parallelizes hashing with a test showing the upload threads are not starved. Expect to ask maintainers about the design before writing code.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Currently during sync the main thread does all the hashing aggresively, which can put it hundreds or thousands of parts ahead of the uploading threads.
I suggest we introduce a new parameter (to emerge executor?) which will create a multiprocessing pool which will farm out those hashing requests to separate processes, so that it can be parallelized over many cores for a generally faster operation. This also partially addreses the pycurl problem where performance may increase to a point where we'll want to avoid hashing in the main thread.
- Langage dominant
- Python
- Étoiles
- 214
- Forks
- 68
- Merge moyen
- 51 min
- PR mergées (30 j)
- 6
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de Backblaze/b2-sdk-python
-
Download and copy sync actions print remote file names without escape_control_charsPeut-être pris @dreyfus92 l’a pris il y a 15 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Backblaze/b2-sdk-python#631 ·
Les mainteneurs répondent en général sous 1 jour
-
SqliteAccountInfo profile name validation uses "re.match", so only the first character is checkedPeut-être pris @nazarli-shabnam l’a pris il y a 9 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
Backblaze/b2-sdk-python#629 ·
Les mainteneurs répondent en général sous 1 jour
-
Adopt the AI-native SDLC and repository policiesPeut-être pris @goanpeca l’a pris il y a 18 jours. Ouverteenhancement
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 20/100
Backblaze/b2-sdk-python#634 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 50/100
Backblaze/b2-sdk-python#630 ·
Les mainteneurs répondent en général sous 1 jour
-
ci: cli-compat fails — 4 sse/sync integration tests broken in B2_Command_Line_Tool (all environments)Peut-être à nouveau libre @ffumero2003 l’a pris il y a 37 jours, et aucune pull request n’est ouverte. Ouvertebug testing
Backblaze/b2-sdk-python#627 · 2 commentaires · 1 personne assignée ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de Backblaze/b2-sdk-python
Issues similaires
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 72/100
btclib-org/btclib-node#2505 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
open-webui/open-webui#34462 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
gorakhargosh/watchdog#1462 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
openwisp/openwisp-monitoring#889 ·
Les mainteneurs répondent en général sous 2 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
IETF-Hackathon/pqc-certificates#351 ·
Les mainteneurs répondent en général sous 2 jours