Add chunk bulk upload API
Los mantenedores suelen responder en 2 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 35/100
Línea de trabajo
Read the existing POST /chunks handler and websocket upload protocol, then compare them with the linked BeeTurbo ChunksBulkUploadHandler.cs for the proposed request format. The issue does not name Bee files or tests; first locate the upload entry points and tests. Done means a new, non-retro-compatible endpoint accepts multiple chunks in one request and validates each chunk’s integrity.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Summary
Current http and websocket upload APIs are heavily suboptimized. A better API to improve upload speed is necessary.
Motivation
Current POST /chunks API and websocket protocol work in the same way, sending one chunk at time, and waiting ack from node.
All the time the network is always waiting for something, or to receive new chunk data, or confirmation that data has been received. The network line is always empty of data.
Instead, to have a continuous stream of chunks is a really better solution.
Implementation
I've implemented an alternative rest API into an experimental reverse proxy project that I've called "BeeTurbo". It is putted directly in front of bee.
api implementation: https://github.com/Etherna/bee-turbo/blob/3516cf9f0b67af3ae58308d5f7433048fdbff5aa/src/BeeTurbo/Handlers/ChunksBulkUploadHandler.cs
Basically, it receives a set of chunks with a single POST request. Payload is composed as continuous list of chunks, where each one is described as:
- uint16 with chunk's size in byte
- chunk's payload, of the given size
- swarm hash, used only to check chunk's integrity
Drawbacks
The new api is not retro-compatible, a new endpoint has to be introduced
- Lenguaje dominante
- Go
- Estrellas
- 1.5k
- Forks
- 390
- Merge medio
- 2 d 11 h
- PR fusionados (30 d)
- 23
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de ethersphere/bee
-
Chequebook deployment uses a fixed 175,000 gas limit; it needs about 630,000 under Glamsterdam (live on Sepolia since 2026-10-06)Posiblemente ocupada @sbackend123 la tomó hace 8 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
ethersphere/bee#5650 · 1 asignado ·
Los mantenedores suelen responder en 2 días
-
Add a transaction inbox for outbound chain transactionsPosiblemente ocupada @sbackend123 la tomó hace 2 días. Abiertoseen
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
ethersphere/bee#5660 · 1 asignado ·
Los mantenedores suelen responder en 2 días
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
ethersphere/bee#5659 ·
Los mantenedores suelen responder en 2 días
-
accepted seen
Dificultad 4/5 3-5 días Aptitud para principiantes 40/100
ethersphere/bee#5648 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
pusher: chunksWorker deadlocks on a deferred chunk that fails IdentityAddress (send on nil op.Err), halting all push-syncPosiblemente ocupada @sbackend123 la tomó hace 10 días. Abiertoseen
Dificultad 3/5 1-2 días Aptitud para principiantes 75/100
ethersphere/bee#5641 · 1 asignado ·
Los mantenedores suelen responder en 2 días
Todos los issues de ethersphere/bee
Issues similares
-
Named Tuple element with a space in its name fails to parsePosiblemente ocupada @spicysharkco la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
ClickHouse/clickhouse-go#2073 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
ci: nothing regenerates the Go contract types, so a hand-edit to types.gen.go passesPosiblemente ocupada @shaiknoorullah la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
shaiknoorullah/hg-mono#993 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
type:bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
CarlosDanielDev/aiacc#78 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100