From: Patrick Steinhardt <ps@pks.im>
To: Justin Tobler <jltobler@gmail.com>
Cc: git@vger.kernel.org
Subject: Re: [PATCH 10/16] reftable/block: store block pointer in the block iterator
Date: Mon, 7 Apr 2025 14:31:04 +0200 [thread overview]
Message-ID: <Z_PFiKs9s3R9pVW6@pks.im> (raw)
In-Reply-To: <u4h53ukh5uxk4r4zy5iyniob4xf7qmtem7j2kp45sknfbljwuv@ntdojrh6aakb>
On Wed, Apr 02, 2025 at 03:56:30PM -0500, Justin Tobler wrote:
> On 25/03/31 10:41AM, Patrick Steinhardt wrote:
> > The block iterator requires access to a bunch of data from the
> > underlying `reftable_block` that it is iterating over. This data is
> > stored by copying over relevant data into a separate set of variables.
> > This has multiple downsides:
> >
> > - We require more storage space than necessary. This is more of a
> > theoretical issue as we shouldn't ever have many blocks.
> >
> > - We have to perform more bookkeeping, and the variable names are
> > inconsistent across the two data structures. This can lead to some
> > confusion.
> >
> > - The lifetime of the block iterator is tied to the block anyway, but
> > we hide that a bit by only storing pointers into the block.
>
> s/into/in/
I think "into" is right. What I want to say is that the pointers point
into the block itself, not that we're storing pointers in the block.
I'll add "pointing" to clarify.
Patrick
next prev parent reply other threads:[~2025-04-07 12:31 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-31 8:41 [PATCH 00/16] reftable: overhaul the API to expose access to blocks Patrick Steinhardt
2025-03-31 8:41 ` [PATCH 01/16] reftable: fix formatting of the license header Patrick Steinhardt
2025-03-31 8:41 ` [PATCH 02/16] reftable/reader: rename data structure to "table" Patrick Steinhardt
2025-03-31 8:41 ` [PATCH 03/16] reftable/blocksource: consolidate code into a single file Patrick Steinhardt
2025-04-02 17:42 ` Justin Tobler
2025-04-03 10:42 ` Karthik Nayak
2025-03-31 8:41 ` [PATCH 04/16] reftable/block: simplify how we track restart points Patrick Steinhardt
2025-04-02 18:08 ` Justin Tobler
2025-04-03 15:17 ` Karthik Nayak
2025-04-07 12:31 ` Patrick Steinhardt
2025-03-31 8:41 ` [PATCH 05/16] reftable/table: move reading block into block reader Patrick Steinhardt
2025-04-02 20:13 ` Justin Tobler
2025-04-07 12:31 ` Patrick Steinhardt
2025-03-31 8:41 ` [PATCH 06/16] reftable/block: rename `block` to `block_data` Patrick Steinhardt
2025-04-02 20:26 ` Justin Tobler
2025-04-07 12:30 ` Patrick Steinhardt
2025-03-31 8:41 ` [PATCH 07/16] reftable/block: rename `block_reader` to `reftable_block` Patrick Steinhardt
2025-04-02 20:39 ` Justin Tobler
2025-04-07 12:30 ` Patrick Steinhardt
2025-03-31 8:41 ` [PATCH 08/16] git-zlib: use `struct z_stream_s` instead of typedef Patrick Steinhardt
2025-03-31 8:41 ` [PATCH 09/16] reftable/block: create public interface for reading blocks Patrick Steinhardt
2025-03-31 8:41 ` [PATCH 10/16] reftable/block: store block pointer in the block iterator Patrick Steinhardt
2025-04-02 20:56 ` Justin Tobler
2025-04-07 12:31 ` Patrick Steinhardt [this message]
2025-03-31 8:41 ` [PATCH 11/16] reftable/block: make block iterators reseekable Patrick Steinhardt
2025-04-02 21:24 ` Justin Tobler
2025-04-07 12:30 ` Patrick Steinhardt
2025-03-31 8:41 ` [PATCH 12/16] reftable/block: expose a generic iterator over reftable records Patrick Steinhardt
2025-03-31 8:41 ` [PATCH 13/16] reftable/table: add `reftable_table` to the public interface Patrick Steinhardt
2025-03-31 8:41 ` [PATCH 14/16] reftable/table: introduce iterator for table blocks Patrick Steinhardt
2025-04-01 22:08 ` Junio C Hamano
2025-04-02 7:21 ` Patrick Steinhardt
2025-04-02 21:46 ` Justin Tobler
2025-04-07 12:31 ` Patrick Steinhardt
2025-03-31 8:41 ` [PATCH 15/16] reftable/constants: make block types part of the public interface Patrick Steinhardt
2025-03-31 8:41 ` [PATCH 16/16] reftable/table: move printing logic into test helper Patrick Steinhardt
2025-04-02 21:52 ` Justin Tobler
2025-04-07 13:16 ` [PATCH v2 00/16] reftable: overhaul the API to expose access to blocks Patrick Steinhardt
2025-04-07 13:16 ` [PATCH v2 01/16] reftable: fix formatting of the license header Patrick Steinhardt
2025-04-07 13:16 ` [PATCH v2 02/16] reftable/reader: rename data structure to "table" Patrick Steinhardt
2025-04-07 13:16 ` [PATCH v2 03/16] reftable/blocksource: consolidate code into a single file Patrick Steinhardt
2025-04-07 13:16 ` [PATCH v2 04/16] reftable/block: simplify how we track restart points Patrick Steinhardt
2025-04-07 13:16 ` [PATCH v2 05/16] reftable/table: move reading block into block reader Patrick Steinhardt
2025-04-07 13:16 ` [PATCH v2 06/16] reftable/block: rename `block` to `block_data` Patrick Steinhardt
2025-04-07 13:16 ` [PATCH v2 07/16] reftable/block: rename `block_reader` to `reftable_block` Patrick Steinhardt
2025-04-07 13:16 ` [PATCH v2 08/16] git-zlib: use `struct z_stream_s` instead of typedef Patrick Steinhardt
2025-04-07 13:16 ` [PATCH v2 09/16] reftable/block: create public interface for reading blocks Patrick Steinhardt
2025-04-07 13:16 ` [PATCH v2 10/16] reftable/block: store block pointer in the block iterator Patrick Steinhardt
2025-04-07 13:16 ` [PATCH v2 11/16] reftable/block: make block iterators reseekable Patrick Steinhardt
2025-04-07 13:16 ` [PATCH v2 12/16] reftable/block: expose a generic iterator over reftable records Patrick Steinhardt
2025-04-07 13:16 ` [PATCH v2 13/16] reftable/table: add `reftable_table` to the public interface Patrick Steinhardt
2025-04-07 13:16 ` [PATCH v2 14/16] reftable/table: introduce iterator for table blocks Patrick Steinhardt
2025-04-07 13:16 ` [PATCH v2 15/16] reftable/constants: make block types part of the public interface Patrick Steinhardt
2025-04-07 13:16 ` [PATCH v2 16/16] reftable/table: move printing logic into test helper Patrick Steinhardt
2025-04-14 19:42 ` [PATCH v2 00/16] reftable: overhaul the API to expose access to blocks Justin Tobler
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Z_PFiKs9s3R9pVW6@pks.im \
--to=ps@pks.im \
--cc=git@vger.kernel.org \
--cc=jltobler@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).