Skip to content

v1.6.4

Choose a tag to compare

@github-actions github-actions released this 26 Apr 05:44
· 175 commits to main since this release

• رفع باگ "L7 multiplexer در Full mode batch نمی‌کنه" (#231): در حالت Full، انتظار می‌رفت که چند op به یک batch HTTP request به Apps Script ترکیب بشن (batch: 5 ops یا batch: 10 ops)، ولی log نشون می‌داد همیشه batch: 1 ops — یعنی هر op جدا یه round-trip Apps Script می‌گرفت (که هر کدوم 2 تا 7 ثانیه طول می‌کشن). علت: loop دریافت پیام بلافاصله بعد از اولین message با try_recv() (non-blocking) صف رو drain می‌کرد، بدون pause برای جمع‌آوری بقیه ops. Fix: بعد از اولین op، یه پنجرهٔ ۸ میلی‌ثانیه‌ای باز می‌مونه تا opهای بعدی (مثل parallel fetches، HTTP/2 streams) همون batch رو پر کنن. ۸ms در مقابل ~۲ تا ۷ ثانیه RTT Apps Script اصلاً ناچیزه ولی efficiency batching رو برمی‌گردونه. ریپورت شده توسط w0l4i با log واضح

• Fix "L7 multiplexer not batching in Full mode" bug (#231): in full mode, multiple ops should coalesce into a single batched HTTP request to Apps Script (batch: 5 ops or batch: 10 ops), but logs showed batch: 1 ops consistently — each op got its own Apps Script round-trip (2-7 s each). Cause: the receive loop drained the channel via try_recv() (non-blocking) immediately after the first message arrived, with no window to let concurrent ops accumulate. Fix: after the first op lands, hold the buffer open for an 8 ms coalescing window so concurrent ops (parallel fetches, HTTP/2 stream openings, etc.) land in the same batch. 8 ms is rounding error against the ~2-7 s Apps Script RTT but restores the entire batching premise. Reported by w0l4i with a clean log snippet

Full Changelog: v1.6.3...v1.6.4