mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 18:16:24 +05:00
Speedup SMG replication, small fix in servmanager
This commit is contained in:
@@ -85,8 +85,8 @@ func (srvMngr *ServiceManager) StopScheduler() error {
|
||||
srvMngr.Unlock()
|
||||
if sched == nil {
|
||||
return utils.NewCGRError(utils.ServiceManager,
|
||||
utils.CapitalizedMessage(utils.ServiceAlreadyRunning),
|
||||
utils.ServiceAlreadyRunning,
|
||||
utils.CapitalizedMessage(utils.ServiceNotRunning),
|
||||
utils.ServiceNotRunning,
|
||||
"the scheduler is not running")
|
||||
}
|
||||
srvMngr.cfg.SchedulerEnabled = false
|
||||
|
||||
@@ -460,7 +460,8 @@ func (smg *SMGeneric) sessionRelocate(initialID, cgrID, newOriginID string) erro
|
||||
|
||||
// replicateSessions will replicate session based on configuration
|
||||
func (smg *SMGeneric) replicateSessionsWithID(cgrID string, passiveSessions bool, smgReplConns []*SMGReplicationConn) (err error) {
|
||||
if smg.cgrCfg.SmGenericConfig.DebitInterval != 0 && !passiveSessions { // Replicating active not supported
|
||||
if len(smgReplConns) == 0 ||
|
||||
(smg.cgrCfg.SmGenericConfig.DebitInterval != 0 && !passiveSessions) { // Replicating active not supported
|
||||
return
|
||||
}
|
||||
ssMux := &smg.aSessionsMux
|
||||
@@ -470,11 +471,11 @@ func (smg *SMGeneric) replicateSessionsWithID(cgrID string, passiveSessions bool
|
||||
ssMp = smg.passiveSessions
|
||||
}
|
||||
ssMux.RLock()
|
||||
var ss []*SMGSession
|
||||
if err = utils.Clone(ssMp[cgrID], &ss); err != nil {
|
||||
ss := ssMp[cgrID]
|
||||
ssMux.RUnlock()
|
||||
if len(ss) == 0 {
|
||||
return
|
||||
}
|
||||
ssMux.RUnlock()
|
||||
var wg sync.WaitGroup
|
||||
for _, rplConn := range smgReplConns {
|
||||
if rplConn.Synchronous {
|
||||
|
||||
Reference in New Issue
Block a user