Updated sessions dataDB connection

This commit is contained in:
Tripon Alexandru-Ionut
2019-05-20 10:07:24 +03:00
committed by Dan Christian Bogos
parent a98907bdff
commit d54f7af49b
3 changed files with 12 additions and 24 deletions

View File

@@ -1586,32 +1586,20 @@ func main() {
var loadDb engine.LoadStorage
var cdrDb engine.CdrStorage
var dm *engine.DataManager
if cfg.RalsCfg().RALsEnabled || cfg.SchedulerCfg().Enabled || cfg.ChargerSCfg().Enabled ||
if needsDB := cfg.RalsCfg().RALsEnabled || cfg.SchedulerCfg().Enabled || cfg.ChargerSCfg().Enabled ||
cfg.AttributeSCfg().Enabled || cfg.ResourceSCfg().Enabled || cfg.StatSCfg().Enabled ||
cfg.ThresholdSCfg().Enabled || cfg.SupplierSCfg().Enabled || cfg.DispatcherSCfg().Enabled { // Some services can run without db, ie: CDRC
cfg.ThresholdSCfg().Enabled || cfg.SupplierSCfg().Enabled || cfg.DispatcherSCfg().Enabled; needsDB ||
cfg.SessionSCfg().Enabled { // Some services can run without db, ie: CDRC
dm, err = engine.ConfigureDataStorage(cfg.DataDbCfg().DataDbType,
cfg.DataDbCfg().DataDbHost, cfg.DataDbCfg().DataDbPort,
cfg.DataDbCfg().DataDbName, cfg.DataDbCfg().DataDbUser,
cfg.DataDbCfg().DataDbPass, cfg.GeneralCfg().DBDataEncoding,
cfg.CacheCfg(), cfg.DataDbCfg().DataDbSentinelName)
if err != nil { // Cannot configure getter database, show stopper
if needsDB && err != nil { // Cannot configure getter database, show stopper
utils.Logger.Crit(fmt.Sprintf("Could not configure dataDb: %s exiting!", err))
return
}
defer dm.DataDB().Close()
engine.SetDataStorage(dm)
if err := engine.CheckVersions(dm.DataDB()); err != nil {
fmt.Println(err.Error())
return
}
} else if cfg.SessionSCfg().Enabled {
dm, err = engine.ConfigureDataStorage(cfg.DataDbCfg().DataDbType,
cfg.DataDbCfg().DataDbHost, cfg.DataDbCfg().DataDbPort,
cfg.DataDbCfg().DataDbName, cfg.DataDbCfg().DataDbUser,
cfg.DataDbCfg().DataDbPass, cfg.GeneralCfg().DBDataEncoding,
cfg.CacheCfg(), cfg.DataDbCfg().DataDbSentinelName)
if err != nil { // Cannot configure getter database, show stopper
utils.Logger.Warning(fmt.Sprintf("Could not configure dataDb: %s.Some SessionS API will not work", err))
} else if cfg.SessionSCfg().Enabled && err != nil {
utils.Logger.Warning(fmt.Sprintf("Could not configure dataDb: %s.Some SessionS APIs will not work", err))
} else {
defer dm.DataDB().Close()
engine.SetDataStorage(dm)

View File

@@ -1552,7 +1552,7 @@ func (sS *SessionS) BiRPCv1GetActiveSessions(clnt rpcclient.RpcClientConnection,
args = &utils.SessionFilter{}
}
if len(args.Filters) != 0 && sS.dm == nil {
return utils.NoDataBaseConnection
return utils.ErrNoDatabaseConn
}
aSs := sS.filterSessions(args, false)
if len(aSs) == 0 {
@@ -1569,7 +1569,7 @@ func (sS *SessionS) BiRPCv1GetActiveSessionsCount(clnt rpcclient.RpcClientConnec
args = &utils.SessionFilter{}
}
if len(args.Filters) != 0 && sS.dm == nil {
return utils.NoDataBaseConnection
return utils.ErrNoDatabaseConn
}
*reply = sS.filterSessionsCount(args, false)
return nil
@@ -1582,7 +1582,7 @@ func (sS *SessionS) BiRPCv1GetPassiveSessions(clnt rpcclient.RpcClientConnection
args = &utils.SessionFilter{}
}
if len(args.Filters) != 0 && sS.dm == nil {
return utils.NoDataBaseConnection
return utils.ErrNoDatabaseConn
}
pSs := sS.filterSessions(args, true)
if len(pSs) == 0 {
@@ -1599,7 +1599,7 @@ func (sS *SessionS) BiRPCv1GetPassiveSessionsCount(clnt rpcclient.RpcClientConne
args = &utils.SessionFilter{}
}
if len(args.Filters) != 0 && sS.dm == nil {
return utils.NoDataBaseConnection
return utils.ErrNoDatabaseConn
}
*reply = sS.filterSessionsCount(args, true)
return nil
@@ -2782,7 +2782,7 @@ func (sS *SessionS) BiRPCv1ForceDisconnect(clnt rpcclient.RpcClientConnection,
args = &utils.SessionFilter{}
}
if len(args.Filters) != 0 && sS.dm == nil {
return utils.NoDataBaseConnection
return utils.ErrNoDatabaseConn
}
aSs := sS.filterSessions(args, false)
if len(aSs) == 0 {

View File

@@ -78,7 +78,7 @@ var (
RalsErrorPrfx = "RALS_ERROR"
DispatcherErrorPrefix = "DISPATCHER_ERROR"
ErrUnsupportedFormat = errors.New("UNSUPPORTED_FORMAT")
NoDataBaseConnection = errors.New("NO_DATA_BASE_CONNECTION")
ErrNoDatabaseConn = errors.New("NO_DATA_BASE_CONNECTION")
)
// NewCGRError initialises a new CGRError