JuliaComputing / gRPCClient.jl

A Julia gRPC Client
Other
48 stars 3 forks source link

concurrent use is flaky, add to readme #28

Closed tanmaykm closed 2 years ago

tanmaykm commented 2 years ago

Added an as of now experimental option to enable locking while using curl context concurrently. It can be switched on by passing true for the enable_shared_locks flag to gRPCController.

But concurrent use of gRPCClient is flaky, even with curl locks and particularly on Julia >= 1.7. The cause is unclear at this point. It could be something to do with libcurl, or the way we use libcurl, or something specific to the way libnghttp2 (that libcurl uses for HTTP2) works.

For the time being, I am adding this as a TODO item, and moving the async tests under a flag.

codecov-commenter commented 2 years ago

Codecov Report

Merging #28 (f547f83) into main (655c590) will decrease coverage by 4.22%. The diff coverage is 61.36%.

@@            Coverage Diff             @@
##             main      #28      +/-   ##
==========================================
- Coverage   95.55%   91.33%   -4.23%     
==========================================
  Files           5        5              
  Lines         270      323      +53     
==========================================
+ Hits          258      295      +37     
- Misses         12       28      +16     
Impacted Files Coverage Δ
src/gRPCClient.jl 100.00% <ø> (ø)
src/grpc.jl 90.62% <57.14%> (-4.12%) :arrow_down:
src/curl.jl 89.44% <62.16%> (-5.60%) :arrow_down:
src/generate.jl 95.58% <0.00%> (-1.14%) :arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 655c590...f547f83. Read the comment docs.