René's URL Explorer Experiment


Title: fix(spinlock): bound OptionalSharedLockGuard spin in signal handler paths by jbachorik · Pull Request #572 · DataDog/java-profiler · GitHub

Open Graph Title: fix(spinlock): bound OptionalSharedLockGuard spin in signal handler paths by jbachorik · Pull Request #572 · DataDog/java-profiler

X Title: fix(spinlock): bound OptionalSharedLockGuard spin in signal handler paths by jbachorik · Pull Request #572 · DataDog/java-profiler

Description: Contribute to DataDog/java-profiler development by creating an account on GitHub.

Open Graph Description: What does this PR do?: OptionalSharedLockGuard previously used an unbounded tryLockShared spin loop that could stall indefinitely inside signal handlers under heavy reader CAS contention. This PR r...

X Description: What does this PR do?: OptionalSharedLockGuard previously used an unbounded tryLockShared spin loop that could stall indefinitely inside signal handlers under heavy reader CAS contention. This PR r...

Opengraph URL: https://github.com/DataDog/java-profiler/pull/572

X: @github

direct link

Domain: github.com

route-pattern/_view_fragments/voltron/pull_requests/show/:user_id/:repository/:id/pull_request_layout(.:format)
route-controllervoltron_pull_requests_fragments
route-actionpull_request_layout
fetch-noncev2:e40ab3ae-018a-29dc-ca6a-ea3198c44d17
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idECC8:C86CC:4122C9:5F1299:6A4E0555
html-safe-nonce2390336a6cf294b5c9b66455e6ad51888ea01627425bf7b1ab0ed64f54ed1730
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJFQ0M4OkM4NkNDOjQxMjJDOTo1RjEyOTk6NkE0RTA1NTUiLCJ2aXNpdG9yX2lkIjoiNzkwNjcwNjExMjc1NzIzNzA3NyIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmac22081fdeafaf155b3413221d690906046a04d26d060ec3a63bd0c48c5160165a
hovercard-subject-tagpull_request:3785837066
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///voltron/pull_requests_fragments/pull_request_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/voltron/pull_requests/show/DataDog/java-profiler/572/pull_request_layout
twitter:imagehttps://opengraph.githubassets.com/9e4e5de3c6eae8e79f9c0cee1d0f284c5b05f73b7ad2121ecd35a5464d43a397/DataDog/java-profiler/pull/572
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/9e4e5de3c6eae8e79f9c0cee1d0f284c5b05f73b7ad2121ecd35a5464d43a397/DataDog/java-profiler/pull/572
og:image:altWhat does this PR do?: OptionalSharedLockGuard previously used an unbounded tryLockShared spin loop that could stall indefinitely inside signal handlers under heavy reader CAS contention. This PR r...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernamejbachorik
hostnamegithub.com
expected-hostnamegithub.com
Nonedf0492960db29b4938cb72070351d6b1d0c6c0767b27ceb8394bbf4fcc0223c6
turbo-cache-controlno-cache
go-importgithub.com/DataDog/java-profiler git https://github.com/DataDog/java-profiler.git
octolytics-dimension-user_id365230
octolytics-dimension-user_loginDataDog
octolytics-dimension-repository_id585532470
octolytics-dimension-repository_nwoDataDog/java-profiler
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id585532470
octolytics-dimension-repository_network_root_nwoDataDog/java-profiler
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release52bde38e24398476f8eb1e0760c81346c6a00812
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/DataDog/java-profiler/pull/572#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2FDataDog%2Fjava-profiler%2Fpull%2F572
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2FDataDog%2Fjava-profiler%2Fpull%2F572
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fpull_requests_fragments%2Fpull_request_layout&source=header-repo&source_repo=DataDog%2Fjava-profiler
Reloadhttps://github.com/DataDog/java-profiler/pull/572
Reloadhttps://github.com/DataDog/java-profiler/pull/572
Reloadhttps://github.com/DataDog/java-profiler/pull/572
Please reload this pagehttps://github.com/DataDog/java-profiler/pull/572
DataDog https://github.com/DataDog
java-profilerhttps://github.com/DataDog/java-profiler
Notifications https://github.com/login?return_to=%2FDataDog%2Fjava-profiler
Fork 12 https://github.com/login?return_to=%2FDataDog%2Fjava-profiler
Star 32 https://github.com/login?return_to=%2FDataDog%2Fjava-profiler
Code https://github.com/DataDog/java-profiler
Issues 8 https://github.com/DataDog/java-profiler/issues
Pull requests 14 https://github.com/DataDog/java-profiler/pulls
Actions https://github.com/DataDog/java-profiler/actions
Security and quality 0 https://github.com/DataDog/java-profiler/security
Insights https://github.com/DataDog/java-profiler/pulse
Code https://github.com/DataDog/java-profiler
Issues https://github.com/DataDog/java-profiler/issues
Pull requests https://github.com/DataDog/java-profiler/pulls
Actions https://github.com/DataDog/java-profiler/actions
Security and quality https://github.com/DataDog/java-profiler/security
Insights https://github.com/DataDog/java-profiler/pulse
jbachorikhttps://github.com/jbachorik
mainhttps://github.com/DataDog/java-profiler/tree/main
jb/bounded-optional-shared-lockhttps://github.com/DataDog/java-profiler/tree/jb/bounded-optional-shared-lock
Conversationhttps://github.com/DataDog/java-profiler/pull/572
Commits5 (5)https://github.com/DataDog/java-profiler/pull/572/commits
Checkshttps://github.com/DataDog/java-profiler/pull/572/checks
Files changedhttps://github.com/DataDog/java-profiler/pull/572/files
fix(spinlock): bound OptionalSharedLockGuard spin in signal handler pathshttps://github.com/DataDog/java-profiler/pull/572#top
jbachorikhttps://github.com/jbachorik
mainhttps://github.com/DataDog/java-profiler/tree/main
jb/bounded-optional-shared-lockhttps://github.com/DataDog/java-profiler/tree/jb/bounded-optional-shared-lock
https://github.com/jbachorik
jbachorikhttps://github.com/jbachorik
Jun 2, 2026https://github.com/DataDog/java-profiler/pull/572#issue-4568820502
Please reload this pagehttps://github.com/DataDog/java-profiler/pull/572
https://github.com/jbachorik
https://github.com/claude
fix(spinlock): bound shared lock acquisition in signal handler pathshttps://github.com/DataDog/java-profiler/pull/572/commits/cf9b249ff0fee1e0f8da5732eca103052b1874a6
cf9b249https://github.com/DataDog/java-profiler/pull/572/commits/cf9b249ff0fee1e0f8da5732eca103052b1874a6
https://github.com/jbachorik
jbachorikhttps://github.com/jbachorik
AI https://github.com/DataDog/java-profiler/issues?q=state%3Aopen%20label%3AAI
Jun 2, 2026https://github.com/DataDog/java-profiler/pull/572#event-26221084811
https://github.com/apps/datadog-official
Sign in to viewhttps://github.com/login?return_to=https%3A%2F%2Fgithub.com%2FDataDog%2Fjava-profiler%2Fpull%2F572
https://github.com/apps/dd-octo-sts
dd-octo-stshttps://github.com/apps/dd-octo-sts
Jun 2, 2026https://github.com/DataDog/java-profiler/pull/572#issuecomment-4599169642
Please reload this pagehttps://github.com/DataDog/java-profiler/pull/572
#27124487990https://github.com/DataDog/java-profiler/actions/runs/27124487990
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910795
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910776
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910598
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910744
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910626
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910565
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910666
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910712
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910670
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910645
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910567
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910866
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910628
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910700
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910582
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910705
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910688
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910821
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910583
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910579
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910694
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910761
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910713
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910770
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910606
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910572
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910698
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910727
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910723
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910806
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910657
https://github.com/DataDog/java-profiler/actions/runs/27124487990/job/80049910879
Please reload this pagehttps://github.com/DataDog/java-profiler/pull/572
https://github.com/jbachorik
https://github.com/claude
fix(spinlock): use atomic loads in unlock/unlockShared assertshttps://github.com/DataDog/java-profiler/pull/572/commits/f3ad4d1b91282243d3e424ca190b6daf1da151ec
f3ad4d1https://github.com/DataDog/java-profiler/pull/572/commits/f3ad4d1b91282243d3e424ca190b6daf1da151ec
https://github.com/jbachorik
jbachorikhttps://github.com/jbachorik
June 2, 2026 06:32https://github.com/DataDog/java-profiler/pull/572#event-26222397612
https://github.com/jbachorik
jbachorikhttps://github.com/jbachorik
code ownerhttps://github.com/DataDog/java-profiler/blob/8c433d53d616bab99360694917c60229e77b1cfd/.github/CODEOWNERS#L4
June 2, 2026 06:32https://github.com/DataDog/java-profiler/pull/572#event-26222398118
https://github.com/apps/chatgpt-codex-connector
chatgpt-codex-connectorhttps://github.com/apps/chatgpt-codex-connector
Jun 2, 2026 https://github.com/DataDog/java-profiler/pull/572#pullrequestreview-4407162302
View reviewed changes https://github.com/DataDog/java-profiler/pull/572/files/f3ad4d1b91282243d3e424ca190b6daf1da151ec
chatgpt-codex-connectorhttps://github.com/apps/chatgpt-codex-connector
https://github.com/DataDog/java-profiler/pull/572#pullrequestreview-4407162302
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Your team has set up Codex to review pull requests in this repohttps://chatgpt.com/codex/cloud/settings/general
@codexhttps://github.com/codex
@codexhttps://github.com/codex
Please reload this pagehttps://github.com/DataDog/java-profiler/pull/572
ddprof-lib/src/main/cpp/spinLock.hhttps://github.com/DataDog/java-profiler/pull/572/files/f3ad4d1b91282243d3e424ca190b6daf1da151ec#diff-a9c1db533807551ee1068a5dcb797e9fb11e8331c7876c824ae4bffff15e0741
Please reload this pagehttps://github.com/DataDog/java-profiler/pull/572
https://github.com/jbachorik
https://github.com/claude
fix(jfr): count samples dropped when rec_lock acquisition failshttps://github.com/DataDog/java-profiler/pull/572/commits/444462b66aafaf46f69c3aa3adcd0b4efbb0bd37
444462bhttps://github.com/DataDog/java-profiler/pull/572/commits/444462b66aafaf46f69c3aa3adcd0b4efbb0bd37
https://github.com/kaahos
kaahoshttps://github.com/kaahos
Jun 5, 2026 https://github.com/DataDog/java-profiler/pull/572#pullrequestreview-4436225572
View reviewed changes https://github.com/DataDog/java-profiler/pull/572/files/444462b66aafaf46f69c3aa3adcd0b4efbb0bd37
kaahoshttps://github.com/kaahos
https://github.com/DataDog/java-profiler/pull/572#pullrequestreview-4436225572
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
profiler.cpp:1485https://github.com/DataDog/java-profiler/blob/444462b66aafaf46f69c3aa3adcd0b4efbb0bd37/ddprof-lib/src/main/cpp/profiler.cpp#L1485
Please reload this pagehttps://github.com/DataDog/java-profiler/pull/572
ddprof-lib/src/main/cpp/flightRecorder.cpphttps://github.com/DataDog/java-profiler/pull/572/files/444462b66aafaf46f69c3aa3adcd0b4efbb0bd37#diff-9a6a575bc5c4e9a0980683bb7bb698b45a23bdb480b6a250ae1a2a8eb9374b01
Please reload this pagehttps://github.com/DataDog/java-profiler/pull/572
jbachorikhttps://github.com/jbachorik
June 8, 2026 09:49https://github.com/DataDog/java-profiler/pull/572#commits-pushed-d3ffbb3
https://github.com/jbachorik
https://github.com/claude
refactor: collapse JVMTI_STACKS_DROPPED_REC_LOCK into SAMPLES_DROPPED…https://github.com/DataDog/java-profiler/pull/572/commits/d3ffbb3be7e79d3b4b61dafc5462f762e427fd44
d3ffbb3https://github.com/DataDog/java-profiler/pull/572/commits/d3ffbb3be7e79d3b4b61dafc5462f762e427fd44
https://github.com/jbachorik
Merge branch 'main' into jb/bounded-optional-shared-lockhttps://github.com/DataDog/java-profiler/pull/572/commits/96dcc03f90c04f9b9485d475c47b98205c4e64bd
96dcc03https://github.com/DataDog/java-profiler/pull/572/commits/96dcc03f90c04f9b9485d475c47b98205c4e64bd
https://github.com/jbachorik
jbachorikhttps://github.com/jbachorik
40be0dchttps://github.com/DataDog/java-profiler/commit/40be0dcef286f8dc72d090e73f1520cab52ff83d
Jun 8, 2026https://github.com/DataDog/java-profiler/pull/572#event-26468867751
Please reload this pagehttps://github.com/DataDog/java-profiler/pull/572
https://github.com/jbachorik
jbachorikhttps://github.com/jbachorik
June 8, 2026 11:56https://github.com/DataDog/java-profiler/pull/572#event-26468869073
https://github.com/apps/github-actions
github-actionshttps://github.com/apps/github-actions
1.45.0https://github.com/DataDog/java-profiler/milestone/53
Jun 8, 2026https://github.com/DataDog/java-profiler/pull/572#event-26468874171
https://github.co/hiddenchars
https://github.com/DataDog/java-profiler/pull/{{ revealButtonHref }}
Sign up for freehttps://github.com/join?source=comment-repo
Sign in to commenthttps://github.com/login?return_to=https%3A%2F%2Fgithub.com%2FDataDog%2Fjava-profiler%2Fpull%2F572
https://github.com/apps/chatgpt-codex-connector
chatgpt-codex-connector[bot] https://github.com/apps/chatgpt-codex-connector
https://github.com/DataDog/java-profiler/pull/572/files/f3ad4d1b91282243d3e424ca190b6daf1da151ec
https://github.com/kaahos
kaahos https://github.com/kaahos
https://github.com/DataDog/java-profiler/pull/572/files/444462b66aafaf46f69c3aa3adcd0b4efbb0bd37
AI https://github.com/DataDog/java-profiler/issues?q=state%3Aopen%20label%3AAI
1.45.0 https://github.com/DataDog/java-profiler/milestone/53
Please reload this pagehttps://github.com/DataDog/java-profiler/pull/572
https://github.com/jbachorik
https://github.com/kaahos
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.