Releases: sogou/workflow
Releases · sogou/workflow
workflow v0.10.1
New Features
- Add a built-in json parser
- Add Consul client (prepared for Consul service governance)
- Add MySQLUtil
- Add package wrapper
Improvements
- Refactor kafka client and fixed some bugs
- Refactor service governance task and add 'pre_select' for service governance plugins
Bug Fixes
- Fix MySQLCell::as_float bug when the it's a negative number.
- Update CMake and bazel building files to fix kafka task's canceling bug
workflow v0.9.11
Improvements
- Optimize upstream with consistent hash. Allow adding server with weight.
- Improve http protocol compatibility of http client task.
- Improve bazel building.
Bug Fixes
- Make UpstreamManager::upstream_delete() safe when the upstream is still in use.
- Fix the SSL delaying problem on Nagle's algorithm.
- Fix bug that cannot use the port in URL when using upstream.
- Fix Kafka client offset timestamp overflow.
- Fix Kafka client freezing problem when broker toggles the leader.
workflow v0.9.10
Improvements
- Refactor encode stream. This will improve the performance of Redis and Kafka clients.
- Optimize SSL write. Improve the performance of HTTPS client and server a lot.
- Optimize weighted-random upstream policy to solve some recovering problem.
- Update Cmake files to support more platforms. Build both static and dynamic libs.
Bug Fixes
- Fix nvswrr upstream policy bug.
- Fix MySQL client crash on incomplete result sets.
- Fix Kafka out of range error on fetching.
- Fix Kafka cgroup bug.
- Fix SSL wrapper problem on TLS 1.3 handshaking.
workflow v0.9.9
Improvements
- Optimize Dns Cache's searching speed and memory size
- Optimize route manager and dns resolver
- Increase server task's performance by reducing some atomic operations
- Increase global performance by removing some singletons
- Always use dns resolver as name service policy when redirecting
- Add WFServer::get_listen_addr() for server started on a random port
- Support kafka kip 329
Bug Fixes
- Fix service governance's ref count bug
- Fix mysql sequence id bug when retrying big request
- Fix VNSWRR upstream bug
- Fix dns client bug when host name has trailing dot
- Fix URL parser fatal bug
workflow v0.9.8
Improvements
- Enable creating file IO tasks with path name
- Add server task's push() interface
- Optimize poller speed and memory occupying
- Optimize URI parser, more than 50% faster
- Optimize http implementation
Bug Fixes
- Fix crash when resolv.conf is empty
- Fix Kafka client's memory leak
- Fix MySQL transaction checking
- Fix bazel compiling problem
workflow v0.9.7
Improvements
- Implement DNS protocol and add DNS asynchronous client.
- Use asynchronous DNS as default.
- Optimize load balancing.
- Add bazel support and add selective compiling.
- Support longer timer.
- Add WFResourcePool.
Bug fixes
- Fix Redis double SELECTs problem.
- Fix upstream_replace_server() bug.
- Fix timerfd problem on some WSL platforms.
workflow v0.9.6
Improvements
- Add SSLWrapper.
- Support http/https task with proxy.
- Support MySQL SSL client.
- Add vnswrr upstream policy.
Bug fixes
- Fix upstream concurrency bug.
- Fix MySQL multi-resultset for INSERTs
- Fix Kafka client sasl auth bug.
- Add -no-rtti compiling flag for kafka to be compatible with snappy 1.1.9.
workflow v0.9.5
Improvements
- Support TLS SNI on both client and server sides;
- Upstream skips select history;
- Kafka supports sasl auth;
Bug Fixes
- Fix default port bug;
- MySQL fix decode overflow bug;
- MySQL fix parsing suffixed ok_packet;
- Kafka modify logic of versionapi;
workflow v0.9.4
Improvement
- Add WFNameService and refactor "Upstream" modules.
- Update the definition of WFServer::stop()'s finish time.
- Kafka client supports offset storage.
- Redis supports cluster command MOVED and ASK.
- Supporting VCPKG.
Bug fixes
- Crash when dismissing a named counter.
- WFGoTask implementation.
- MySQL int/ulonglong length overflow.
workflow v0.9.3
Improvements
- Add Kafka client.
- Improve client tasks performance.
Bugs fixes:
- Fix several MySQL parser bugs.
- Fix iovcnt==0 problem on macOS.