-
Notifications
You must be signed in to change notification settings - Fork 639
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix filtered subscription interval and extra checkpoint when transitioning to live #4023
Fix filtered subscription interval and extra checkpoint when transitioning to live #4023
Conversation
…nts-of-filtered-all-subscription-not-always-on Send checkpoints on correct interval after catching-up (DB-348)
Don't rely on CaughtUp message or on checkpoint when transitioning to live
DB-456 Send correct checkpoint when transitioning to live in 22.10
This is already fixed in master as part of the work that added the 'transitioned to live' message But in 22.10 we still send an incorrect checkpoint when grpc catchup subscriptions (probably: stream, all, allfiltered) transition to live, which if used will cause an event to be missed Probably fix in 21 as well if the same fix would work there (likely) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🚨 @YoEight Failed to create cherry Pick PR due to error:
RequestError [HttpError]: Merge conflict
at /home/runner/work/_actions/EventStore/Automations/master/cherry-pick-pr-for-label/node_modules/@octokit/request/dist-node/index.js:66:23
at processTicksAndRejections (node:internal/process/task_queues:96:5) {
status: 409,
headers: {
'access-control-allow-origin': '*',
'access-control-expose-headers': 'ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset',
connection: 'close',
'content-length': '112',
'content-security-policy': "default-src 'none'",
'content-type': 'application/json; charset=utf-8',
date: 'Wed, 01 Nov 2023 13:19:43 GMT',
'referrer-policy': 'origin-when-cross-origin, strict-origin-when-cross-origin',
server: 'GitHub.com',
'strict-transport-security': 'max-age=31536000; includeSubdomains; preload',
vary: 'Accept-Encoding, Accept, X-Requested-With',
'x-accepted-github-permissions': 'contents=write',
'x-content-type-options': 'nosniff',
'x-frame-options': 'deny',
'x-github-api-version-selected': '2022-11-28',
'x-github-media-type': 'github.v3; format=json',
'x-github-request-id': 'D45F:1336:3B2D483:78F4167:6542506F',
'x-ratelimit-limit': '1000',
'x-ratelimit-remaining': '984',
'x-ratelimit-reset': '1698848379',
'x-ratelimit-resource': 'core',
'x-ratelimit-used': '16',
'x-xss-protection': '0'
},
request: {
method: 'POST',
url: 'https://api.github.com/repos/EventStore/EventStore/merges',
headers: {
accept: 'application/vnd.github.v3+json',
'user-agent': 'octokit-core.js/3.3.2 Node.js/16.20.2 (linux; x64)',
authorization: 'token [REDACTED]',
'content-type': 'application/json; charset=utf-8'
},
body: '{"base":"cherry-pick-cherry-pick/4023/hayley-jean/db-456-subscription-checkpoint-release/oss-v21.10-78d350c5-ee87-4efc-bc9b-4273d3991b6f","commit_message":"Merge 99d2b6e89b4db51c183f2e0f95b1f26e6597cdd3 into cherry-pick-cherry-pick/4023/hayley-jean/db-456-subscription-checkpoint-release/oss-v21.10-78d350c5-ee87-4efc-bc9b-4273d3991b6f [skip ci]\\n\\n\\nskip-checks: true\\n","head":"99d2b6e89b4db51c183f2e0f95b1f26e6597cdd3"}',
request: { agent: [Agent], hook: [Function: bound bound register] }
},
documentation_url: 'https://docs.github.com/rest/branches/branches#merge-a-branch'
}
🚨👉 Check https://github.com/EventStore/EventStore/actions/runs/6720198339
Removed: Extra checkpoint when subscription to $all goes live.
Fixed: Checkpoints of filtered $all subscription not always send on correct interval.
This cherry-picks some fixes from PRs:
This fixes an issue in subscriptions where the subscription was sending an extra checkpoint when transitioning to live. This could cause an event to be missed if this checkpoint is then used as the position to subscribe from.