diff --git a/apier/v1/versions_it_test.go b/apier/v1/versions_it_test.go
index aed13d27b..e1ccb1188 100644
--- a/apier/v1/versions_it_test.go
+++ b/apier/v1/versions_it_test.go
@@ -61,10 +61,10 @@ func TestVrsIT(t *testing.T) {
t.SkipNow() // as is commented below
case utils.MetaMySQL:
vrsConfigDIR = "tutmysql"
- vrsStorageType = utils.Redis
+ vrsStorageType = utils.MetaRedis
case utils.MetaMongo:
vrsConfigDIR = "tutmongo"
- vrsStorageType = utils.Mongo
+ vrsStorageType = utils.MetaMongo
case utils.MetaPostgres:
t.SkipNow()
default:
diff --git a/cmd/cgr-loader/cgr-loader_it_test.go b/cmd/cgr-loader/cgr-loader_it_test.go
index 17744b4d1..236544e3d 100644
--- a/cmd/cgr-loader/cgr-loader_it_test.go
+++ b/cmd/cgr-loader/cgr-loader_it_test.go
@@ -50,7 +50,7 @@ var (
func TestLoadConfig(t *testing.T) {
// DataDb
*cfgPath = path.Join(*dataDir, "conf", "samples", "tutmongo")
- *dataDBType = utils.Meta + utils.Redis
+ *dataDBType = utils.MetaRedis
*dataDBHost = "localhost"
*dataDBPort = "2012"
*dataDBName = "100"
@@ -59,7 +59,7 @@ func TestLoadConfig(t *testing.T) {
*dbRedisSentinel = "sentinel1"
*dbRedisConnectTimeout = 5 * time.Second
expDBcfg := &config.DataDbCfg{
- Type: utils.Redis,
+ Type: utils.MetaRedis,
Host: "localhost",
Port: "2012",
Name: "100",
@@ -87,7 +87,7 @@ func TestLoadConfig(t *testing.T) {
*storDBUser = "10"
*storDBPasswd = "toor"
expStorDB := &config.StorDbCfg{
- Type: utils.Postgres,
+ Type: utils.MetaPostgres,
Host: "localhost",
Port: "2012",
Name: "cgrates2",
diff --git a/config/config.go b/config/config.go
index 514a83da1..469dbedfb 100644
--- a/config/config.go
+++ b/config/config.go
@@ -50,23 +50,23 @@ var (
func newDbDefaults() dbDefaults {
deflt := dbDefaults{
- utils.MySQL: map[string]string{
+ utils.MetaMySQL: map[string]string{
"DbName": "cgrates",
"DbPort": "3306",
},
- utils.Postgres: map[string]string{
+ utils.MetaPostgres: map[string]string{
"DbName": "cgrates",
"DbPort": "5432",
},
- utils.Mongo: map[string]string{
+ utils.MetaMongo: map[string]string{
"DbName": "cgrates",
"DbPort": "27017",
},
- utils.Redis: map[string]string{
+ utils.MetaRedis: map[string]string{
"DbName": "10",
"DbPort": "6379",
},
- utils.Internal: map[string]string{
+ utils.MetaInternal: map[string]string{
"DbName": "internal",
"DbPort": "internal",
},
diff --git a/config/config_test.go b/config/config_test.go
index 0413b8e1a..96321615a 100644
--- a/config/config_test.go
+++ b/config/config_test.go
@@ -101,14 +101,14 @@ func TestCgrCfgDataDBPortWithoutDynamic(t *testing.T) {
jsnCfg := `
{
"data_db": {
- "db_type": "mongo",
+ "db_type": "*mongo",
}
}`
if cgrCfg, err := NewCGRConfigFromJSONStringWithDefaults(jsnCfg); err != nil {
t.Error(err)
- } else if cgrCfg.DataDbCfg().Type != utils.Mongo {
- t.Errorf("Expected: %+v, received: %+v", cgrCfg.DataDbCfg().Type, utils.Mongo)
+ } else if cgrCfg.DataDbCfg().Type != utils.MetaMongo {
+ t.Errorf("Expected: %+v, received: %+v", cgrCfg.DataDbCfg().Type, utils.MetaMongo)
} else if cgrCfg.DataDbCfg().Port != "6379" {
t.Errorf("Expected: %+v, received: %+v", cgrCfg.DataDbCfg().Port, "6379")
}
@@ -132,15 +132,15 @@ func TestCgrCfgDataDBPortWithDymanic(t *testing.T) {
jsnCfg := `
{
"data_db": {
- "db_type": "mongo",
+ "db_type": "*mongo",
"db_port": -1,
}
}`
if cgrCfg, err := NewCGRConfigFromJSONStringWithDefaults(jsnCfg); err != nil {
t.Error(err)
- } else if cgrCfg.DataDbCfg().Type != utils.Mongo {
- t.Errorf("Expected: %+v, received: %+v", cgrCfg.DataDbCfg().Type, utils.Mongo)
+ } else if cgrCfg.DataDbCfg().Type != utils.MetaMongo {
+ t.Errorf("Expected: %+v, received: %+v", cgrCfg.DataDbCfg().Type, utils.MetaMongo)
} else if cgrCfg.DataDbCfg().Port != "27017" {
t.Errorf("Expected: %+v, received: %+v", cgrCfg.DataDbCfg().Port, "27017")
}
@@ -171,8 +171,8 @@ func TestCgrCfgStorDBPortWithoutDynamic(t *testing.T) {
if cgrCfg, err := NewCGRConfigFromJSONStringWithDefaults(jsnCfg); err != nil {
t.Error(err)
- } else if cgrCfg.StorDbCfg().Type != utils.Mongo {
- t.Errorf("Expected: %+v, received: %+v", cgrCfg.StorDbCfg().Type, utils.Mongo)
+ } else if cgrCfg.StorDbCfg().Type != utils.MetaMongo {
+ t.Errorf("Expected: %+v, received: %+v", cgrCfg.StorDbCfg().Type, utils.MetaMongo)
} else if cgrCfg.StorDbCfg().Port != "3306" {
t.Errorf("Expected: %+v, received: %+v", cgrCfg.StorDbCfg().Port, "3306")
}
@@ -189,8 +189,8 @@ func TestCgrCfgStorDBPortWithDymanic(t *testing.T) {
if cgrCfg, err := NewCGRConfigFromJSONStringWithDefaults(jsnCfg); err != nil {
t.Error(err)
- } else if cgrCfg.StorDbCfg().Type != utils.Mongo {
- t.Errorf("Expected: %+v, received: %+v", cgrCfg.StorDbCfg().Type, utils.Mongo)
+ } else if cgrCfg.StorDbCfg().Type != utils.MetaMongo {
+ t.Errorf("Expected: %+v, received: %+v", cgrCfg.StorDbCfg().Type, utils.MetaMongo)
} else if cgrCfg.StorDbCfg().Port != "27017" {
t.Errorf("Expected: %+v, received: %+v", cgrCfg.StorDbCfg().Port, "27017")
}
@@ -928,7 +928,7 @@ func TestRadiusAgentCfg(t *testing.T) {
func TestDbDefaultsMetaDynamic(t *testing.T) {
dbdf := newDbDefaults()
flagInput := utils.MetaDynamic
- dbs := []string{utils.Mongo, utils.Redis, utils.MySQL, utils.Internal}
+ dbs := []string{utils.MetaMongo, utils.MetaRedis, utils.MetaMySQL, utils.MetaInternal}
for _, dbtype := range dbs {
port := dbdf.dbPort(dbtype, flagInput)
if port != dbdf[dbtype]["DbPort"] {
@@ -943,7 +943,7 @@ func TestDbDefaultsMetaDynamic(t *testing.T) {
func TestDbDefaults(t *testing.T) {
dbdf := newDbDefaults()
- dbs := []string{utils.Mongo, utils.Redis, utils.MySQL, utils.Internal, utils.Postgres}
+ dbs := []string{utils.MetaMongo, utils.MetaRedis, utils.MetaMySQL, utils.MetaInternal, utils.MetaPostgres}
for _, dbtype := range dbs {
port := dbdf.dbPort(dbtype, "1234")
if port != "1234" {
diff --git a/config/configsanity.go b/config/configsanity.go
index a44cb5754..4b26ffd31 100644
--- a/config/configsanity.go
+++ b/config/configsanity.go
@@ -891,7 +891,7 @@ func (cfg *CGRConfig) checkConfigSanity() error {
}
}
// StorDB sanity checks
- if cfg.storDbCfg.Type == utils.Postgres {
+ if cfg.storDbCfg.Type == utils.MetaPostgres {
if !utils.IsSliceMember([]string{utils.PostgresSSLModeDisable, utils.PostgressSSLModeAllow,
utils.PostgresSSLModePrefer, utils.PostgressSSLModeRequire, utils.PostgresSSLModeVerifyCa,
utils.PostgresSSLModeVerifyFull}, cfg.storDbCfg.Opts.PgSSLMode) {
diff --git a/config/configsanity_test.go b/config/configsanity_test.go
index b530a301a..939dbbf4e 100644
--- a/config/configsanity_test.go
+++ b/config/configsanity_test.go
@@ -1672,7 +1672,7 @@ func TestConfigSanityRegistrarCDispatcher(t *testing.T) {
func TestConfigSanityStorDB(t *testing.T) {
cfg = NewDefaultCGRConfig()
cfg.storDbCfg = &StorDbCfg{
- Type: utils.Postgres,
+ Type: utils.MetaPostgres,
Opts: &StorDBOpts{
PgSSLMode: "wrongSSLMode",
},
diff --git a/config/datadbcfg.go b/config/datadbcfg.go
index c7dac23be..42180dbab 100644
--- a/config/datadbcfg.go
+++ b/config/datadbcfg.go
@@ -128,7 +128,11 @@ func (dbcfg *DataDbCfg) loadFromJSONCfg(jsnDbCfg *DbJsonCfg) (err error) {
return
}
if jsnDbCfg.Db_type != nil {
- dbcfg.Type = strings.TrimPrefix(*jsnDbCfg.Db_type, "*")
+ if !strings.HasPrefix(*jsnDbCfg.Db_type, "*") {
+ dbcfg.Type = fmt.Sprintf("*%v", *jsnDbCfg.Db_type)
+ } else {
+ dbcfg.Type = *jsnDbCfg.Db_type
+ }
}
if jsnDbCfg.Db_host != nil {
dbcfg.Host = *jsnDbCfg.Db_host
diff --git a/config/migratorcfg.go b/config/migratorcfg.go
index 9079ad442..0843a6048 100644
--- a/config/migratorcfg.go
+++ b/config/migratorcfg.go
@@ -19,6 +19,7 @@ along with this program. If not, see
package config
import (
+ "fmt"
"strings"
"github.com/cgrates/cgrates/utils"
@@ -49,7 +50,11 @@ func (mg *MigratorCgrCfg) loadFromJSONCfg(jsnCfg *MigratorCfgJson) (err error) {
return
}
if jsnCfg.Out_dataDB_type != nil {
- mg.OutDataDBType = strings.TrimPrefix(*jsnCfg.Out_dataDB_type, "*")
+ if !strings.HasPrefix(*jsnCfg.Out_dataDB_type, "*") {
+ mg.OutDataDBType = fmt.Sprintf("*%v", *jsnCfg.Out_dataDB_type)
+ } else {
+ mg.OutDataDBType = *jsnCfg.Out_dataDB_type
+ }
}
if jsnCfg.Out_dataDB_host != nil {
mg.OutDataDBHost = *jsnCfg.Out_dataDB_host
@@ -70,7 +75,11 @@ func (mg *MigratorCgrCfg) loadFromJSONCfg(jsnCfg *MigratorCfgJson) (err error) {
mg.OutDataDBEncoding = strings.TrimPrefix(*jsnCfg.Out_dataDB_encoding, "*")
}
if jsnCfg.Out_storDB_type != nil {
- mg.OutStorDBType = *jsnCfg.Out_storDB_type
+ if !strings.HasPrefix(*jsnCfg.Out_storDB_type, "*") {
+ mg.OutStorDBType = fmt.Sprintf("*%v", *jsnCfg.Out_storDB_type)
+ } else {
+ mg.OutStorDBType = *jsnCfg.Out_storDB_type
+ }
}
if jsnCfg.Out_storDB_host != nil {
mg.OutStorDBHost = *jsnCfg.Out_storDB_host
diff --git a/config/migratorcfg_test.go b/config/migratorcfg_test.go
index c839c88b6..7d4dee1a3 100644
--- a/config/migratorcfg_test.go
+++ b/config/migratorcfg_test.go
@@ -27,14 +27,14 @@ import (
func TestMigratorCgrCfgloadFromJsonCfg(t *testing.T) {
cfgJSON := &MigratorCfgJson{
- Out_dataDB_type: utils.StringPointer(utils.Redis),
+ Out_dataDB_type: utils.StringPointer(utils.MetaRedis),
Out_dataDB_host: utils.StringPointer("127.0.0.1"),
Out_dataDB_port: utils.StringPointer("6379"),
Out_dataDB_name: utils.StringPointer("10"),
Out_dataDB_user: utils.StringPointer(utils.CGRateSLwr),
Out_dataDB_password: utils.StringPointer(utils.EmptyString),
Out_dataDB_encoding: utils.StringPointer(utils.MsgPack),
- Out_storDB_type: utils.StringPointer(utils.MySQL),
+ Out_storDB_type: utils.StringPointer(utils.MetaMySQL),
Out_storDB_host: utils.StringPointer("127.0.0.1"),
Out_storDB_port: utils.StringPointer("3306"),
Out_storDB_name: utils.StringPointer(utils.CGRateSLwr),
@@ -49,14 +49,14 @@ func TestMigratorCgrCfgloadFromJsonCfg(t *testing.T) {
},
}
expected := &MigratorCgrCfg{
- OutDataDBType: utils.Redis,
+ OutDataDBType: utils.MetaRedis,
OutDataDBHost: "127.0.0.1",
OutDataDBPort: "6379",
OutDataDBName: "10",
OutDataDBUser: utils.CGRateSLwr,
OutDataDBPassword: utils.EmptyString,
OutDataDBEncoding: utils.MsgPack,
- OutStorDBType: utils.MySQL,
+ OutStorDBType: utils.MetaMySQL,
OutStorDBHost: "127.0.0.1",
OutStorDBPort: "3306",
OutStorDBName: utils.CGRateSLwr,
@@ -275,14 +275,14 @@ func TestMigratorCgrCfgAsMapInterface2(t *testing.T) {
func TestMigratorCgrCfgClone(t *testing.T) {
sa := &MigratorCgrCfg{
- OutDataDBType: utils.Redis,
+ OutDataDBType: utils.MetaRedis,
OutDataDBHost: "127.0.0.1",
OutDataDBPort: "6379",
OutDataDBName: "10",
OutDataDBUser: utils.CGRateSLwr,
OutDataDBPassword: utils.EmptyString,
OutDataDBEncoding: utils.MsgPack,
- OutStorDBType: utils.MySQL,
+ OutStorDBType: utils.MetaMySQL,
OutStorDBHost: "127.0.0.1",
OutStorDBPort: "3306",
OutStorDBName: utils.CGRateSLwr,
diff --git a/config/stordbcfg.go b/config/stordbcfg.go
index 99537313d..22dcdbf86 100644
--- a/config/stordbcfg.go
+++ b/config/stordbcfg.go
@@ -92,7 +92,11 @@ func (dbcfg *StorDbCfg) loadFromJSONCfg(jsnDbCfg *DbJsonCfg) (err error) {
return nil
}
if jsnDbCfg.Db_type != nil {
- dbcfg.Type = strings.TrimPrefix(*jsnDbCfg.Db_type, "*")
+ if !strings.HasPrefix(*jsnDbCfg.Db_type, "*") {
+ dbcfg.Type = fmt.Sprintf("*%v", *jsnDbCfg.Db_type)
+ } else {
+ dbcfg.Type = *jsnDbCfg.Db_type
+ }
}
if jsnDbCfg.Db_host != nil {
dbcfg.Host = *jsnDbCfg.Db_host
diff --git a/config/stordbcfg_test.go b/config/stordbcfg_test.go
index e10dda541..4a25877ba 100644
--- a/config/stordbcfg_test.go
+++ b/config/stordbcfg_test.go
@@ -27,7 +27,7 @@ import (
func TestStoreDbCfgloadFromJsonCfgCase1(t *testing.T) {
cfgJSON := &DbJsonCfg{
- Db_type: utils.StringPointer(utils.MySQL),
+ Db_type: utils.StringPointer(utils.MetaMySQL),
Db_host: utils.StringPointer("127.0.0.1"),
Db_port: utils.IntPointer(-1),
Db_name: utils.StringPointer(utils.CGRateSLwr),
@@ -56,7 +56,7 @@ func TestStoreDbCfgloadFromJsonCfgCase1(t *testing.T) {
},
}
expected := &StorDbCfg{
- Type: utils.MySQL,
+ Type: utils.MetaMySQL,
Host: "127.0.0.1",
Port: "-1",
Name: utils.CGRateSLwr,
@@ -289,7 +289,7 @@ func TestStorDbCfgAsMapInterface(t *testing.T) {
func TestStorDbCfgClone(t *testing.T) {
ban := &StorDbCfg{
- Type: utils.MySQL,
+ Type: utils.MetaMySQL,
Host: "127.0.0.1",
Port: "-1",
Name: utils.CGRateSLwr,
diff --git a/engine/libtest.go b/engine/libtest.go
index 04d5d50b9..ff2b8a11c 100644
--- a/engine/libtest.go
+++ b/engine/libtest.go
@@ -27,6 +27,7 @@ import (
"os"
"os/exec"
"path"
+ "strings"
"time"
"github.com/cgrates/cgrates/config"
@@ -314,11 +315,12 @@ func InitStorDb(cfg *config.CGRConfig) error {
if err != nil {
return err
}
+ dbPath := strings.Trim(cfg.StorDbCfg().Type, "*")
if err := storDb.Flush(path.Join(cfg.DataFolderPath, "storage",
- cfg.StorDbCfg().Type)); err != nil {
+ dbPath)); err != nil {
return err
}
- if utils.IsSliceMember([]string{utils.Mongo, utils.MySQL, utils.Postgres},
+ if utils.IsSliceMember([]string{utils.MetaMongo, utils.MetaMySQL, utils.MetaPostgres},
cfg.StorDbCfg().Type) {
if err := SetDBVersions(storDb); err != nil {
return err
diff --git a/engine/storage_mongo_stordb.go b/engine/storage_mongo_stordb.go
index 7d0e484c2..291ecd7ed 100644
--- a/engine/storage_mongo_stordb.go
+++ b/engine/storage_mongo_stordb.go
@@ -1598,5 +1598,5 @@ func (ms *MongoStorage) RemoveVersions(vrs Versions) (err error) {
}
func (ms *MongoStorage) GetStorageType() string {
- return utils.Mongo
+ return utils.MetaMongo
}
diff --git a/engine/storage_mysql.go b/engine/storage_mysql.go
index dae6b5e4a..6dcf8465f 100644
--- a/engine/storage_mysql.go
+++ b/engine/storage_mysql.go
@@ -109,5 +109,5 @@ func (msqlS *MySQLStorage) notExtraFieldsValueQry(field, value string) string {
}
func (msqlS *MySQLStorage) GetStorageType() string {
- return utils.MySQL
+ return utils.MetaMySQL
}
diff --git a/engine/storage_postgres.go b/engine/storage_postgres.go
index 5a72706cf..91291ee6e 100644
--- a/engine/storage_postgres.go
+++ b/engine/storage_postgres.go
@@ -98,5 +98,5 @@ func (poS *PostgresStorage) notExtraFieldsValueQry(field, value string) string {
}
func (poS *PostgresStorage) GetStorageType() string {
- return utils.Postgres
+ return utils.MetaPostgres
}
diff --git a/engine/storage_redis.go b/engine/storage_redis.go
index 0d5285199..b3a6ec273 100644
--- a/engine/storage_redis.go
+++ b/engine/storage_redis.go
@@ -1124,7 +1124,7 @@ func (rs *RedisStorage) RemoveDispatcherHostDrv(tenant, id string) (err error) {
}
func (rs *RedisStorage) GetStorageType() string {
- return utils.Redis
+ return utils.MetaRedis
}
func (rs *RedisStorage) GetItemLoadIDsDrv(itemIDPrefix string) (loadIDs map[string]int64, err error) {
diff --git a/engine/storage_utils.go b/engine/storage_utils.go
index b4ec76e8a..bcae67497 100644
--- a/engine/storage_utils.go
+++ b/engine/storage_utils.go
@@ -35,7 +35,7 @@ func NewDataDBConn(dbType, host, port, name, user,
pass, marshaler string, opts *config.DataDBOpts,
itmsCfg map[string]*config.ItemOpt) (d DataDB, err error) {
switch dbType {
- case utils.Redis:
+ case utils.MetaRedis:
var dbNo int
dbNo, err = strconv.Atoi(name)
if err != nil {
@@ -49,9 +49,9 @@ func NewDataDBConn(dbType, host, port, name, user,
opts.RedisSentinel, opts.RedisCluster, opts.RedisClusterSync, opts.RedisClusterOndownDelay,
opts.RedisConnectTimeout, opts.RedisReadTimeout, opts.RedisWriteTimeout, opts.RedisTLS,
opts.RedisClientCertificate, opts.RedisClientKey, opts.RedisCACertificate)
- case utils.Mongo:
+ case utils.MetaMongo:
d, err = NewMongoStorage(host, port, name, user, pass, marshaler, utils.DataDB, nil, opts.MongoQueryTimeout)
- case utils.Internal:
+ case utils.MetaInternal:
d = NewInternalDB(nil, nil, true, itmsCfg)
default:
err = fmt.Errorf("unsupported db_type <%s>", dbType)
@@ -64,19 +64,19 @@ func NewStorDBConn(dbType, host, port, name, user, pass, marshaler string,
stringIndexedFields, prefixIndexedFields []string,
opts *config.StorDBOpts, itmsCfg map[string]*config.ItemOpt) (db StorDB, err error) {
switch dbType {
- case utils.Mongo:
+ case utils.MetaMongo:
db, err = NewMongoStorage(host, port, name, user, pass, marshaler, utils.StorDB, stringIndexedFields, opts.MongoQueryTimeout)
- case utils.Postgres:
+ case utils.MetaPostgres:
db, err = NewPostgresStorage(host, port, name, user, pass, opts.PgSSLMode,
opts.SQLMaxOpenConns, opts.SQLMaxIdleConns, opts.SQLConnMaxLifetime)
- case utils.MySQL:
+ case utils.MetaMySQL:
db, err = NewMySQLStorage(host, port, name, user, pass, opts.SQLMaxOpenConns, opts.SQLMaxIdleConns,
opts.SQLConnMaxLifetime, opts.MySQLLocation, opts.MySQLDSNParams)
- case utils.Internal:
+ case utils.MetaInternal:
db = NewInternalDB(stringIndexedFields, prefixIndexedFields, false, itmsCfg)
default:
- err = fmt.Errorf("unknown db '%s' valid options are [%s, %s, %s, %s]",
- dbType, utils.MySQL, utils.Mongo, utils.Postgres, utils.Internal)
+ err = fmt.Errorf("unknown db 1'%s' valid options are [%s, %s, %s, %s]",
+ dbType, utils.MetaMySQL, utils.MetaMongo, utils.MetaPostgres, utils.MetaInternal)
}
return
}
diff --git a/engine/version.go b/engine/version.go
index ba509b4c8..aa8456e54 100644
--- a/engine/version.go
+++ b/engine/version.go
@@ -123,17 +123,17 @@ func OverwriteDBVersions(storage Storage) (err error) {
func (vers Versions) Compare(curent Versions, storType string, isDataDB bool) string {
var message map[string]string
switch storType {
- case utils.Mongo:
+ case utils.MetaMongo:
if isDataDB {
message = dataDBVers
} else {
message = storDBVers
}
- case utils.Internal:
+ case utils.MetaInternal:
message = allVers
- case utils.Postgres, utils.MySQL:
+ case utils.MetaPostgres, utils.MetaMySQL:
message = storDBVers
- case utils.Redis:
+ case utils.MetaRedis:
message = dataDBVers
}
for subsis, reason := range message {
@@ -217,16 +217,16 @@ func CurrentAllDBVersions() Versions {
// CurrentDBVersions returns versions based on dbType
func CurrentDBVersions(storType string, isDataDB bool) Versions {
switch storType {
- case utils.Mongo:
+ case utils.MetaMongo:
if isDataDB {
return CurrentDataDBVersions()
}
return CurrentStorDBVersions()
- case utils.Internal:
+ case utils.MetaInternal:
return CurrentAllDBVersions()
- case utils.Postgres, utils.MySQL:
+ case utils.MetaPostgres, utils.MetaMySQL:
return CurrentStorDBVersions()
- case utils.Redis:
+ case utils.MetaRedis:
return CurrentDataDBVersions()
}
return nil
diff --git a/engine/version_test.go b/engine/version_test.go
index d0a20eb4c..b7ca3c4be 100644
--- a/engine/version_test.go
+++ b/engine/version_test.go
@@ -49,37 +49,37 @@ func TestVersionCompare(t *testing.T) {
utils.SharedGroups: 2, utils.CostDetails: 2,
utils.SessionSCosts: 2}
- message1 := y.Compare(x, utils.Mongo, true)
+ message1 := y.Compare(x, utils.MetaMongo, true)
if message1 != "cgr-migrator -exec=*accounts" {
t.Errorf("Error failed to compare to curent version expected: %s received: %s", "cgr-migrator -exec=*accounts", message1)
}
- message2 := z.Compare(x, utils.Mongo, true)
+ message2 := z.Compare(x, utils.MetaMongo, true)
if message2 != "cgr-migrator -exec=*action_plans" {
t.Errorf("Error failed to compare to curent version expected: %s received: %s", "cgr-migrator -exec=*action_plans", message2)
}
- message3 := q.Compare(x, utils.Mongo, true)
+ message3 := q.Compare(x, utils.MetaMongo, true)
if message3 != "cgr-migrator -exec=*shared_groups" {
t.Errorf("Error failed to compare to curent version expected: %s received: %s", "cgr-migrator -exec=*shared_groups", message3)
}
- message4 := c.Compare(x, utils.Mongo, false)
+ message4 := c.Compare(x, utils.MetaMongo, false)
if message4 != "cgr-migrator -exec=*cost_details" {
t.Errorf("Error failed to compare to curent version expected: %s received: %s", "cgr-migrator -exec=*cost_details", message4)
}
- message5 := a.Compare(b, utils.MySQL, false)
+ message5 := a.Compare(b, utils.MetaMySQL, false)
if message5 != "cgr-migrator -exec=*sessions_costs" {
t.Errorf("Error failed to compare to curent version expected: %s received: %s", "cgr-migrator -exec=*sessions_costs", message5)
}
- message6 := a.Compare(b, utils.Postgres, false)
+ message6 := a.Compare(b, utils.MetaPostgres, false)
if message6 != "cgr-migrator -exec=*sessions_costs" {
t.Errorf("Error failed to compare to curent version expected: %s received: %s", "cgr-migrator -exec=*sessions_costs", message6)
}
- message7 := y.Compare(x, utils.Redis, true)
+ message7 := y.Compare(x, utils.MetaRedis, true)
if message7 != "cgr-migrator -exec=*accounts" {
t.Errorf("Error failed to compare to curent version expected: %s received: %s", "cgr-migrator -exec=*accounts", message7)
}
y[utils.Accounts] = 2
- message8 := y.Compare(x, utils.Redis, true)
+ message8 := y.Compare(x, utils.MetaRedis, true)
if message8 != utils.EmptyString {
t.Errorf("Expected %+v, received %+v", utils.EmptyString, message8)
}
@@ -105,19 +105,19 @@ func TestCurrentDBVersions(t *testing.T) {
utils.TpResource: 1, utils.TpDestinations: 1, utils.TpRatingPlan: 1,
utils.TpRatingProfile: 1, utils.TpChargers: 1, utils.TpDispatchers: 1,
}
- if vrs := CurrentDBVersions(utils.Mongo, true); !reflect.DeepEqual(expVersDataDB, vrs) {
+ if vrs := CurrentDBVersions(utils.MetaMongo, true); !reflect.DeepEqual(expVersDataDB, vrs) {
t.Errorf("Expectred %+v, received %+v", expVersDataDB, vrs)
}
- if vrs := CurrentDBVersions(utils.Mongo, false); !reflect.DeepEqual(expVersStorDB, vrs) {
+ if vrs := CurrentDBVersions(utils.MetaMongo, false); !reflect.DeepEqual(expVersStorDB, vrs) {
t.Errorf("Expectred %+v, received %+v", expVersStorDB, vrs)
}
- if vrs := CurrentDBVersions(utils.Postgres, false); !reflect.DeepEqual(expVersStorDB, vrs) {
+ if vrs := CurrentDBVersions(utils.MetaPostgres, false); !reflect.DeepEqual(expVersStorDB, vrs) {
t.Errorf("Expectred %+v, received %+v", expVersStorDB, vrs)
}
- if vrs := CurrentDBVersions(utils.Redis, true); !reflect.DeepEqual(expVersDataDB, vrs) {
+ if vrs := CurrentDBVersions(utils.MetaRedis, true); !reflect.DeepEqual(expVersDataDB, vrs) {
t.Errorf("Expectred %+v, received %+v", expVersDataDB, vrs)
}
@@ -127,7 +127,7 @@ func TestCurrentDBVersions(t *testing.T) {
//Compare AllVersions
expStr := "cgr-migrator"
- if rcv := expVersDataDB.Compare(expVersStorDB, utils.Internal, true); !strings.Contains(rcv, expStr) {
+ if rcv := expVersDataDB.Compare(expVersStorDB, utils.MetaInternal, true); !strings.Contains(rcv, expStr) {
t.Errorf("Expected %+v, received %+v", expStr, rcv)
}
}
@@ -188,7 +188,7 @@ func (sM *storageMock) SelectDatabase(dbName string) (err error) {
func (sM *storageMock) GetStorageType() string {
switch sM.testcase {
case "Compare returns non-nil message":
- return utils.Postgres
+ return utils.MetaPostgres
}
return ""
}
diff --git a/engine/z_stordb_it_test.go b/engine/z_stordb_it_test.go
index d0f441e25..015924c88 100644
--- a/engine/z_stordb_it_test.go
+++ b/engine/z_stordb_it_test.go
@@ -130,14 +130,14 @@ func TestStorDBit(t *testing.T) {
func testStorDBitIsDBEmpty(t *testing.T) {
x := storDB.GetStorageType()
switch x {
- case utils.Mongo:
+ case utils.MetaMongo:
test, err := storDB.IsDBEmpty()
if err != nil {
t.Error(err)
} else if test != true {
t.Errorf("Expecting: true got :%+v", test)
}
- case utils.Postgres, utils.MySQL:
+ case utils.MetaPostgres, utils.MetaMySQL:
test, err := storDB.IsDBEmpty()
if err != nil {
t.Error(err)
diff --git a/engine/z_versions_it_test.go b/engine/z_versions_it_test.go
index 9f2b00e05..3de1784a9 100644
--- a/engine/z_versions_it_test.go
+++ b/engine/z_versions_it_test.go
@@ -152,7 +152,7 @@ func testVersion(t *testing.T) {
testVersion = allVersions
testVersion[utils.Accounts] = 1
test = "Migration needed: please backup cgr data and run : "
- case utils.Mongo, utils.Redis:
+ case utils.MetaMongo, utils.MetaRedis:
currentVersion = dataDbVersions
testVersion = dataDbVersions
testVersion[utils.Accounts] = 1
@@ -189,12 +189,12 @@ func testVersion(t *testing.T) {
}
storType = storageDb.GetStorageType()
switch storType {
- case utils.Internal:
+ case utils.MetaInternal:
currentVersion = allVersions
testVersion = allVersions
testVersion[utils.Accounts] = 1
test = "Migration needed: please backup cgr data and run : "
- case utils.Mongo, utils.Postgres, utils.MySQL:
+ case utils.MetaMongo, utils.MetaPostgres, utils.MetaMySQL:
currentVersion = storDbVersions
testVersion = allVersions
testVersion[utils.CostDetails] = 1
diff --git a/migrator/accounts2_it_test.go b/migrator/accounts2_it_test.go
index 0f7b861db..882646e9d 100644
--- a/migrator/accounts2_it_test.go
+++ b/migrator/accounts2_it_test.go
@@ -124,13 +124,13 @@ func testAcc2ITFlush(t *testing.T) {
if err := engine.SetDBVersions(acc2Migrator.dmIN.DataManager().DataDB()); err != nil {
t.Error("Error ", err.Error())
}
- if acc2Migrator.dmOut.DataManager().DataDB().GetStorageType() != utils.Redis {
+ if acc2Migrator.dmOut.DataManager().DataDB().GetStorageType() != utils.MetaRedis {
t.Errorf("Unexpected datadb type : %+v", acc2Migrator.dmOut.DataManager().DataDB().GetStorageType())
}
- if acc2Migrator.storDBIn.StorDB().GetStorageType() != utils.Internal {
+ if acc2Migrator.storDBIn.StorDB().GetStorageType() != utils.MetaInternal {
t.Errorf("Unexpected datadb type : %+v", acc2Migrator.storDBIn.StorDB().GetStorageType())
}
- if acc2Migrator.storDBOut.StorDB().GetStorageType() != utils.Internal {
+ if acc2Migrator.storDBOut.StorDB().GetStorageType() != utils.MetaInternal {
t.Errorf("Unexpected datadb type : %+v", acc2Migrator.storDBOut.StorDB().GetStorageType())
}
}
diff --git a/migrator/action_plan.go b/migrator/action_plan.go
index be986e912..80c2b825c 100644
--- a/migrator/action_plan.go
+++ b/migrator/action_plan.go
@@ -102,7 +102,7 @@ func (m *Migrator) migrateActionPlans() (err error) {
if vrs, err = m.getVersions(utils.ActionPlans); err != nil {
return
}
- if m.dmIN.DataManager().DataDB().GetStorageType() == utils.Redis { // if redis rebuild action plans indexes
+ if m.dmIN.DataManager().DataDB().GetStorageType() == utils.MetaRedis { // if redis rebuild action plans indexes
redisDB, can := m.dmIN.DataManager().DataDB().(*engine.RedisStorage)
if !can {
return fmt.Errorf("Storage type %s could not be casted to <*engine.RedisStorage>", m.dmIN.DataManager().DataDB().GetStorageType())
diff --git a/migrator/migrator.go b/migrator/migrator.go
index bd639d7f8..709da5540 100644
--- a/migrator/migrator.go
+++ b/migrator/migrator.go
@@ -88,22 +88,22 @@ func (m *Migrator) Migrate(taskIDs []string) (err error, stats map[string]int) {
fmt.Sprintf("error: <%s> when seting versions for StorDB", err.Error())), nil
}
case utils.MetaEnsureIndexes:
- if m.storDBOut.StorDB().GetStorageType() == utils.Mongo {
+ if m.storDBOut.StorDB().GetStorageType() == utils.MetaMongo {
mgo := m.storDBOut.StorDB().(*engine.MongoStorage)
if err = mgo.EnsureIndexes(); err != nil {
return
}
} else {
- log.Printf("The StorDB type has to be %s .\n ", utils.Mongo)
+ log.Printf("The StorDB type has to be %s .\n ", utils.MetaMongo)
}
- if m.dmOut.DataManager().DataDB().GetStorageType() == utils.Mongo {
+ if m.dmOut.DataManager().DataDB().GetStorageType() == utils.MetaMongo {
mgo := m.dmOut.DataManager().DataDB().(*engine.MongoStorage)
if err = mgo.EnsureIndexes(); err != nil {
return
}
} else {
- log.Printf("The DataDB type has to be %s .\n ", utils.Mongo)
+ log.Printf("The DataDB type has to be %s .\n ", utils.MetaMongo)
}
case utils.MetaCDRs:
err = m.migrateCDRs()
@@ -333,7 +333,7 @@ func (m *Migrator) Migrate(taskIDs []string) (err error, stats map[string]int) {
}
func (m *Migrator) ensureIndexesDataDB(cols ...string) error {
- if m.dmOut.DataManager().DataDB().GetStorageType() != utils.Mongo {
+ if m.dmOut.DataManager().DataDB().GetStorageType() != utils.MetaMongo {
return nil
}
mgo := m.dmOut.DataManager().DataDB().(*engine.MongoStorage)
@@ -341,7 +341,7 @@ func (m *Migrator) ensureIndexesDataDB(cols ...string) error {
}
func (m *Migrator) ensureIndexesStorDB(cols ...string) error {
- if m.storDBOut.StorDB().GetStorageType() != utils.Mongo {
+ if m.storDBOut.StorDB().GetStorageType() != utils.MetaMongo {
return nil
}
mgo := m.storDBOut.StorDB().(*engine.MongoStorage)
diff --git a/migrator/migrator_utils.go b/migrator/migrator_utils.go
index 033062464..321970260 100644
--- a/migrator/migrator_utils.go
+++ b/migrator/migrator_utils.go
@@ -41,15 +41,15 @@ func NewMigratorDataDB(db_type, host, port, name, user, pass,
}
dm := engine.NewDataManager(dbCon, cacheCfg, nil)
switch db_type {
- case utils.Redis:
+ case utils.MetaRedis:
db = newRedisMigrator(dm)
- case utils.Mongo:
+ case utils.MetaMongo:
db = newMongoMigrator(dm)
- case utils.Internal:
+ case utils.MetaInternal:
db = newInternalMigrator(dm)
default:
err = fmt.Errorf("unknown db '%s' valid options are '%s' or '%s or '%s'",
- db_type, utils.Redis, utils.Mongo, utils.Internal)
+ db_type, utils.MetaRedis, utils.MetaMongo, utils.MetaInternal)
}
return
}
@@ -63,17 +63,17 @@ func NewMigratorStorDB(db_type, host, port, name, user, pass, marshaler string,
return
}
switch db_type {
- case utils.Mongo:
+ case utils.MetaMongo:
db = newMongoStorDBMigrator(storDb)
- case utils.MySQL:
+ case utils.MetaMySQL:
db = newMigratorSQL(storDb)
- case utils.Postgres:
+ case utils.MetaPostgres:
db = newMigratorSQL(storDb)
- case utils.Internal:
+ case utils.MetaInternal:
db = newInternalStorDBMigrator(storDb)
default:
err = fmt.Errorf("Unknown db '%s' valid options are [%s, %s, %s, %s]",
- db_type, utils.MySQL, utils.Mongo, utils.Postgres, utils.Internal)
+ db_type, utils.MetaMySQL, utils.MetaMongo, utils.MetaPostgres, utils.MetaInternal)
}
return
}
diff --git a/migrator/storage_sql.go b/migrator/storage_sql.go
index 3b42dd3ed..33c443eb3 100644
--- a/migrator/storage_sql.go
+++ b/migrator/storage_sql.go
@@ -97,7 +97,7 @@ func (mgSQL *migratorSQL) remV1CDRs(v1Cdr *v1Cdrs) (err error) {
func (mgSQL *migratorSQL) renameV1SMCosts() (err error) {
qry := "RENAME TABLE sm_costs TO session_costs;"
- if mgSQL.StorDB().GetStorageType() == utils.Postgres {
+ if mgSQL.StorDB().GetStorageType() == utils.MetaPostgres {
qry = "ALTER TABLE sm_costs RENAME TO session_costs"
}
if _, err := mgSQL.sqlStorage.Db.Exec(qry); err != nil {
@@ -108,7 +108,7 @@ func (mgSQL *migratorSQL) renameV1SMCosts() (err error) {
func (mgSQL *migratorSQL) createV1SMCosts() (err error) {
qry := "CREATE TABLE sm_costs ( id int(11) NOT NULL AUTO_INCREMENT, cgrid varchar(40) NOT NULL, run_id varchar(64) NOT NULL, origin_host varchar(64) NOT NULL, origin_id varchar(128) NOT NULL, cost_source varchar(64) NOT NULL, `usage` BIGINT NOT NULL, cost_details MEDIUMTEXT, created_at TIMESTAMP NULL,deleted_at TIMESTAMP NULL, PRIMARY KEY (`id`),UNIQUE KEY costid (cgrid, run_id),KEY origin_idx (origin_host, origin_id),KEY run_origin_idx (run_id, origin_id),KEY deleted_at_idx (deleted_at));"
- if mgSQL.StorDB().GetStorageType() == utils.Postgres {
+ if mgSQL.StorDB().GetStorageType() == utils.MetaPostgres {
qry = `
CREATE TABLE sm_costs (
id SERIAL PRIMARY KEY,
diff --git a/services/datadb.go b/services/datadb.go
index d7d8cbbdc..3a65aa21a 100644
--- a/services/datadb.go
+++ b/services/datadb.go
@@ -93,7 +93,7 @@ func (db *DataDBService) Reload() (err error) {
db.oldDBCfg = db.cfg.DataDbCfg().Clone()
return
}
- if db.cfg.DataDbCfg().Type == utils.Mongo {
+ if db.cfg.DataDbCfg().Type == utils.MetaMongo {
mgo, canCast := db.dm.DataDB().(*engine.MongoStorage)
if !canCast {
return fmt.Errorf("can't conver DataDB of type %s to MongoStorage",
@@ -165,7 +165,7 @@ func (db *DataDBService) needsConnectionReload() bool {
}
}
}
- return db.oldDBCfg.Type == utils.Redis &&
+ return db.oldDBCfg.Type == utils.MetaRedis &&
(db.oldDBCfg.Opts.RedisMaxConns != db.cfg.DataDbCfg().Opts.RedisMaxConns ||
db.oldDBCfg.Opts.RedisConnectAttempts != db.cfg.DataDbCfg().Opts.RedisConnectAttempts ||
db.oldDBCfg.Opts.RedisSentinel != db.cfg.DataDbCfg().Opts.RedisSentinel ||
diff --git a/services/datadb_it_test.go b/services/datadb_it_test.go
index 2cee8a55c..d92344579 100644
--- a/services/datadb_it_test.go
+++ b/services/datadb_it_test.go
@@ -83,7 +83,7 @@ func TestDataDBReload(t *testing.T) {
t.Errorf("\nExpecting <%+v>,\n Received <%+v>", db.dm, getDm)
}
oldcfg := &config.DataDbCfg{
- Type: utils.Mongo,
+ Type: utils.MetaMongo,
Host: "127.0.0.1",
Port: "27017",
Name: "10",
@@ -211,7 +211,7 @@ func TestDataDBReloadBadType(t *testing.T) {
cM := engine.NewConnManager(cfg, nil)
db := NewDataDBService(cfg, cM, srvDep)
db.oldDBCfg = &config.DataDbCfg{
- Type: utils.Mongo,
+ Type: utils.MetaMongo,
Host: "127.0.0.1",
Port: "27017",
Name: "10",
@@ -333,7 +333,7 @@ func TestDataDBReloadErrorMarsheler(t *testing.T) {
t.Errorf("Expected service to be down")
}
db.oldDBCfg = &config.DataDbCfg{
- Type: utils.Mongo,
+ Type: utils.MetaMongo,
Host: "127.0.0.1",
Port: "27017",
Name: "10",
@@ -550,7 +550,7 @@ func TestDataDBReloadCastError(t *testing.T) {
cM := engine.NewConnManager(cfg, nil)
db := NewDataDBService(cfg, cM, srvDep)
db.oldDBCfg = &config.DataDbCfg{
- Type: utils.Mongo,
+ Type: utils.MetaMongo,
Host: "127.0.0.1",
Port: "27017",
Name: "10",
@@ -691,7 +691,7 @@ func TestDataDBReloadError(t *testing.T) {
db := NewDataDBService(cfg, cM, srvDep)
cfg.GeneralCfg().DBDataEncoding = utils.JSON
db.oldDBCfg = &config.DataDbCfg{
- Type: utils.Mongo,
+ Type: utils.MetaMongo,
Host: "127.0.0.1",
Port: "27017",
Name: "10",
diff --git a/services/datadb_test.go b/services/datadb_test.go
index d1f157ad9..331b4b2d9 100644
--- a/services/datadb_test.go
+++ b/services/datadb_test.go
@@ -48,7 +48,7 @@ func TestDataDBCoverage(t *testing.T) {
t.Errorf("Expected service to be running")
}
oldcfg := &config.DataDbCfg{
- Type: utils.Mongo,
+ Type: utils.MetaMongo,
Host: "127.0.0.1",
Port: "27017",
Name: "10",
diff --git a/services/stordb.go b/services/stordb.go
index c2e8f0672..1e137e380 100644
--- a/services/stordb.go
+++ b/services/stordb.go
@@ -94,15 +94,15 @@ func (db *StorDBService) Reload() (err error) {
db.sync() // sync only if needed
return
}
- if db.cfg.StorDbCfg().Type == utils.Mongo {
+ if db.cfg.StorDbCfg().Type == utils.MetaMongo {
mgo, canCast := db.db.(*engine.MongoStorage)
if !canCast {
return fmt.Errorf("can't conver StorDB of type %s to MongoStorage",
db.cfg.StorDbCfg().Type)
}
mgo.SetTTL(db.cfg.StorDbCfg().Opts.MongoQueryTimeout)
- } else if db.cfg.StorDbCfg().Type == utils.Postgres ||
- db.cfg.StorDbCfg().Type == utils.MySQL {
+ } else if db.cfg.StorDbCfg().Type == utils.MetaPostgres ||
+ db.cfg.StorDbCfg().Type == utils.MetaMySQL {
msql, canCast := db.db.(*engine.SQLStorage)
if !canCast {
return fmt.Errorf("can't conver StorDB of type %s to SQLStorage",
@@ -187,6 +187,6 @@ func (db *StorDBService) needsConnectionReload() bool {
db.oldDBCfg.Password != db.cfg.StorDbCfg().Password {
return true
}
- return db.cfg.StorDbCfg().Type == utils.Postgres &&
+ return db.cfg.StorDbCfg().Type == utils.MetaPostgres &&
db.oldDBCfg.Opts.PgSSLMode != db.cfg.StorDbCfg().Opts.PgSSLMode
}
diff --git a/utils/consts.go b/utils/consts.go
index 6fe50ef76..d4f73b3bd 100644
--- a/utils/consts.go
+++ b/utils/consts.go
@@ -246,6 +246,7 @@ const (
FWV = "fwv"
MetaCombimed = "*combimed"
MetaMongo = "*mongo"
+ MetaRedis = "*redis"
MetaPostgres = "*postgres"
MetaInternal = "*internal"
MetaLocalHost = "*localhost"