Changelog
New Features
- f87a634: feat(processingCtx): default processing ctx timeout can be set through flag (#2161) (@NadavLevi)
- 18cb6d0: feat: Data reliability removal (#2134) (@AnnaR-prog)
- 3b04cb1: feat: Remove referer functionality (#2137) (@nimrod-teich)
- 087295c: feat: add Pyroscope continuous profiling support (#2172) (@nimrod-teich)
- c600522: feat: add Pyroscope continuous profiling support to cache server (#2177) (@nimrod-teich)
- 0467913: feat: add configurable flags for pyroscope profiling (#2173) (@nimrod-teich)
- 8fe264c: feat: optimize HTTP connection pooling for high-throughput scenarios (#2174) (@nimrod-teich)
Bug fixes
- e6e0591: fix(IsUnsupportedMethodErrorMessageBytes): if pattern > errorMsg don't check for contains (#2190) (@NadavLevi)
- 497e115: fix(chainlib): fix deadlock in RemoveConsumer by releasing lock before unsubscribe (@AnnaR-prog)
- 0bbb34e: fix(chainlib): fix potential infinite loop in subscription closing by enforcing context cancellation (@AnnaR-prog)
- 2ec811e: fix(chainlib): fix race condition in subscription removal logging (@AnnaR-prog)
- 9d5b671: fix(chainlib): include response error in ID mismatch logs (#2192) (@NadavLevi)
- 99cd287: fix(common): relax performance check in transport integration test to reduce flakiness (@AnnaR-prog)
- 2968aa7: fix(consumer): remove unused const (@NadavLevi)
- 676ccb5: fix(relaycore): fix flaky TestProtocolErrorsRecoveryMetricWithQuorum by ensuring error processing order (@AnnaR-prog)
- f466762: fix(smart-router): skip block gap warning when expectedBH is MaxInt64 (#2157) (@NadavLevi)
- d3a2266: fix: Add skip elliptic signing flag (#2183) (@Tomelia1999)
- 68f54b5: fix: Adding a fix for redundent retries when pairingListEmpty (#2159) (@Tomelia1999)
- 3c21210: fix: Hiesen tests failing randomly (#2166) (@nimrod-teich)
- 9184964: fix: LavaFormatLog must always return error when called (#2167) (@nimrod-teich)
- ac492c9: fix: Strict timeout statemachine (#2160) (@Tomelia1999)
- c9663ef: fix: add debug prints and remove sleep in E2E test to debug hang (@AnnaR-prog)
- 9b53a61: fix: add panic recovery for logging and remove unsafe log statements (@NadavLevi)
- e6a7fa7: fix: add space after // in comment formatting (lint) (@AnnaR-prog)
- ae6d527: fix: add type assertion checks to satisfy forcetypeassert linter (#2164) (@nimrod-teich)
- 3a00012: fix: cap string len on reply data/payload (#2185) (@NadavLevi)
- 416364d: fix: clean up dead gRPC connections to prevent accumulation (#2168) (@NadavLevi)
- da393f2: fix: correct cleanup order in RemoveConsumer to prevent deadlock (@AnnaR-prog)
- c7fd49d: fix: handle WebSocket connection closure gracefully in test (@AnnaR-prog)
- eaaf8d1: fix: handle consumer reconnection gracefully without race conditions (@AnnaR-prog)
- a42bcff: fix: minor performance optimization (#2178) (@NadavLevi)
- c7fe1ea: fix: prevent MaxInt64 from causing false block gap warnings and QoS penalties (@NadavLevi)
- a1eaa90: fix: prevent deadlock in subscription cleanup (@AnnaR-prog)
- 0063b52: fix: prevent session leaks and exhaustion in smart router and consumer (#2158) (@nimrod-teich)
- cf7861f: fix: properly handle consumer reconnection in subscription manager (@AnnaR-prog)
- f41f93a: fix: remove "not found" from string matching (#2169) (@Tomelia1999)
- 760761a: fix: revert debug prints, keep time.Sleep removed to fix hang (@AnnaR-prog)
- b29650c: fix: skip unmarshalling empty FinalizedBlocksHashes in cache path (#2170) (@nimrod-teich)
- 2ae6e7d: fix: typo rquested -> requested (@NadavLevi)
- cf3ac0d: fix: use dynamic ports in tests to avoid address conflicts (#2162) (@nimrod-teich)
Build process updates
- b5ccee3: ci: add Codecov integration for test coverage reporting (#2191) (@nimrod-teich)
- e2ea149: ci: add GitHub Actions timeout-minutes for protocol tests (@AnnaR-prog)
- 5c85a2c: ci: increase protocol test timeout to 15 minutes (@AnnaR-prog)
Other work
- f907b53: Add 100ms sleep before prints to ensure proper flushing (@AnnaR-prog)
- e2e4af3: Add 15-minute timeout to e2e tests and enable manual workflow trigger (@AnnaR-prog)
- c81f368: Add comprehensive debug logging to virtual epoch goroutine (@AnnaR-prog)
- 22e1012: Add comprehensive debugging for e2e test hang investigation (@AnnaR-prog)
- 836eaa1: Add debug prints with sleeps to finishTestSuccessfully (@AnnaR-prog)
- 321f7ec: Add detailed debugging for 10_StartLavaInEmergencyMode kill hang (@AnnaR-prog)
- 7f83b64: Add detailed debugging for emergency mode process kill hang (@AnnaR-prog)
- 8bd0afb: Add diagnostics before killing emergency mode process (@AnnaR-prog)
- dd73297: Add emergency kill diagnostics and allow Unavailable gRPC error (@AnnaR-prog)
- 9c38dac: Add sleep delays between debug prints to ensure proper flushing (@AnnaR-prog)
- b44cda4: Add srv.Send() and transport closing errors to allowed errors list (@AnnaR-prog)
- f10a2fe: Add stack dumps and timeout guard to e2e cleanup kills (@AnnaR-prog)
- 6b6d13e: Add subscription tests for Unsubscribe behavior (@avitenzer)
- 759ab3f: Bound getpgid during e2e cleanup kill (@AnnaR-prog)
- cea0d01: Extend cleanup sleep to 31s to test if hang is time-based or iteration-based (@AnnaR-prog)
- ec68d2a: Fix deadlock in finishTestSuccessfully by releasing lock before killing processes (@AnnaR-prog)
- a70e06e: Fix e2e test deadlock and add workflow improvements (@AnnaR-prog)
- ebf9eb9: Fix logger race condition by initializing in init() and removing reconfiguration from hot path (@AnnaR-prog)
- d920d91: Fix subscription unsubscribe hangs (@AnnaR-prog)
- 0b881f6: Increase E2E test timeout from 15 to 20 minutes (@AnnaR-prog)
- 049784c: Re-add heartbeat goroutine and epoch waiting debug logs (@AnnaR-prog)
- 3de3e68: Remove more debug/sleep info (@AnnaR-prog)
- 6c89ea4: Remove part of debug sleeps (@AnnaR-prog)
- edf88d1: Remove problematic sleep before 'entering select' print (@AnnaR-prog)
- a84c2c1: Replace select with direct channel send to avoid Go runtime freeze (@AnnaR-prog)
- 0f01356: Trigger CI rerun (@AnnaR-prog)
- a7e30a8: Trigger CI rerun (@AnnaR-prog)
- 09fe005: Trigger E2E test rerun (@AnnaR-prog)
- 0055643: Use structured logging for e2e shutdown diagnostics (@AnnaR-prog)
- 2f81165: chainlib: context-based timeout for unsubscribeNodeSubscription (@AnnaR-prog)
- 5ce3ac1: change Run Lava Protocol Tests-timeout 15m name (@AnnaR-prog)
- 6c3d025: change debug logs (@AnnaR-prog)
- dbc6e86: change debug logs (@AnnaR-prog)
- 8520ea6: change health message (#2171) (@ssejzer)
- 1589f37: debug: add more logs to debug failure in ci (@AnnaR-prog)
- 5cfa6b6: delete comments (@AnnaR-prog)
- b49fdcf: e2e: add stdout logs around REST relay loop (@AnnaR-prog)
- e649aae: emty commit (@AnnaR-prog)
- 4938144: gofmt: rpcclient subscription tests (@AnnaR-prog)
- 77c514f: perf: add early return optimization to LavaFormatLog (#2155) (@NadavLevi)
- b6477b2: perf: cache fiber request headers to reduce allocations (#2181) (@nimrod-teich)
- f3e59ef: perf: implement double-check locking in cacheAddonAddresses (#2156) (@NadavLevi)
- 257d688: perf: optimize IsUnsupportedMethodErrorMessage with bytes variant (#2180) (@nimrod-teich)
- 254b8d4: reduce sha256 compute (#2176) (@Tomelia1999)
- b2b3d69: remove more debug sleep + heartbeat routine (@AnnaR-prog)
- 7c60493: remove stack dump messages (@AnnaR-prog)
- 69f09e6: revert: manual gc and memory monitoring (#2179) (@NadavLevi)
- 8593406: testutil/e2e: add debug logs to rest relay test (@AnnaR-prog)
- d90ad0b: testutil/e2e: fix checkLava timeout handling and uncomment sleep (@AnnaR-prog)
- 67957f3: testutil/e2e: remove debug logs from getRequest to prevent log flood (@AnnaR-prog)