Skip to content
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 server crash when multiple threads call IODispatcher #3270

Merged
merged 1 commit into from
Nov 8, 2021

Conversation

jageall
Copy link
Contributor

@jageall jageall commented Nov 8, 2021

Fixed: Exception in scheduled message callback crashes server
Fixed: IODispatcher is now threadsafe for request tracking

RemovePendingRequest(corrId);
if (!_pendingReads.IsRegistered(corrId)) return;
_pendingReads.Remove(corrId);
_requestTracker.RemovePendingRead(corrId);
Copy link
Contributor

Choose a reason for hiding this comment

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

need if here too

@timothycoleman
Copy link
Contributor

i see you added the if's for the happy paths :)
just one more left which i commented above

@timothycoleman timothycoleman merged commit ad70736 into master Nov 8, 2021
@timothycoleman timothycoleman deleted the jageall/timer-cockroach branch November 8, 2021 21:23
Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

🚨 @timothycoleman 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 (internal/process/task_queues.js:93:5) {
 name: 'HttpError',
 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, Deprecation, Sunset',
   connection: 'close',
   'content-length': '110',
   'content-security-policy': "default-src 'none'",
   'content-type': 'application/json; charset=utf-8',
   date: 'Mon, 08 Nov 2021 21:23:25 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-content-type-options': 'nosniff',
   'x-frame-options': 'deny',
   'x-github-media-type': 'github.v3; format=json',
   'x-github-request-id': '044B:4DD3:1C76E4:3DEB19:6189954D',
   'x-ratelimit-limit': '1000',
   'x-ratelimit-remaining': '990',
   'x-ratelimit-reset': '1636410202',
   'x-ratelimit-resource': 'core',
   'x-ratelimit-used': '10',
   '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/12.13.1 (linux; x64)',
     authorization: 'token [REDACTED]',
     'content-type': 'application/json; charset=utf-8'
   },
   body: '{"base":"cherry-pick-cherry-pick/3270/jageall/timer-cockroach-release/oss-v20.10-53b2ccf6-4f2a-47a6-8b0e-e330f27447d3","commit_message":"Merge 41b4e0487a8aa7b038b8e9114946d112e95ec36d into cherry-pick-cherry-pick/3270/jageall/timer-cockroach-release/oss-v20.10-53b2ccf6-4f2a-47a6-8b0e-e330f27447d3 [skip ci]\\n\\n\\nskip-checks: true\\n","head":"41b4e0487a8aa7b038b8e9114946d112e95ec36d"}',
   request: { agent: [Agent], hook: [Function: bound bound register] }
 },
 documentation_url: 'https://docs.github.com/rest/reference/repos#merge-a-branch'
}

🚨👉 Check https://github.com/EventStore/EventStore/actions/runs/1436769477

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport cherry-pick:release/oss-v20.10 Cherry picks PR into v20.10 release branch
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants