dzvancuks

Results 11 comments of dzvancuks

I'm using GDB 7.11.1 in VSCode over WSL > if your debugger supports special types, you can try changing `valuesFormatting` to other values. I've changed to 'prettyPrinters'. Hovering over std::map...

Few other findings: - you can increase a bit performance by buffering gRPC, but it is limited to trancaction channel https://github.com/ligato/vpp-agent/blob/bd7edfd0f8e31af506a5b3a72623de62d5944da1/plugins/kvscheduler/plugin_scheduler.go#L182 - Memory allocation is done for each transaciton object....

I've started code analysis to increase performance in separate fork: https://github.com/1NCE-GmbH/vpp-agent. I'll explain some pre-investigation and would like to discuss VPP-agent implementation details on how to better optimize its work...

After solving KV Scheduler issue I'll create followup issues regarding GC and memory usage, mutexes, and txnQueue size. There is a possibility that some of them will be solved together...

Started experimenting with multithread approach. 1. it is possible to get rid from `txnLock` completely. This is possible by introducing RWlock in Registry and by adding Mutex for valStateWatchers 2....

@ondrej-fabry , thank you for response. I studied provided branches. > [master...milanlenco:kvDescriptorV2](https://github.com/ligato/vpp-agent/compare/master...milanlenco:kvDescriptorV2) This one optimizes GC. I'm thinking of splitting current issue into 2 steps. One is for parallel tnx...

Small update. Our team has decided to implement own VPP transaction handler using GoVPP. In our project we require to handle many small transactions, instead of single complex tnx with...

General note: in case you think that such changes are not required just reject PR, I will just keep them in fork.

@majst01 also please note that we need to have correct Redis key read. Please recommend: should we wait for https://github.com/metal-stack/go-ipam/pull/43 or shoud I implement Redis Storage options?

There is a workaround for cluster mode `PSubscribe` issue by using `ForEachMaster`. This creates regular client and it uses regular connection directly to every node: https://github.com/redis/go-redis/blob/master/redis.go#L708 . This solution creates...