mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 18:16:24 +05:00
Prepared flatStore
This commit is contained in:
committed by
Dan Christian Bogos
parent
ef60112e6b
commit
3070139cb2
@@ -71,7 +71,7 @@ func (sqlEe *SQLEe) NewSQLEeURL(cgrCfg *config.CGRConfig) (dialect gorm.Dialecto
|
||||
password, _ := u.User.Password()
|
||||
|
||||
dbname := utils.SQLDefaultDBName
|
||||
if vals, has := cgrCfg.EEsCfg().Exporters[sqlEe.cfgIdx].Opts[utils.SQLDBName]; has {
|
||||
if vals, has := cgrCfg.EEsCfg().Exporters[sqlEe.cfgIdx].Opts[utils.SQLDBNameOpt]; has {
|
||||
dbname = utils.IfaceAsString(vals)
|
||||
}
|
||||
ssl := utils.SQLDefaultSSLMode
|
||||
@@ -79,8 +79,8 @@ func (sqlEe *SQLEe) NewSQLEeURL(cgrCfg *config.CGRConfig) (dialect gorm.Dialecto
|
||||
ssl = utils.IfaceAsString(vals)
|
||||
}
|
||||
// tableName is mandatory in opts
|
||||
if iface, has := cgrCfg.EEsCfg().Exporters[sqlEe.cfgIdx].Opts[utils.SQLTableName]; !has {
|
||||
return nil, utils.NewErrMandatoryIeMissing(utils.SQLTableName)
|
||||
if iface, has := cgrCfg.EEsCfg().Exporters[sqlEe.cfgIdx].Opts[utils.SQLTableNameOpt]; !has {
|
||||
return nil, utils.NewErrMandatoryIeMissing(utils.SQLTableNameOpt)
|
||||
} else {
|
||||
sqlEe.tableName = utils.IfaceAsString(iface)
|
||||
}
|
||||
|
||||
@@ -300,8 +300,8 @@ func TestOpenDB3Err(t *testing.T) {
|
||||
|
||||
func TestSQLExportEvent1(t *testing.T) {
|
||||
cgrCfg := config.NewDefaultCGRConfig()
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLTableName] = "expTable"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLDBName] = "cgrates"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLTableNameOpt] = "expTable"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLDBNameOpt] = "cgrates"
|
||||
cgrCfg.EEsCfg().Exporters[0].ExportPath = `mysql://cgrates:CGRateS.org@127.0.0.1:3306`
|
||||
cgrEv := new(utils.CGREvent)
|
||||
newIDb := engine.NewInternalDB(nil, nil, true)
|
||||
@@ -343,8 +343,8 @@ func TestSQLExportEvent1(t *testing.T) {
|
||||
|
||||
func TestSQLExportEvent2(t *testing.T) {
|
||||
cgrCfg := config.NewDefaultCGRConfig()
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLTableName] = "expTable"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLDBName] = "cgrates"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLTableNameOpt] = "expTable"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLDBNameOpt] = "cgrates"
|
||||
cgrCfg.EEsCfg().Exporters[0].ExportPath = `mysql://cgrates:CGRateS.org@127.0.0.1:3306`
|
||||
cgrEv := new(utils.CGREvent)
|
||||
newIDb := engine.NewInternalDB(nil, nil, true)
|
||||
@@ -386,8 +386,8 @@ func TestSQLExportEvent2(t *testing.T) {
|
||||
|
||||
func TestSQLExportEvent3(t *testing.T) {
|
||||
cgrCfg := config.NewDefaultCGRConfig()
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLTableName] = "expTable"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLDBName] = "cgrates"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLTableNameOpt] = "expTable"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLDBNameOpt] = "cgrates"
|
||||
cgrCfg.EEsCfg().Exporters[0].ExportPath = `mysql://cgrates:CGRateS.org@127.0.0.1:3306`
|
||||
cgrEv := new(utils.CGREvent)
|
||||
newIDb := engine.NewInternalDB(nil, nil, true)
|
||||
@@ -429,8 +429,8 @@ func TestSQLExportEvent3(t *testing.T) {
|
||||
|
||||
func TestSQLExportEvent4(t *testing.T) {
|
||||
cgrCfg := config.NewDefaultCGRConfig()
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLTableName] = "expTable"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLDBName] = "cgrates"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLTableNameOpt] = "expTable"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLDBNameOpt] = "cgrates"
|
||||
cgrCfg.EEsCfg().Exporters[0].ExportPath = `mysql://cgrates:CGRateS.org@127.0.0.1:3306`
|
||||
cgrEv := new(utils.CGREvent)
|
||||
newIDb := engine.NewInternalDB(nil, nil, true)
|
||||
|
||||
@@ -60,8 +60,8 @@ func TestSqlGetMetrics(t *testing.T) {
|
||||
|
||||
func TestNewSQLeUrl(t *testing.T) {
|
||||
cgrCfg := config.NewDefaultCGRConfig()
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLTableName] = "expTable"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLDBName] = "postgres"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLTableNameOpt] = "expTable"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLDBNameOpt] = "postgres"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SSLModeCfg] = "test"
|
||||
newIDb := engine.NewInternalDB(nil, nil, true)
|
||||
newDM := engine.NewDataManager(newIDb, cgrCfg.CacheCfg(), nil)
|
||||
@@ -84,8 +84,8 @@ func TestNewSQLeUrl(t *testing.T) {
|
||||
|
||||
func TestNewSQLeUrlSQL(t *testing.T) {
|
||||
cgrCfg := config.NewDefaultCGRConfig()
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLTableName] = "expTable"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLDBName] = "mysql"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLTableNameOpt] = "expTable"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLDBNameOpt] = "mysql"
|
||||
cgrCfg.EEsCfg().Exporters[0].ExportPath = `mysql://cgrates:CGRateS.org@127.0.0.1:3306`
|
||||
newIDb := engine.NewInternalDB(nil, nil, true)
|
||||
newDM := engine.NewDataManager(newIDb, cgrCfg.CacheCfg(), nil)
|
||||
@@ -110,8 +110,8 @@ func TestNewSQLeUrlSQL(t *testing.T) {
|
||||
|
||||
func TestNewSQLeUrlPostgres(t *testing.T) {
|
||||
cgrCfg := config.NewDefaultCGRConfig()
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLTableName] = "expTable"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLDBName] = "postgres"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLTableNameOpt] = "expTable"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLDBNameOpt] = "postgres"
|
||||
cgrCfg.EEsCfg().Exporters[0].ExportPath = `postgres://cgrates:CGRateS.org@127.0.0.1:3306`
|
||||
newIDb := engine.NewInternalDB(nil, nil, true)
|
||||
newDM := engine.NewDataManager(newIDb, cgrCfg.CacheCfg(), nil)
|
||||
@@ -136,8 +136,8 @@ func TestNewSQLeUrlPostgres(t *testing.T) {
|
||||
|
||||
func TestNewSQLeExportPathError(t *testing.T) {
|
||||
cgrCfg := config.NewDefaultCGRConfig()
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLTableName] = "expTable"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLDBName] = "postgres"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLTableNameOpt] = "expTable"
|
||||
cgrCfg.EEsCfg().Exporters[0].Opts[utils.SQLDBNameOpt] = "postgres"
|
||||
cgrCfg.EEsCfg().Exporters[0].ExportPath = ":foo"
|
||||
newIDb := engine.NewInternalDB(nil, nil, true)
|
||||
newDM := engine.NewDataManager(newIDb, cgrCfg.CacheCfg(), nil)
|
||||
|
||||
@@ -39,6 +39,13 @@ import (
|
||||
"github.com/cgrates/cgrates/utils"
|
||||
)
|
||||
|
||||
type fstRecord struct {
|
||||
inv []string
|
||||
bye []string
|
||||
ack []string
|
||||
fileName string
|
||||
}
|
||||
|
||||
func NewFlatstoreER(cfg *config.CGRConfig, cfgIdx int,
|
||||
rdrEvents chan *erEvent, rdrErr chan error,
|
||||
fltrS *engine.FilterS, rdrExit chan struct{}) (er EventReader, err error) {
|
||||
|
||||
@@ -268,7 +268,7 @@ func (rdr *SQLEventReader) setURL(inURL, outURL string, opts map[string]interfac
|
||||
rdr.connType = u.Scheme
|
||||
|
||||
dbname := utils.SQLDefaultDBName
|
||||
if vals, has := opts[utils.SQLDBName]; has {
|
||||
if vals, has := opts[utils.SQLDBNameOpt]; has {
|
||||
dbname = utils.IfaceAsString(vals)
|
||||
}
|
||||
ssl := utils.SQLDefaultSSLMode
|
||||
@@ -277,7 +277,7 @@ func (rdr *SQLEventReader) setURL(inURL, outURL string, opts map[string]interfac
|
||||
}
|
||||
|
||||
rdr.tableName = utils.CDRsTBL
|
||||
if vals, has := opts[utils.SQLTableName]; has {
|
||||
if vals, has := opts[utils.SQLTableNameOpt]; has {
|
||||
rdr.tableName = utils.IfaceAsString(vals)
|
||||
}
|
||||
switch rdr.connType {
|
||||
@@ -317,7 +317,7 @@ func (rdr *SQLEventReader) setURL(inURL, outURL string, opts map[string]interfac
|
||||
}
|
||||
|
||||
outDBname = utils.SQLDefaultDBName
|
||||
if vals, has := processedOpt[utils.SQLDBName]; has {
|
||||
if vals, has := processedOpt[utils.SQLDBNameOpt]; has {
|
||||
outDBname = utils.IfaceAsString(vals)
|
||||
}
|
||||
outSSL = utils.SQLDefaultSSLMode
|
||||
@@ -325,7 +325,7 @@ func (rdr *SQLEventReader) setURL(inURL, outURL string, opts map[string]interfac
|
||||
outSSL = utils.IfaceAsString(vals)
|
||||
}
|
||||
rdr.expTableName = utils.CDRsTBL
|
||||
if vals, has := processedOpt[utils.SQLTableName]; has {
|
||||
if vals, has := processedOpt[utils.SQLTableNameOpt]; has {
|
||||
rdr.expTableName = utils.IfaceAsString(vals)
|
||||
}
|
||||
|
||||
|
||||
@@ -41,13 +41,13 @@ func TestSQLSetURL(t *testing.T) {
|
||||
inURL := "*mysql://cgrates:CGRateS.org@127.0.0.1:3306"
|
||||
outURL := "*mysql://cgrates:CGRateS.org@127.0.0.1:3306"
|
||||
if err := sql.setURL(inURL, outURL, map[string]interface{}{
|
||||
utils.SQLDBName: "cgrates2",
|
||||
utils.SQLTableName: "cdrs2",
|
||||
"sslMode": "enabled",
|
||||
utils.SQLDBNameOpt: "cgrates2",
|
||||
utils.SQLTableNameOpt: "cdrs2",
|
||||
utils.SSLModeCfg: "enabled",
|
||||
|
||||
utils.SQLDBName + utils.ProcessedOpt: "cgrates3",
|
||||
utils.SQLTableName + utils.ProcessedOpt: "cdrs3",
|
||||
"sslModeProcessed": "enabled",
|
||||
utils.SQLDBNameOpt + utils.ProcessedOpt: "cgrates3",
|
||||
utils.SQLTableNameOpt + utils.ProcessedOpt: "cdrs3",
|
||||
utils.SSLModeCfg + utils.ProcessedOpt: "enabled",
|
||||
}); err != nil {
|
||||
t.Fatal(err)
|
||||
} else if expsql.connString != sql.connString {
|
||||
@@ -76,13 +76,13 @@ func TestSQLSetURL(t *testing.T) {
|
||||
inURL = "*postgres://cgrates:CGRateS.org@127.0.0.1:3306"
|
||||
outURL = "*postgres://cgrates:CGRateS.org@127.0.0.1:3306"
|
||||
if err := sql.setURL(inURL, outURL, map[string]interface{}{
|
||||
utils.SQLDBName: "cgrates2",
|
||||
utils.SQLTableName: "cdrs2",
|
||||
"sslMode": "enabled",
|
||||
utils.SQLDBNameOpt: "cgrates2",
|
||||
utils.SQLTableNameOpt: "cdrs2",
|
||||
utils.SSLModeCfg: "enabled",
|
||||
|
||||
utils.SQLDBName + utils.ProcessedOpt: "cgrates3",
|
||||
utils.SQLTableName + utils.ProcessedOpt: "cdrs3",
|
||||
"sslModeProcessed": "enabled",
|
||||
utils.SQLDBNameOpt + utils.ProcessedOpt: "cgrates3",
|
||||
utils.SQLTableNameOpt + utils.ProcessedOpt: "cdrs3",
|
||||
utils.SSLModeCfg + utils.ProcessedOpt: "enabled",
|
||||
}); err != nil {
|
||||
t.Fatal(err)
|
||||
} else if expsql.connString != sql.connString {
|
||||
@@ -111,13 +111,13 @@ func TestSQLSetURL(t *testing.T) {
|
||||
inURL = "*postgres://cgrates:CGRateS.org@127.0.0.1:3306"
|
||||
outURL = ""
|
||||
if err := sql.setURL(inURL, outURL, map[string]interface{}{
|
||||
utils.SQLDBName: "cgrates2",
|
||||
utils.SQLTableName: "cdrs2",
|
||||
"sslMode": "enabled",
|
||||
utils.SQLDBNameOpt: "cgrates2",
|
||||
utils.SQLTableNameOpt: "cdrs2",
|
||||
utils.SSLModeCfg: "enabled",
|
||||
|
||||
utils.SQLDBName + utils.ProcessedOpt: "cgrates2",
|
||||
utils.SQLTableName + utils.ProcessedOpt: "cdrs2",
|
||||
"sslModeProcessed": "enabled",
|
||||
utils.SQLDBNameOpt + utils.ProcessedOpt: "cgrates2",
|
||||
utils.SQLTableNameOpt + utils.ProcessedOpt: "cdrs2",
|
||||
utils.SSLModeCfg + utils.ProcessedOpt: "enabled",
|
||||
}); err != nil {
|
||||
t.Fatal(err)
|
||||
} else if expsql.connString != sql.connString {
|
||||
|
||||
@@ -2336,8 +2336,8 @@ const (
|
||||
SQLDefaultDBName = "cgrates"
|
||||
SQLDefaultSSLMode = "disable"
|
||||
|
||||
SQLDBName = "sqlDBName"
|
||||
SQLTableName = "sqlTableName"
|
||||
SQLDBNameOpt = "sqlDBName"
|
||||
SQLTableNameOpt = "sqlTableName"
|
||||
|
||||
// fileCSV
|
||||
RowLengthOpt = "RowLength"
|
||||
@@ -2353,6 +2353,8 @@ const (
|
||||
FlatstorePrfx = "fst"
|
||||
FstFailedCallsPrefixOpt = "fstFailedCallsPrefix"
|
||||
FstPartialRecordCacheOpt = "fstRecordCacheTTL"
|
||||
FstMethodOpt = "fstMethod" //
|
||||
FstMadatoryACKOpt = "fstMadatoryACK"
|
||||
|
||||
// fileXML
|
||||
XMLRootPathOpt = "xmlRootPath"
|
||||
|
||||
Reference in New Issue
Block a user