[OpenSIPS-Devel] [OpenSIPS/opensips] 5de24f: cachedb_redis: add Unix socket transport and lazy ...

Liviu Chircu noreply at github.com
Wed Apr 22 14:15:14 UTC 2026


  Branch: refs/heads/master
  Home:   https://github.com/OpenSIPS/opensips
  Commit: 5de24f13799af742ea5f08ac70a21701ea18008a
      https://github.com/OpenSIPS/opensips/commit/5de24f13799af742ea5f08ac70a21701ea18008a
  Author: Debian <gator at opensips-1.goes.com>
  Date:   2026-04-01 (Wed, 01 Apr 2026)

  Changed paths:
    M modules/cachedb_redis/cachedb_redis.c
    M modules/cachedb_redis/cachedb_redis_dbase.c
    M modules/cachedb_redis/cachedb_redis_dbase.h
    M modules/cachedb_redis/cachedb_redis_mi.c
    M modules/cachedb_redis/cachedb_redis_utils.c
    M modules/cachedb_redis/doc/cachedb_redis_admin.xml
    M modules/cachedb_redis/test/hash_under_test.c
    A modules/cachedb_redis/test/test_lazy_connect.sh
    M modules/cachedb_redis/test/test_mi_commands.sh
    M modules/cachedb_redis/test/test_mi_counters.c
    A modules/cachedb_redis/test/test_unix_socket.sh

  Log Message:
  -----------
  cachedb_redis: add Unix socket transport and lazy connection

Add Unix domain socket support as an alternative to TCP connections:
- New URL format: redis:group://localhost/?socket=/path/to/sock
- REDIS_UNIX_SOCKET flag for connection and node identification
- MI output includes transport type (tcp/unix) and socket_path
- Unix socket path tracked in redis_con and cluster_node structs

Add lazy connection establishment:
- New lazy_connect module parameter (integer, default 0)
- Defers Redis connection until first cache operation
- Works for both TCP and Unix socket transport modes

Test suite:
- test_unix_socket.sh: 19 integration tests
- test_lazy_connect.sh: 17 integration tests
- Test stubs synced with production struct layout

Depends on: MR B (feature/redis-cluster-management)


  Commit: 829d118e7ea3e0d70737c338e9d7170c069f223d
      https://github.com/OpenSIPS/opensips/commit/829d118e7ea3e0d70737c338e9d7170c069f223d
  Author: Norm Brandinger <n.brandinger at gmail.com>
  Date:   2026-04-01 (Wed, 01 Apr 2026)

  Changed paths:
    M modules/cachedb_redis/cachedb_redis_dbase.c

  Log Message:
  -----------
  cachedb_redis: restore NULL check after redisConnect/redisConnectUnix

If hiredis returns NULL (OOM), the previous `ctx && ctx->err` guard
skipped the error branch and fell through to redisSetTimeout(ctx, ...),
causing a NULL-pointer dereference. Split into separate !ctx and
ctx->err checks so OOM is caught before any ctx dereference.

Reported-by: dondetir <dondetir at users.noreply.github.com>


  Commit: a97d8b35d1e71223be6077ce14e3024696b8feb3
      https://github.com/OpenSIPS/opensips/commit/a97d8b35d1e71223be6077ce14e3024696b8feb3
  Author: Liviu Chircu <liviu at opensips.org>
  Date:   2026-04-22 (Wed, 22 Apr 2026)

  Changed paths:
    M modules/cachedb_redis/cachedb_redis.c
    M modules/cachedb_redis/cachedb_redis_dbase.c
    M modules/cachedb_redis/cachedb_redis_dbase.h
    M modules/cachedb_redis/cachedb_redis_mi.c
    M modules/cachedb_redis/cachedb_redis_utils.c
    M modules/cachedb_redis/test/hash_under_test.c
    A modules/cachedb_redis/test/test_lazy_connect.sh
    M modules/cachedb_redis/test/test_mi_commands.sh
    M modules/cachedb_redis/test/test_mi_counters.c
    A modules/cachedb_redis/test/test_unix_socket.sh

  Log Message:
  -----------
  Merge branch 'mr/feature-redis-unix-socket-lazy' of github.com:NormB/opensips into NormB-mr/feature-redis-unix-socket-lazy


Compare: https://github.com/OpenSIPS/opensips/compare/624ef5b61195...a97d8b35d1e7

To unsubscribe from these emails, change your notification settings at https://github.com/OpenSIPS/opensips/settings/notifications



More information about the Devel mailing list