<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/reftable/blocksource.c, branch gitk-resize-error</title>
<subtitle>Fork of git SCM with my patches.</subtitle>
<id>http://git.kilabit.info/git/atom?h=gitk-resize-error</id>
<link rel='self' href='http://git.kilabit.info/git/atom?h=gitk-resize-error'/>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/'/>
<updated>2021-10-08T17:45:48Z</updated>
<entry>
<title>reftable: add blocksource, an abstraction for random access reads</title>
<updated>2021-10-08T17:45:48Z</updated>
<author>
<name>Han-Wen Nienhuys</name>
<email>hanwen@google.com</email>
</author>
<published>2021-10-07T20:25:01Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=1214aa841bc825c97541a68f397227cb2bfd3f3c'/>
<id>urn:sha1:1214aa841bc825c97541a68f397227cb2bfd3f3c</id>
<content type='text'>
The reftable format is usually used with files for storage. However, we abstract
away this using the blocksource data structure. This has two advantages:

* log blocks are zlib compressed, and handling them is simplified if we can
  discard byte segments from within the block layer.

* for unittests, it is useful to read and write in-memory. The blocksource
  allows us to abstract the data away from on-disk files.

Signed-off-by: Han-Wen Nienhuys &lt;hanwen@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
