I suspect that there may be compatibility issues between the new version of the 
TCP model and the old ndd_redis module during module initialization. I suspect 
that the processing logic triggered by this event occurred in the main process, 
which did not initialize the relevant context. I have attempted to modify the 
following code:

···
file:ndb_redis/ndb_redis_mod.c
151  if(rank == PROC_INIT || rank == PROC_MAIN || rank == PROC_TCP_MAIN)
modify:
151  if(rank == PROC_INIT || rank == PROC_MAIN )
···


Based on the above tests, it can be basically determined that the event_route 
event was triggered in the TCP main process, rather than in the expected child 
process, which is also the reason why it cannot obtain the context normally. 
I'm not sure if this handling is reasonable and won't cause any other problems, 
but it can indeed run normally. Is there any other better way? I speculate that 
the related issues should be quite common, whether it is better to solve them 
from the framework level rather than the module itself. And all operations are 
handled by the main process, and its performance is also worrying.


-- 
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3768#issuecomment-1963728833
You are receiving this because you are subscribed to this thread.

Message ID: <kamailio/kamailio/issues/3768/1963728...@github.com>
_______________________________________________
Kamailio (SER) - Development Mailing List
To unsubscribe send an email to sr-dev-le...@lists.kamailio.org

Reply via email to