ipld / ipld/go-car

Indexes don't take advantage of performant structure

Open
#285 3 comments 0 reactions 0 assignees View on GitHub
P3
Dominant language
Go
Stars
175
Forks
54
Avg merge
6d 5h
Merged PRs (30d)
4

Description

The common form of [Index](https://github.com/ipld/go-car/blob/3c99491a50b5a4adfbb187b4dba07bb6b37fbb7d/v2/index/index.go#L57) introduced in Car V2 is to lay out the CIDs in the car in a sorted table that can be quickly walked through with a binary search.

We should attempt to optimize not fully [copying the index into memory](https://github.com/ipld/go-car/blob/master/v2/index/indexsorted.go#L72) when loading a car, and just doing spot reads from the index. This can for large cars avoid a copy of hundreds of megs per individual block read.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.