8 Commits

Author SHA1 Message Date
木头云
73d59ba20e fix(log): add missing LIBIPC_LOG() and fix lambda log capture
- src/libipc/prod_cons.h:
  * Add LIBIPC_LOG() to second force_push() template function
  * This was missing, causing 'log' to be undeclared at line 379

- src/libipc/ipc.cpp:
  * Add LIBIPC_LOG() to static send() function (line 590)
  * Capture log by reference in outer lambda: [tm, &log]
  * Capture log by reference in inner lambda: [tm, &log, info, que, msg_id]
  * This fixes 'log' was not declared error in lambda at line 598
  * The log variable is now properly captured from the outer send() scope

These fixes ensure that all functions using log.debug/error/warning
have proper LIBIPC_LOG() initialization and lambda captures.
2025-12-15 10:21:40 +00:00
木头云
309baf77bc refactor(log): change log level from warning to debug in prod_cons.h
- Update force_push() log calls to use log.debug() instead of log.warning()
- Debug level is more appropriate for internal force_push diagnostic messages
2025-12-15 08:47:42 +00:00
木头云
bf62216e8d refactor(log): replace utility/log with imp/log in prod_cons.h and queue.h
- Replace include "libipc/utility/log.h" with "libipc/imp/log.h"
- prod_cons.h: Replace ipc::log() calls with LIBIPC_LOG() + log.warning()
  - Updated 2 force_push() template functions in broadcast implementations
  - Changed log level from generic log to warning for force_push scenarios
- queue.h: Replace ipc::error() calls with LIBIPC_LOG() + log.error()
  - Updated queue_conn::open() template function
- Use type-safe streaming interface instead of printf-style formatting
- Remove manual newline characters from log messages
2025-12-15 08:43:13 +00:00
mutouyun
628914d428 try to adjust recycling strategy for large message cache 2021-07-11 13:13:30 +08:00
mutouyun
8e6ae4220b mmb force_push 出现竞争时,应该在失败后先正常push一次 2021-01-09 21:42:56 +08:00
mutouyun
23d2007c5e 对mmb来说,incr上限65535不够大,调整至16,777,215 2021-01-03 14:03:16 +08:00
mutouyun
6163618433 针对不同类型的策略,增加不同的sender/receiver个数检查。
- is_multi_producer:sender无限制;否则仅允许一个
 - is_multi_consumer:receiver个数上限依赖is_broadcast指定;否则仅允许一个
 - is_broadcast:receiver个数上限为32(uint_t<32>位数);否则无限制(uint_t<32>大小)

行为变更:
1. 在连接时根据模式检查sender/receiver是否超出上限,超出则返回false
2. 在send时确认是否允许发送(对receiver模式来说,send之前不会尝试确认sender个数)
3. 修正若干bug
2021-01-03 12:52:03 +08:00
mutouyun
523d38d247 调整目录结构,隔离include路径,修正tls在win下的问题 2020-09-13 17:29:14 +08:00