|
@@ -738,6 +738,10 @@ static int mod_init(void)
|
|
|
return -1;
|
|
|
}
|
|
|
|
|
|
+ if(dlg_db_mode==DB_MODE_SHUTDOWN) {
|
|
|
+ ksr_module_set_flag(KSRMOD_FLAG_POSTCHILDINIT);
|
|
|
+ }
|
|
|
+
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
@@ -777,9 +781,9 @@ static int child_init(int rank)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if ( ((dlg_db_mode==DB_MODE_REALTIME || dlg_db_mode==DB_MODE_DELAYED) &&
|
|
|
- (rank>0 || rank==PROC_TIMER || rank==PROC_RPC)) ||
|
|
|
- (dlg_db_mode==DB_MODE_SHUTDOWN && (rank==PROC_MAIN)) ) {
|
|
|
+ if ( ((dlg_db_mode==DB_MODE_REALTIME || dlg_db_mode==DB_MODE_DELAYED)
|
|
|
+ && (rank>0 || rank==PROC_TIMER || rank==PROC_RPC))
|
|
|
+ || (dlg_db_mode==DB_MODE_SHUTDOWN && (rank==PROC_POSTCHILDINIT)) ) {
|
|
|
if ( dlg_connect_db(&db_url) ) {
|
|
|
LM_ERR("failed to connect to database (rank=%d)\n",rank);
|
|
|
return -1;
|