Skip to content

Conversation

@lukevalenta
Copy link
Contributor

@lukevalenta lukevalenta commented Jul 16, 2025

The tlog-tiles and static-ct-api specs allow partial tiles to be deleted
when the corresponding full tile is available. This helps to reduce R2
storage costs, but will incur extra cost for the R2 list and delete
operations.

  • Add a Cleaner Durable Object, which iterates over a log and for each
    full tile available in the public bucket, lists and deletes any
    corresponding partial tiles. The cleaner tracks subrequests to prevent
    an alarm from exceeding the 1000 subrequests limit per invocation.
  • (bonus) Lays the groundwork for implementing a tlog-witness or
    tlog-mirror as a service that periodically updates based on a target
    log's latest checkpoint.

Other changes:

  • Update to worker 0.6.1 for R2 delete_multiple support and
    PartialEq support for ObjectIds.
  • Move more Durable Object intialization logic from the MTC and CT
    applications to the generic_log_worker crate to deduplicate code.
  • Fix tree time metric to seconds.

@lukevalenta lukevalenta force-pushed the lvalenta/partial-tile-cleanup branch 6 times, most recently from 3a232c6 to 028cae4 Compare July 24, 2025 18:49
@lukevalenta lukevalenta changed the title WIP add partial tile cleanup utility Add partial tile cleanup utility, fixes #1 Jul 24, 2025
@lukevalenta lukevalenta requested review from bwesterb and cjpatton July 24, 2025 18:52
@lukevalenta lukevalenta changed the base branch from main to lvalenta/ccadb-roots July 24, 2025 18:53
@lukevalenta lukevalenta force-pushed the lvalenta/partial-tile-cleanup branch 5 times, most recently from bea1f3e to 6b3a13f Compare July 25, 2025 11:18
@lukevalenta lukevalenta marked this pull request as ready for review July 25, 2025 11:45
@lukevalenta lukevalenta force-pushed the lvalenta/ccadb-roots branch from 89438ca to 6239872 Compare July 25, 2025 13:28
@lukevalenta lukevalenta force-pushed the lvalenta/partial-tile-cleanup branch from 6b3a13f to bb8d9a3 Compare July 25, 2025 13:30
Base automatically changed from lvalenta/ccadb-roots to main July 25, 2025 14:21
The tlog-tiles and static-ct-api specs allow partial tiles to be deleted
when the corresponding full tile is available. This helps to reduce R2
storage costs, but will incur extra cost for the R2 list and delete
operations.

- Add a `Cleaner` Durable Object, which iterates over a log and for each
  full tile available in the public bucket, lists and deletes any
  corresponding partial tiles. The cleaner tracks subrequests to prevent
  an alarm from exceeding the 1000 subrequests limit per invocation.
- (bonus) Lays the groundwork for implementing a tlog-witness or
  tlog-mirror as a service that periodically updates based on a target
  log's latest checkpoint.

Other changes:
- Update to worker 0.6.1 for R2 `delete_multiple` support and
  `PartialEq` support for  ObjectIds.
- Move more Durable Object intialization logic from the MTC and CT
  applications to the `generic_log_worker` crate to deduplicate code.
- Fix tree time metric to seconds.
@lukevalenta lukevalenta force-pushed the lvalenta/partial-tile-cleanup branch from bb8d9a3 to d0dc09d Compare July 25, 2025 14:22
@bwesterb
Copy link
Member

bwesterb commented Jul 28, 2025

(This PR slipped through the cracks, feel free to ping me if you notice in the future.)

@lukevalenta lukevalenta merged commit 34aa7a4 into main Jul 28, 2025
1 check passed
@lukevalenta lukevalenta deleted the lvalenta/partial-tile-cleanup branch July 28, 2025 11:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants