Skip to content

feat(s3tables): add compaction strategy to CompactionProperty#37493

Open
mgarbvs wants to merge 1 commit intoaws:mainfrom
mgarbvs:feat/s3tables-compaction-strategy
Open

feat(s3tables): add compaction strategy to CompactionProperty#37493
mgarbvs wants to merge 1 commit intoaws:mainfrom
mgarbvs:feat/s3tables-compaction-strategy

Conversation

@mgarbvs
Copy link
Copy Markdown
Contributor

@mgarbvs mgarbvs commented Apr 1, 2026

Description

Adds compaction strategy support to the S3 Tables L2 construct (@aws-cdk/aws-s3tables-alpha).

The S3 Tables API supports compaction strategies (auto, binpack, sort, z-order) but the CloudFormation L1 spec does not yet include the Strategy property in the Compaction definition. This PR adds L2 support using addPropertyOverride to bridge the gap until the L1 is updated.

Changes

  • New CompactionStrategy enum with values: AUTO, BINPACK, SORT, Z_ORDER
  • Optional strategy field on CompactionProperty interface
  • Uses addPropertyOverride("Compaction.Strategy", ...) since the L1 CFN spec does not yet include Strategy
  • 6 new unit tests covering all strategy values and optionality
  • Integration test updated with CompactionStrategy.BINPACK
  • Snapshot regenerated

Pre-submit checklist

  • Lerna build (jsii, eslint, awslint, pkglint): 0 errors
  • Rosetta extract: README samples compile
  • Unit tests: 218 passed, 8 suites
  • Lint: clean
  • Integration snapshots: 10/10 UNCHANGED

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license

Add CompactionStrategy enum (auto, binpack, sort, z-order) and optional
strategy field to the L2 CompactionProperty interface. Uses
addPropertyOverride since the L1 CFN spec does not yet include the
Strategy property in the Compaction definition.

Includes unit tests for all strategy values and optionality, and updates
the integ.table integration test with strategy configuration.
@github-actions github-actions bot added the beginning-contributor [Pilot] contributed between 0-2 PRs to the CDK label Apr 1, 2026
@aws-cdk-automation aws-cdk-automation requested a review from a team April 1, 2026 23:13
@github-actions github-actions bot added the p2 label Apr 1, 2026
Copy link
Copy Markdown
Collaborator

@aws-cdk-automation aws-cdk-automation left a comment

Choose a reason for hiding this comment

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

The pull request linter fails with the following errors:

❌ Features must contain a change to a README file.

If you believe this pull request should receive an exemption, please comment and provide a justification. A comment requesting an exemption should contain the text Exemption Request. Additionally, if clarification is needed, add Clarification Request to a comment.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 1, 2026

⚠️ Experimental Feature: This security report is currently in experimental phase. Results may include false positives and the rules are being actively refined.
This security report is NOT a review blocker. Please try merge from main to avoid findings unrelated to the PR.


TestsPassed ✅SkippedFailed
Security Guardian Results48 ran48 passed
TestResult
No test annotations available

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 1, 2026

⚠️ Experimental Feature: This security report is currently in experimental phase. Results may include false positives and the rules are being actively refined.
This security report is NOT a review blocker. Please try merge from main to avoid findings unrelated to the PR.


TestsPassed ✅SkippedFailed
Security Guardian Results with resolved templates48 ran48 passed
TestResult
No test annotations available

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

beginning-contributor [Pilot] contributed between 0-2 PRs to the CDK p2

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants