Skip to content

Feature request: Priming for powertools-validation #2005

Closed

Description

@phipag

Use case

PLEASE READ: Priming documentation: https://github.com/aws-powertools/powertools-lambda-java/blob/main/Priming.md

Parent issue: #1588
Sample PR: #1861

Java CRaC can be used to prime an application by implementing beforeCheckpoint() and afterRestore() hooks in selected classes. When used with AWS Snapstart, the beforeCheckpoint() hook runs before the memory snapshot is taken. This behavior can be leveraged to further reduce restore durations by pre-loading classes and calling commonly used code to incorporate this into the memory snapshot.

  1. Class-preloading / automatic priming: Based on a statically generated classesloaded.txt file, loads classes used at runtime into memory
  2. Invoke priming: Execute commonly used code e.g. to initialize all reflectively access objects, warm up caches, TCP connection pools etc. Common examples include performing "dry" AWS SDK calls (not impacting production resources) or performing JSON serialization/deserialization.

The goal of this issue is to implementing priming techniques for the powertools-validation module.

Solution/User Experience

Implement priming based on Priming Documentation (feel free to update documentation and suggest improvements):

  • Automatic priming
  • Invoke priming

Alternative solutions

Acknowledgment

Future readers

Please react with 👍 and your use case to help us understand customer demand.

Activity

  1. moved this from Triage to Backlog in Powertools for AWS Lambda (Java)on Aug 4, 2025
  2. kjswaruph commented on Aug 24, 2025

    @kjswaruph
    Contributor

    Hello, Can I take up this issue?

  3. phipag commented on Aug 24, 2025

    @phipag
    ContributorAuthor

    Hi @kjswaruph, of course. I assigned the issue to you. Please let me know if you have any questions.

  4. moved this from Backlog to Working on it in Powertools for AWS Lambda (Java)on Aug 24, 2025
  5. kjswaruph commented on Aug 25, 2025

    @kjswaruph
    Contributor

    Hello @phipag, Thank you for assigning me this issue. I have created pr #2081 for this issue. Please review it when you have time and let me know if any changes are required. Looking forward for your feedback.

  6. phipag commented on Aug 27, 2025

    @phipag
    ContributorAuthor

    Thank for working on this. Both automatic and manual priming was implemented by #2081 !

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

Metadata

Metadata

Assignees

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions