Title: SUMMARY: ThreadSanitizer: lock-order-inversion (potential deadlock) sqlcipher/sqlite3.c:40233 in unixEnterMutex · Issue #582 · sqlcipher/sqlcipher · GitHub
Open Graph Title: SUMMARY: ThreadSanitizer: lock-order-inversion (potential deadlock) sqlcipher/sqlite3.c:40233 in unixEnterMutex · Issue #582 · sqlcipher/sqlcipher
X Title: SUMMARY: ThreadSanitizer: lock-order-inversion (potential deadlock) sqlcipher/sqlite3.c:40233 in unixEnterMutex · Issue #582 · sqlcipher/sqlcipher
Description: after upgrading to sqlcipher 4.12.0 i get this error when running a test program with TSAN test. it used to work fine for ages with lots of previous versions of sqlcipher. the last known working sqlcipher was 4.11.0 this is the test prog...
Open Graph Description: after upgrading to sqlcipher 4.12.0 i get this error when running a test program with TSAN test. it used to work fine for ages with lots of previous versions of sqlcipher. the last known working sq...
X Description: after upgrading to sqlcipher 4.12.0 i get this error when running a test program with TSAN test. it used to work fine for ages with lots of previous versions of sqlcipher. the last known working sq...
Opengraph URL: https://github.com/sqlcipher/sqlcipher/issues/582
X: @github
Domain: patch-diff.githubusercontent.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"SUMMARY: ThreadSanitizer: lock-order-inversion (potential deadlock) sqlcipher/sqlite3.c:40233 in unixEnterMutex","articleBody":"after upgrading to sqlcipher 4.12.0 i get this error when running a test program with TSAN test.\nit used to work fine for ages with lots of previous versions of sqlcipher.\nthe last known working sqlcipher was 4.11.0\n\nthis is the test program: https://github.com/zoff99/iocipher_pack/blob/master/002_src_libsqlfs/tests/common.c\n\nthis is the CI run thats showing the issue: https://github.com/zoff99/iocipher_pack/actions/runs/20169599733/job/57901559928\n\n```\n2025-12-12T14:38:34.6356156Z WARNING: ThreadSanitizer: lock-order-inversion (potential deadlock) (pid=110497)\n2025-12-12T14:38:34.6356333Z Cycle in lock order graph: M63 (0x7b0c00005c48) =\u003e M62 (0x559037654d28) =\u003e M63\n2025-12-12T14:38:34.6356339Z \n2025-12-12T14:38:34.6356485Z Mutex M62 acquired here while holding mutex M63 in main thread:\n2025-12-12T14:38:34.6356941Z #0 pthread_mutex_lock ../../../../src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:4240 (libtsan.so.0+0x53908)\n2025-12-12T14:38:34.6357096Z #1 unixEnterMutex sqlcipher/sqlite3.c:40233 (c_api+0xbe49e)\n2025-12-12T14:38:34.6357255Z #2 unixIsSharingShmNode sqlcipher/sqlite3.c:44012 (c_api+0xbe49e)\n2025-12-12T14:38:34.6357368Z #3 unixLock sqlcipher/sqlite3.c:41363 (c_api+0xbe49e)\n2025-12-12T14:38:34.6357476Z #4 unixLock sqlcipher/sqlite3.c:41198 (c_api+0xbe49e)\n2025-12-12T14:38:34.6357565Z #5 \u003cnull\u003e \u003cnull\u003e (libc.so.6+0x29d8f)\n2025-12-12T14:38:34.6357569Z \n2025-12-12T14:38:34.6357784Z Hint: use TSAN_OPTIONS=second_deadlock_stack=1 to get more informative warning message\n2025-12-12T14:38:34.6357907Z \n2025-12-12T14:38:34.6358055Z Mutex M63 acquired here while holding mutex M62 in main thread:\n2025-12-12T14:38:34.6358448Z #0 pthread_mutex_lock ../../../../src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:4240 (libtsan.so.0+0x53908)\n2025-12-12T14:38:34.6358565Z #1 unixClose sqlcipher/sqlite3.c:41682 (c_api+0xeef46)\n2025-12-12T14:38:34.6358646Z #2 \u003cnull\u003e \u003cnull\u003e (libc.so.6+0x29d8f)\n2025-12-12T14:38:34.6358657Z \n2025-12-12T14:38:34.6359023Z SUMMARY: ThreadSanitizer: lock-order-inversion (potential deadlock) sqlcipher/sqlite3.c:40233 in unixEnterMutex\n2025-12-12T14:38:34.6359088Z ==================\n2025-12-12T14:38:34.6359177Z ThreadSanitizer: reported 1 warnings\n```","author":{"url":"https://github.com/zoff99","@type":"Person","name":"zoff99"},"datePublished":"2025-12-12T15:44:24.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":3},"url":"https://github.com/582/sqlcipher/issues/582"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:1a9f51cc-d979-9abc-8169-71f61edf63b9 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | ACC6:380745:E09B:11678:69709572 |
| html-safe-nonce | 7436f85c7f6f65971c82f8df80049fd4426d05ab1d6c9deeb98fe75bfe6235cc |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJBQ0M2OjM4MDc0NTpFMDlCOjExNjc4OjY5NzA5NTcyIiwidmlzaXRvcl9pZCI6IjQwNzE1MzAxODQwNjQ0MDY4OTgiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | 36c968c44c4f50cf0f8a88a72ac0d1d4b16adaa6e54368d8c04f0f058a5ce5f0 |
| hovercard-subject-tag | issue:3723886374 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/sqlcipher/sqlcipher/582/issue_layout |
| twitter:image | https://opengraph.githubassets.com/caad21722733f0195e1d389b62b4304aac8a4f66d3596685ba4a587392c57383/sqlcipher/sqlcipher/issues/582 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/caad21722733f0195e1d389b62b4304aac8a4f66d3596685ba4a587392c57383/sqlcipher/sqlcipher/issues/582 |
| og:image:alt | after upgrading to sqlcipher 4.12.0 i get this error when running a test program with TSAN test. it used to work fine for ages with lots of previous versions of sqlcipher. the last known working sq... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | zoff99 |
| hostname | github.com |
| expected-hostname | github.com |
| None | 9920a62ba22d06470388e2904804fb7e5ec51c9e35f81784e9191394c74b2bd2 |
| turbo-cache-control | no-preview |
| go-import | github.com/sqlcipher/sqlcipher git https://github.com/sqlcipher/sqlcipher.git |
| octolytics-dimension-user_id | 649049 |
| octolytics-dimension-user_login | sqlcipher |
| octolytics-dimension-repository_id | 38617 |
| octolytics-dimension-repository_nwo | sqlcipher/sqlcipher |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 38617 |
| octolytics-dimension-repository_network_root_nwo | sqlcipher/sqlcipher |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 7d6181066430cc06553c8396ca201e194ae33cb9 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width