Skip to content

Resumable Remote Compaction Blog Post#14759

Closed
hx235 wants to merge 1 commit into
facebook:mainfrom
hx235:rc_blog
Closed

Resumable Remote Compaction Blog Post#14759
hx235 wants to merge 1 commit into
facebook:mainfrom
hx235:rc_blog

Conversation

@hx235

@hx235 hx235 commented May 19, 2026

Copy link
Copy Markdown
Contributor

Summary: as titled

Test: local server rendering test
Screenshot 2026-05-19 at 2 18 41 PM
Screenshot 2026-05-19 at 2 18 59 PM
Screenshot 2026-05-19 at 2 19 20 PM

@meta-cla meta-cla Bot added the CLA Signed label May 19, 2026
@meta-codesync

meta-codesync Bot commented May 19, 2026

Copy link
Copy Markdown

@hx235 has imported this pull request. If you are a Meta employee, you can view this in D105665739.

@hx235 hx235 requested a review from jaykorean May 19, 2026 06:12
@github-actions

Copy link
Copy Markdown

✅ clang-tidy: No findings on changed lines

Completed in 0.0s.

@github-actions

github-actions Bot commented May 19, 2026

Copy link
Copy Markdown

Codex Code Review - OBSOLETE

Superseded by a newer AI review. Expand to see the original review.

🟡 Codex Code Review

Auto-triggered after CI passed — reviewing commit eb97eea


Codex review failed before producing findings.

WARNING: proceeding, even though we could not update PATH: Refusing to create helper binaries under temporary dir "/tmp" (codex_home: AbsolutePathBuf("/tmp/codex-home"))
error: the argument '--base <BRANCH>' cannot be used with '[PROMPT]'

Usage: codex exec review --commit <SHA> --base <BRANCH> --title <TITLE> --model <MODEL> --config <key=value> --dangerously-bypass-approvals-and-sandbox --output-last-message <FILE> [PROMPT]

For more information, try '--help'.

ℹ️ About this response

Generated by Codex CLI.
Review methodology: claude_md/code_review.md

Limitations:

  • Codex may miss context from files not in the diff
  • Large PRs may be truncated
  • Always apply human judgment to AI suggestions

Commands:

  • /codex-review [context] — Request a code review
  • /codex-query <question> — Ask about the PR or codebase
@github-actions

github-actions Bot commented May 19, 2026

Copy link
Copy Markdown

Claude Code Review - OBSOLETE

Superseded by a newer AI review. Expand to see the original review.

✅ Claude Code Review

Auto-triggered after CI passed — reviewing commit eb97eea


Summary

Blog post introducing Resumable Remote Compaction. The content is accurate, well-structured, and the code example matches the actual API. Author is defined in authors.yml.

No high-severity findings.

Full review (click to expand)

Findings

🔴 HIGH

None.

🟡 MEDIUM

None.

🟢 LOW / NIT

L1. SVG id collision across the two SVGs — checkpointing-overview.svg and resume-flow.svg
  • Issue: Both SVGs define id="arrowhead" and id="shadow". If both SVGs are ever inlined into the same HTML page (e.g., via server-side includes or JavaScript injection rather than <img> tags), the duplicate IDs would cause the second SVG's markers/filters to silently reference the first SVG's definitions, potentially producing rendering artifacts.
  • Root cause: SVG id attributes are document-scoped. Using <img src="...svg"> isolates each SVG in its own document, so this is safe as long as the blog uses <img> (which the ![alt](/path) Markdown syntax does via Jekyll). This is a defensive nit only.
  • Suggested fix: No action required if images are served via <img> tags (the default for Markdown ![]()). If inlining is ever considered, prefix IDs (e.g., id="cp-arrowhead" / id="rf-arrowhead").
L2. Consider mentioning the paranoid_file_checks limitation
  • Issue: The allow_resumption option in options.h:3061-3062 documents an incompatibility: "Currently incompatible with paranoid_file_checks=true. The option is effectively disabled when paranoid_file_checks is enabled." The blog post does not mention this limitation.
  • Suggested fix: Consider adding a brief note in the "How to Enable It" section, e.g., "Note: resumption is currently incompatible with paranoid_file_checks=true."
L3. Long lines in the markdown source
  • Issue: Several paragraphs in the blog post are single very long lines (200+ characters). While this renders fine, it makes future diffs harder to read.
  • Suggested fix: Optional: wrap lines at ~80-100 characters. This is a style preference, not a correctness issue.

Cross-Component Analysis

Not applicable -- this PR contains only documentation (blog post and SVG images). No code, API, or configuration changes.

Positive Observations

  • The blog post is clear, well-structured, and appropriately scoped for an external audience.
  • The code example accurately reflects the actual OpenAndCompact API signature (db.h:317-321) and OpenAndCompactOptions struct (options.h:3024).
  • Author hx235 is properly defined in docs/_data/authors.yml:85-87.
  • The REMOTE_COMPACT_RESUMED_BYTES ticker referenced in the post exists in the codebase (statistics.h, statistics.cc).
  • SVG diagrams are clean, readable, and use appropriate visual hierarchy.
  • The frontmatter (layout: post, category: blog) matches the convention used by other blog posts (e.g., 2026-05-04-interpolation-search.markdown).

ℹ️ About this response

Generated by Claude Code.
Review methodology: claude_md/code_review.md

Limitations:

  • Claude may miss context from files not in the diff
  • Large PRs may be truncated
  • Always apply human judgment to AI suggestions

Commands:

  • /claude-review [context] — Request a code review
  • /claude-query <question> — Ask about the PR or codebase

@jaykorean jaykorean left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you! 👍

@meta-codesync

meta-codesync Bot commented May 19, 2026

Copy link
Copy Markdown

@hx235 has imported this pull request. If you are a Meta employee, you can view this in D105665739.

@meta-codesync

meta-codesync Bot commented May 19, 2026

Copy link
Copy Markdown

@hx235 merged this pull request in 367f2b0.

@github-actions

Copy link
Copy Markdown

🟡 Codex Code Review

Auto-triggered after CI passed — reviewing commit 3d8a614


Codex review failed before producing findings.

WARNING: proceeding, even though we could not update PATH: Refusing to create helper binaries under temporary dir "/tmp" (codex_home: AbsolutePathBuf("/tmp/codex-home"))
error: the argument '--base <BRANCH>' cannot be used with '[PROMPT]'

Usage: codex exec review --commit <SHA> --base <BRANCH> --title <TITLE> --model <MODEL> --config <key=value> --dangerously-bypass-approvals-and-sandbox --output-last-message <FILE> [PROMPT]

For more information, try '--help'.

ℹ️ About this response

Generated by Codex CLI.
Review methodology: claude_md/code_review.md

Limitations:

  • Codex may miss context from files not in the diff
  • Large PRs may be truncated
  • Always apply human judgment to AI suggestions

Commands:

  • /codex-review [context] — Request a code review
  • /codex-query <question> — Ask about the PR or codebase
@github-actions

Copy link
Copy Markdown

✅ Claude Code Review

Auto-triggered after CI passed — reviewing commit 3d8a614


Summary

This PR adds a blog post describing the Resumable Remote Compaction feature, with two SVG diagrams. No code changes. The post is well-written, the author (hx235) is defined in authors.yml, and the front matter follows existing conventions. No high-severity issues.

High-severity findings (0):
No high-severity findings.

Full review (click to expand)

Findings

🔴 HIGH

None.

🟡 MEDIUM

None.

🟢 LOW / NIT

L1. Long lines in markdown — docs/_posts/2026-05-19-resumable-remote-compaction.markdown
  • Issue: Several paragraph lines exceed 200+ characters. While not a hard requirement for blog posts, wrapping at ~80-100 characters improves diff readability for future edits.
  • Suggested fix: Optional -- wrap long paragraphs for easier future diffs.
L2. Image paths assume Jekyll serves from root — docs/_posts/2026-05-19-resumable-remote-compaction.markdown:22,28
  • Issue: Image references use absolute paths (/static/images/resumable-remote-compaction/...). This is consistent with how the RocksDB docs site works, but will not render in GitHub markdown preview. This matches existing convention in the repo so no change needed.
L3. Em dash character — docs/_posts/2026-05-19-resumable-remote-compaction.markdown:10
  • Issue: The line uses a Unicode em dash () in "long-running—sometimes". Per CLAUDE.md, non-ASCII characters in source files are rejected by make check-sources. However, this is a blog post markdown file, not C++ source, so check-sources likely does not apply.
  • Suggested fix: Verify make check-sources does not scan docs/_posts/. If it does, replace with --.

Positive Observations

  • Front matter (title, layout, author, category) is correct and follows existing blog post conventions.
  • Author hx235 is properly defined in docs/_data/authors.yml (line 85-87).
  • SVG diagrams are clean, self-contained, and use no external dependencies.
  • The blog post content is clear, well-structured, and provides a good high-level overview with a code example.

ℹ️ About this response

Generated by Claude Code.
Review methodology: claude_md/code_review.md

Limitations:

  • Claude may miss context from files not in the diff
  • Large PRs may be truncated
  • Always apply human judgment to AI suggestions

Commands:

  • /claude-review [context] — Request a code review
  • /claude-query <question> — Ask about the PR or codebase
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

3 participants