mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 18:16:24 +05:00
Activate precaching only for rater
This commit is contained in:
@@ -307,18 +307,25 @@ func main() {
|
||||
engine.Logger.Crit(errCfg.Error())
|
||||
return
|
||||
}
|
||||
|
||||
var dataDb engine.DataStorage
|
||||
var logDb engine.LogStorage
|
||||
var loadDb engine.LoadStorage
|
||||
var cdrDb engine.CdrStorage
|
||||
dataDb, err = engine.ConfigureDataStorage(cfg.DataDBType, cfg.DataDBHost, cfg.DataDBPort, cfg.DataDBName, cfg.DataDBUser, cfg.DataDBPass, cfg.DBDataEncoding, true)
|
||||
dataDb, err = engine.ConfigureDataStorage(cfg.DataDBType, cfg.DataDBHost, cfg.DataDBPort, cfg.DataDBName, cfg.DataDBUser, cfg.DataDBPass, cfg.DBDataEncoding)
|
||||
if err != nil { // Cannot configure getter database, show stopper
|
||||
engine.Logger.Crit(fmt.Sprintf("Could not configure dataDb: %s exiting!", err))
|
||||
return
|
||||
}
|
||||
defer dataDb.Close()
|
||||
engine.SetDataStorage(dataDb)
|
||||
if cfg.RaterEnabled {
|
||||
engine.Logger.Info("Starting redis pre-caching...")
|
||||
if err := dataDb.PreCache(nil, nil); err != nil {
|
||||
engine.Logger.Crit(fmt.Sprintf("Pre-caching error: %v", err))
|
||||
return
|
||||
}
|
||||
engine.Logger.Info("Pre-caching done!")
|
||||
}
|
||||
if cfg.StorDBType == SAME {
|
||||
logDb = dataDb.(engine.LogStorage)
|
||||
} else {
|
||||
|
||||
@@ -72,12 +72,12 @@ func main() {
|
||||
var storDb engine.LoadStorage
|
||||
// Init necessary db connections
|
||||
if *fromStorDb {
|
||||
dataDb, errDataDb = engine.ConfigureDataStorage(*data_db_type, *data_db_host, *data_db_port, *data_db_name, *data_db_user, *data_db_pass, *dbdata_encoding, false)
|
||||
dataDb, errDataDb = engine.ConfigureDataStorage(*data_db_type, *data_db_host, *data_db_port, *data_db_name, *data_db_user, *data_db_pass, *dbdata_encoding)
|
||||
storDb, errStorDb = engine.ConfigureLoadStorage(*stor_db_type, *stor_db_host, *stor_db_port, *stor_db_name, *stor_db_user, *stor_db_pass, *dbdata_encoding)
|
||||
} else if *toStorDb { // Import from csv files to storDb
|
||||
storDb, errStorDb = engine.ConfigureLoadStorage(*stor_db_type, *stor_db_host, *stor_db_port, *stor_db_name, *stor_db_user, *stor_db_pass, *dbdata_encoding)
|
||||
} else { // Default load from csv files to dataDb
|
||||
dataDb, errDataDb = engine.ConfigureDataStorage(*data_db_type, *data_db_host, *data_db_port, *data_db_name, *data_db_user, *data_db_pass, *dbdata_encoding, false)
|
||||
dataDb, errDataDb = engine.ConfigureDataStorage(*data_db_type, *data_db_host, *data_db_port, *data_db_name, *data_db_user, *data_db_pass, *dbdata_encoding)
|
||||
}
|
||||
// Defer databases opened to be closed when we are done
|
||||
for _, db := range []engine.Storage{dataDb, storDb} {
|
||||
|
||||
@@ -20,14 +20,13 @@ package engine
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"github.com/cgrates/cgrates/utils"
|
||||
"strconv"
|
||||
)
|
||||
|
||||
// Various helpers to deal with database
|
||||
|
||||
func ConfigureDataStorage(db_type, host, port, name, user, pass, marshaler string, precache bool) (db DataStorage, err error) {
|
||||
func ConfigureDataStorage(db_type, host, port, name, user, pass, marshaler string) (db DataStorage, err error) {
|
||||
var d Storage
|
||||
switch db_type {
|
||||
case utils.REDIS:
|
||||
@@ -42,13 +41,6 @@ func ConfigureDataStorage(db_type, host, port, name, user, pass, marshaler strin
|
||||
}
|
||||
d, err = NewRedisStorage(host, db_nb, pass, marshaler)
|
||||
db = d.(DataStorage)
|
||||
if precache {
|
||||
Logger.Info("Started redis pre-caching...")
|
||||
if err := db.PreCache(nil, nil); err != nil {
|
||||
Logger.Err(fmt.Sprintf("Pre-caching error: %v", err))
|
||||
}
|
||||
Logger.Info("Pre-caching done!")
|
||||
}
|
||||
case utils.MONGO:
|
||||
d, err = NewMongoStorage(host, port, name, user, pass)
|
||||
db = d.(DataStorage)
|
||||
|
||||
Reference in New Issue
Block a user