chitralverma commented on code in PR #7908:
URL: https://github.com/apache/opendal/pull/7908#discussion_r3568086046


##########
core/core/src/types/operator/registry.rs:
##########
@@ -71,8 +92,11 @@ impl OperatorRegistry {
             .get(scheme)
             .copied()
             .ok_or_else(|| {
+                let mut available: Vec<String> = 
self.schemes().into_iter().collect();
+                available.sort();
                 Error::new(ErrorKind::Unsupported, "scheme is not registered")
                     .with_context("scheme", scheme.to_string())

Review Comment:
   Good catch, fixed in fab712d. `load()` now collects the available schemes 
from the guard it already holds instead of calling `schemes()` (which would 
re-lock the non-reentrant mutex and deadlock). Verified with the added 
`unregistered_scheme_error_lists_available_schemes` test, which now completes 
in ~9ms instead of hanging.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to