recoverBlobs: Cover the 0 < blobsCount < fieldparams.MaxBlobsPerBlock case. (#14066)

* `recoverBlobs`: Cover the `0 < blobsCount < fieldparams.MaxBlobsPerBlock` case.

* Fix Nishant's comment.
This commit is contained in:
Manu NALEPA
2024-06-04 11:08:02 +02:00
committed by nisdas
parent e99ef55928
commit f7a4636c40

View File

@@ -23,9 +23,23 @@ func recoverBlobs(
columnsCount int,
blockRoot [fieldparams.RootLength]byte,
) ([]cKzg4844.Blob, error) {
recoveredBlobs := make([]cKzg4844.Blob, 0, fieldparams.MaxBlobsPerBlock)
if len(dataColumnSideCars) == 0 {
return nil, errors.New("no data column sidecars")
}
for blobIndex := 0; blobIndex < fieldparams.MaxBlobsPerBlock; blobIndex++ {
// Check if all columns have the same length.
blobCount := len(dataColumnSideCars[0].DataColumn)
for _, sidecar := range dataColumnSideCars {
length := len(sidecar.DataColumn)
if length != blobCount {
return nil, errors.New("columns do not have the same length")
}
}
recoveredBlobs := make([]cKzg4844.Blob, 0, blobCount)
for blobIndex := 0; blobIndex < blobCount; blobIndex++ {
start := time.Now()
cellsId := make([]uint64, 0, columnsCount)