diff options
author | Nathan Whitaker <17734409+nathanwhit@users.noreply.github.com> | 2024-04-09 15:12:55 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-09 15:12:55 -0700 |
commit | f23155bca76b761632b10d37574fe4543cbe9a26 (patch) | |
tree | 1cb5b226cf3e2332096b63537468ae3336a4b556 /cli/integration_tests_runner.rs | |
parent | ecfc6b6413dcfbb490cd6677060d3fcf8870c8b6 (diff) |
perf(lsp): More granular locking of `FileSystemDocuments` (#23291)
Previously we locked the entire `FileSystemDocuments` even for lookups,
causing contention. This was particularly bad because some of the hot
ops (namely `op_resolve`) can end up hitting that lock under contention.
This PR replaces the mutex with synchronization internal to
`FileSystemDocuments` (an `AtomicBool` for the dirty flag, and then a
`DashMap` for the actual documents).
I need to think a bit more about whether or not this introduces any
problematic race conditions.
Diffstat (limited to 'cli/integration_tests_runner.rs')
0 files changed, 0 insertions, 0 deletions