Comments (5)
@sarmut
I agree with the return type not being void
for methods like PutAsync
. I will change the same and it won't be a breaking change as well for similar return types.
However , when you say return whatever the underlying async response comes from KVClient's corresponding async methods
, methods like GetAsync
don't return the whole of the output but return Task<string>
. Can you provide a specific use case when you would like to use the whole response not just the Get
value.
from dotnet-etcd.
@shubhamranjan
There are situations the whole response is needed, for example, logging. I need to log the certain pieces from response header to analyze later. So it'd be helpful not to throw away the underlying response object.
One more request. Is 'ResetConnection()' needed? Scenarios is that if I share this client object with multiple threads/async tasks, if one task fails then all the other tasks connected to that particular client also will fail because the underlying channel is destroyed.
BTW, Thank you very much for doing this. I very much appreciate it.
from dotnet-etcd.
- Noted.I will try to provide the response object maintaining backward compatibility.
- I am aware of this. Unable to get something like ConnectionException on disconnect, hence added that in the universal exception catch block to reset connection.If connection fails, all subsequently calls will fail.To avoid a scenario for shared objects, I will try to look for more improvements.
from dotnet-etcd.
Update: Will patch this in the upcoming week.
from dotnet-etcd.
Changes merged in master.To be released with v1.1.0
from dotnet-etcd.
Related Issues (20)
- Legacy Grpc.Core fails on Linux Alpine container HOT 8
- Support IConfiguration and DI
- Exception type when cancelling async operations HOT 4
- Prefix request with Limit HOT 2
- How to read past version of keys HOT 2
- add separated community contrib project or repo HOT 1
- GrpcChannelOptions parameter configuration HOT 2
- Lock permission denied HOT 5
- Possible NullReference HOT 3
- Add optional ExceptionHandler in LeaseKeepAlive HOT 1
- Invalid port specified HOT 1
- method name is misspelled HOT 1
- Cannot use constructor EtcdClient(string) anymore HOT 1
- Exception while opening a watch on etcd grpc-proxy
- Watch stops listening to changes after server restart HOT 3
- IClusterProvider I need to implement this interface. HOT 2
- Failing to initiate with ambiguous and crashing with this exception 6.0.2-beta
- lock error HOT 2
- missing Election request HOT 1
- Switch to license expression
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dotnet-etcd.