Skip to content

Add endpoint to return latest event record time - #6986

Open
mrdziuban wants to merge 2 commits into
canton-network:mainfrom
obsidiansystems:mrdziuban/latest-event-record-time/3071
Open

Add endpoint to return latest event record time#6986
mrdziuban wants to merge 2 commits into
canton-network:mainfrom
obsidiansystems:mrdziuban/latest-event-record-time/3071

Conversation

@mrdziuban

Copy link
Copy Markdown
Contributor

Fixes #3071

Adds a new /v0/events/latest-record-time endpoint that finds the latest record time for which /v0/events will return events. ScanEventStore#getLatestEventRecordTime reuses resolveCurrentMigrationCap to ensure it has the same behavior as getEvents.

I confirmed that the /v0/events/latest-record-time path won't conflict with the parameterized /v0/events/{update_id} path -- the Pekko generator for guardrail sorts routes so all static paths appear before any parameterized paths.

Pull Request Checklist

Cluster Testing

  • If a cluster test is required, comment /cluster_test on this PR to request it, and ping someone with access to the DA-internal system to approve it.
  • If an upgrade test is required, comment /upgrade_test on this PR to request it, and ping someone with access to the DA-internal system to approve it.
  • If a hard-migration test is required (from the latest release), comment /hdm_test on this PR to request it, and ping someone with access to the DA-internal system to approve it.
  • If a logical synchronizer upgrade test is required (from canton-3.5), comment /lsu_test on this PR to request it, and ping someone with access to the DA-internal system to approve it.

PR Guidelines

  • Include any change that might be observable by our partners or affect their deployment in the release notes.
  • Specify fixed issues with Fixes #n, and mention issues worked on using #n
  • Include a screenshot for frontend-related PRs - see README or use your favorite screenshot tool

Merge Guidelines

  • Make the git commit message look sensible when squash-merging on GitHub (most likely: just copy your PR description).

Fixes canton-network#3071

Adds a new `/v0/events/latest-record-time` endpoint that finds the latest record time for which `/v0/events` will return events. `ScanEventStore#getLatestEventRecordTime` reuses `resolveCurrentMigrationCap` to ensure it has the same behavior as `getEvents`.

Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
…ring`.

Sphinx doesn't like the plain `type: string`, plus this aligns with the convention used for all other endpoints.

Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
"getLatestEventRecordTime returns None when there are no events" in {
for {
ctx <- newEventStore()
latest <- ctx.eventStore.getLatestEventRecordTime(domainMigrationId)(traceContext)

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.

perhaps a test with just an insertUpdate could be added.

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.

Create an endpoint that returns the latest record time for which /v0/events will be able to return events.

6 participants