mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 18:16:24 +05:00
Add TTL parameter for *internal DB
This commit is contained in:
@@ -73,31 +73,31 @@ const CGRATES_CFG_JSON = `
|
||||
"remote_conns":[],
|
||||
"replication_conns":[],
|
||||
"items":{
|
||||
"*accounts":{"remote":false,"replicate":false},
|
||||
"*reverse_destinations": {"remote":false,"replicate":false},
|
||||
"*destinations": {"remote":false,"replicate":false},
|
||||
"*rating_plans": {"remote":false,"replicate":false},
|
||||
"*rating_profiles":{"remote":false,"replicate":false},
|
||||
"*actions":{"remote":false,"replicate":false},
|
||||
"*action_plans": {"remote":false,"replicate":false},
|
||||
"*account_action_plans":{"remote":false,"replicate":false},
|
||||
"*action_triggers":{"remote":false,"replicate":false},
|
||||
"*shared_groups":{"remote":false,"replicate":false},
|
||||
"*timings": {"remote":false,"replicate":false},
|
||||
"*resource_profiles":{"remote":false,"replicate":false},
|
||||
"*resources":{"remote":false,"replicate":false},
|
||||
"*statqueue_profiles": {"remote":false,"replicate":false},
|
||||
"*statqueues": {"remote":false,"replicate":false},
|
||||
"*threshold_profiles": {"remote":false,"replicate":false},
|
||||
"*thresholds": {"remote":false,"replicate":false},
|
||||
"*filters": {"remote":false,"replicate":false},
|
||||
"*supplier_profiles":{"remote":false,"replicate":false},
|
||||
"*attribute_profiles":{"remote":false,"replicate":false},
|
||||
"*charger_profiles": {"remote":false,"replicate":false},
|
||||
"*dispatcher_profiles":{"remote":false,"replicate":false},
|
||||
"*dispatcher_hosts":{"remote":false,"replicate":false},
|
||||
"*filter_indexes" :{"remote":false,"replicate":false},
|
||||
"*load_ids":{"remote":false,"replicate":false},
|
||||
"*accounts":{"remote":false,"replicate":false,"ttl": ""},
|
||||
"*reverse_destinations": {"remote":false,"replicate":false,"ttl": ""},
|
||||
"*destinations": {"remote":false,"replicate":false,"ttl": ""},
|
||||
"*rating_plans": {"remote":false,"replicate":false,"ttl": ""},
|
||||
"*rating_profiles":{"remote":false,"replicate":false,"ttl": ""},
|
||||
"*actions":{"remote":false,"replicate":false,"ttl": ""},
|
||||
"*action_plans": {"remote":false,"replicate":false,"ttl": ""},
|
||||
"*account_action_plans":{"remote":false,"replicate":false,"ttl": ""},
|
||||
"*action_triggers":{"remote":false,"replicate":false,"ttl": ""},
|
||||
"*shared_groups":{"remote":false,"replicate":false,"ttl": ""},
|
||||
"*timings": {"remote":false,"replicate":false,"ttl": ""},
|
||||
"*resource_profiles":{"remote":false,"replicate":false,"ttl": ""},
|
||||
"*resources":{"remote":false,"replicate":false,"ttl": ""},
|
||||
"*statqueue_profiles": {"remote":false,"replicate":false,"ttl": ""},
|
||||
"*statqueues": {"remote":false,"replicate":false,"ttl": ""},
|
||||
"*threshold_profiles": {"remote":false,"replicate":false,"ttl": ""},
|
||||
"*thresholds": {"remote":false,"replicate":false,"ttl": ""},
|
||||
"*filters": {"remote":false,"replicate":false,"ttl": ""},
|
||||
"*supplier_profiles":{"remote":false,"replicate":false,"ttl": ""},
|
||||
"*attribute_profiles":{"remote":false,"replicate":false,"ttl": ""},
|
||||
"*charger_profiles": {"remote":false,"replicate":false,"ttl": ""},
|
||||
"*dispatcher_profiles":{"remote":false,"replicate":false,"ttl": ""},
|
||||
"*dispatcher_hosts":{"remote":false,"replicate":false,"ttl": ""},
|
||||
"*filter_indexes" :{"remote":false,"replicate":false,"ttl": ""},
|
||||
"*load_ids":{"remote":false,"replicate":false,"ttl": ""},
|
||||
},
|
||||
},
|
||||
|
||||
@@ -116,6 +116,31 @@ const CGRATES_CFG_JSON = `
|
||||
"prefix_indexed_fields":[], // prefix indexes on cdrs table to speed up queries, used in case of *internal
|
||||
"query_timeout":"10s",
|
||||
"sslmode":"disable", // sslmode in case of *postgres
|
||||
"items":{
|
||||
"session_costs": {"ttl": ""},
|
||||
"cdrs": {"ttl": ""},
|
||||
"tp_timings":{"ttl": ""},
|
||||
"tp_destinations": {"ttl": ""},
|
||||
"tp_rates": {"ttl": ""},
|
||||
"tp_destination_rates": {"ttl": ""},
|
||||
"tp_rating_plans":{"ttl": ""},
|
||||
"tp_rating_profiles":{"ttl": ""},
|
||||
"tp_shared_groups": {"ttl": ""},
|
||||
"tp_actions":{"ttl": ""},
|
||||
"tp_action_plans":{"ttl": ""},
|
||||
"tp_action_triggers":{"ttl": ""},
|
||||
"tp_account_actions": {"ttl": ""},
|
||||
"tp_resources":{"ttl": ""},
|
||||
"tp_stats":{"ttl": ""},
|
||||
"tp_thresholds": {"ttl": ""},
|
||||
"tp_filters": {"ttl": ""},
|
||||
"tp_suppliers": {"ttl": ""},
|
||||
"tp_attributes":{"ttl": ""},
|
||||
"tp_chargers":{"ttl": ""},
|
||||
"versions": {"ttl": ""},
|
||||
"tp_dispatcher_profiles":{"ttl": ""},
|
||||
"tp_dispatcher_hosts":{"ttl": ""},
|
||||
},
|
||||
},
|
||||
|
||||
|
||||
|
||||
@@ -204,82 +204,107 @@ func TestDfDataDbJsonCfg(t *testing.T) {
|
||||
Query_timeout: utils.StringPointer("10s"),
|
||||
Replication_conns: &[]string{},
|
||||
Remote_conns: &[]string{},
|
||||
Items: &map[string]*ItemRmtRplOptJson{
|
||||
utils.MetaAccounts: &ItemRmtRplOptJson{
|
||||
Items: &map[string]*ItemOptJson{
|
||||
utils.MetaAccounts: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaReverseDestinations: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaReverseDestinations: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaDestinations: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaDestinations: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaRatingPlans: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaRatingPlans: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaRatingProfiles: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaRatingProfiles: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaActions: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaActions: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaActionPlans: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaActionPlans: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaAccountActionPlans: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaAccountActionPlans: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaActionTriggers: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaActionTriggers: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaSharedGroups: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaSharedGroups: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaTimings: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaTimings: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaResourceProfile: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaResourceProfile: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaStatQueues: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaStatQueues: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaResources: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaResources: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaStatQueueProfiles: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaStatQueueProfiles: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaThresholds: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaThresholds: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaThresholdProfiles: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaThresholdProfiles: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaFilters: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaFilters: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaSupplierProfiles: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaSupplierProfiles: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaAttributeProfiles: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaAttributeProfiles: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaDispatcherHosts: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaDispatcherHosts: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaChargerProfiles: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaChargerProfiles: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaDispatcherProfiles: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaDispatcherProfiles: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaFilterIndexes: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaFilterIndexes: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
utils.MetaLoadIDs: &ItemRmtRplOptJson{
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.MetaLoadIDs: &ItemOptJson{
|
||||
Replicate: utils.BoolPointer(false),
|
||||
Remote: utils.BoolPointer(false)},
|
||||
Remote: utils.BoolPointer(false),
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
},
|
||||
}
|
||||
if cfg, err := dfCgrJsonCfg.DbJsonCfg(DATADB_JSN); err != nil {
|
||||
@@ -304,11 +329,59 @@ func TestDfStorDBJsonCfg(t *testing.T) {
|
||||
Prefix_indexed_fields: &[]string{},
|
||||
Query_timeout: utils.StringPointer("10s"),
|
||||
Sslmode: utils.StringPointer(utils.PostgressSSLModeDisable),
|
||||
Items: &map[string]*ItemOptJson{
|
||||
utils.TBLTPTimings: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLTPDestinations: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLTPRates: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLTPDestinationRates: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLTPRatingPlans: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLTPRateProfiles: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLTPSharedGroups: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLTPActions: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLTPActionTriggers: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLTPAccountActions: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLTPResources: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLTPStats: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLTPThresholds: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLTPFilters: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.SessionCostsTBL: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLTPActionPlans: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLTPSuppliers: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLTPAttributes: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLTPChargers: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLTPDispatchers: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLTPDispatcherHosts: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.CDRsTBL: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
utils.TBLVersions: &ItemOptJson{
|
||||
Ttl: utils.StringPointer(utils.EmptyString)},
|
||||
},
|
||||
}
|
||||
if cfg, err := dfCgrJsonCfg.DbJsonCfg(STORDB_JSN); err != nil {
|
||||
t.Error(err)
|
||||
} else if !reflect.DeepEqual(eCfg, cfg) {
|
||||
t.Error("Received: ", cfg)
|
||||
t.Errorf("Expected : %+v,\n Received: %+v", utils.ToJSON(eCfg), utils.ToJSON(cfg))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -619,8 +619,8 @@ func TestConfigSanityDataDB(t *testing.T) {
|
||||
}
|
||||
cfg.thresholdSCfg.Enabled = false
|
||||
|
||||
cfg.dataDbCfg.Items = map[string]*ItemRmtRplOpt{
|
||||
"test1": &ItemRmtRplOpt{
|
||||
cfg.dataDbCfg.Items = map[string]*ItemOpt{
|
||||
"test1": &ItemOpt{
|
||||
Remote: true,
|
||||
},
|
||||
}
|
||||
@@ -629,8 +629,8 @@ func TestConfigSanityDataDB(t *testing.T) {
|
||||
t.Errorf("Expecting: %+q received: %+q", expected, err)
|
||||
}
|
||||
|
||||
cfg.dataDbCfg.Items = map[string]*ItemRmtRplOpt{
|
||||
"test2": &ItemRmtRplOpt{
|
||||
cfg.dataDbCfg.Items = map[string]*ItemOpt{
|
||||
"test2": &ItemOpt{
|
||||
Remote: false,
|
||||
Replicate: true,
|
||||
},
|
||||
|
||||
@@ -25,70 +25,229 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/cgrates/cgrates/config"
|
||||
|
||||
"github.com/cgrates/cgrates/utils"
|
||||
"github.com/cgrates/ltcache"
|
||||
)
|
||||
|
||||
var unlimitedCfg = <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
}
|
||||
|
||||
// internalDBCacheCfg indexes the internal DataDB partitions
|
||||
var internalDBCacheCfg = map[string]*ltcache.CacheConfig{
|
||||
utils.CacheDestinations: unlimitedCfg,
|
||||
utils.CacheReverseDestinations: unlimitedCfg,
|
||||
utils.CacheActions: unlimitedCfg,
|
||||
utils.CacheActionPlans: unlimitedCfg,
|
||||
utils.CacheAccountActionPlans: unlimitedCfg,
|
||||
utils.CacheActionTriggers: unlimitedCfg,
|
||||
utils.CacheRatingPlans: unlimitedCfg,
|
||||
utils.CacheRatingProfiles: unlimitedCfg,
|
||||
utils.CacheAccounts: unlimitedCfg,
|
||||
utils.CacheSharedGroups: unlimitedCfg,
|
||||
utils.TBLVersions: unlimitedCfg,
|
||||
utils.CacheTimings: unlimitedCfg,
|
||||
utils.CacheFilters: unlimitedCfg,
|
||||
utils.CacheResourceProfiles: unlimitedCfg,
|
||||
utils.CacheResourceFilterIndexes: unlimitedCfg,
|
||||
utils.CacheResources: unlimitedCfg,
|
||||
utils.CacheStatFilterIndexes: unlimitedCfg,
|
||||
utils.CacheStatQueueProfiles: unlimitedCfg,
|
||||
utils.CacheStatQueues: unlimitedCfg,
|
||||
utils.CacheThresholdFilterIndexes: unlimitedCfg,
|
||||
utils.CacheThresholdProfiles: unlimitedCfg,
|
||||
utils.CacheThresholds: unlimitedCfg,
|
||||
utils.CacheSupplierFilterIndexes: unlimitedCfg,
|
||||
utils.CacheSupplierProfiles: unlimitedCfg,
|
||||
utils.CacheChargerFilterIndexes: unlimitedCfg,
|
||||
utils.CacheChargerProfiles: unlimitedCfg,
|
||||
utils.CacheAttributeFilterIndexes: unlimitedCfg,
|
||||
utils.CacheAttributeProfiles: unlimitedCfg,
|
||||
utils.CacheDispatcherFilterIndexes: unlimitedCfg,
|
||||
utils.CacheDispatcherProfiles: unlimitedCfg,
|
||||
utils.CacheDispatcherHosts: unlimitedCfg,
|
||||
utils.CacheLoadIDs: unlimitedCfg,
|
||||
utils.TBLTPTimings: unlimitedCfg,
|
||||
utils.TBLTPDestinations: unlimitedCfg,
|
||||
utils.TBLTPRates: unlimitedCfg,
|
||||
utils.TBLTPDestinationRates: unlimitedCfg,
|
||||
utils.TBLTPRatingPlans: unlimitedCfg,
|
||||
utils.TBLTPRateProfiles: unlimitedCfg,
|
||||
utils.TBLTPSharedGroups: unlimitedCfg,
|
||||
utils.TBLTPActions: unlimitedCfg,
|
||||
utils.TBLTPActionTriggers: unlimitedCfg,
|
||||
utils.TBLTPAccountActions: unlimitedCfg,
|
||||
utils.TBLTPResources: unlimitedCfg,
|
||||
utils.TBLTPStats: unlimitedCfg,
|
||||
utils.TBLTPThresholds: unlimitedCfg,
|
||||
utils.TBLTPFilters: unlimitedCfg,
|
||||
utils.SessionCostsTBL: unlimitedCfg,
|
||||
utils.TBLTPActionPlans: unlimitedCfg,
|
||||
utils.TBLTPSuppliers: unlimitedCfg,
|
||||
utils.TBLTPAttributes: unlimitedCfg,
|
||||
utils.TBLTPChargers: unlimitedCfg,
|
||||
utils.TBLTPDispatchers: unlimitedCfg,
|
||||
utils.TBLTPDispatcherHosts: unlimitedCfg,
|
||||
utils.CDRsTBL: unlimitedCfg,
|
||||
utils.CacheDestinations: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheDestinations].TTL,
|
||||
},
|
||||
utils.CacheReverseDestinations: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheReverseDestinations].TTL,
|
||||
},
|
||||
utils.CacheActions: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheActions].TTL,
|
||||
},
|
||||
utils.CacheActionPlans: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheActionPlans].TTL,
|
||||
},
|
||||
utils.CacheAccountActionPlans: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheAccountActionPlans].TTL,
|
||||
},
|
||||
utils.CacheActionTriggers: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheActionTriggers].TTL,
|
||||
},
|
||||
utils.CacheRatingPlans: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheRatingPlans].TTL,
|
||||
},
|
||||
utils.CacheRatingProfiles: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheRatingProfiles].TTL,
|
||||
},
|
||||
utils.CacheAccounts: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheAccounts].TTL,
|
||||
},
|
||||
utils.CacheSharedGroups: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheSharedGroups].TTL,
|
||||
},
|
||||
utils.TBLVersions: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLVersions].TTL,
|
||||
},
|
||||
utils.CacheTimings: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheTimings].TTL,
|
||||
},
|
||||
utils.CacheFilters: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheFilters].TTL,
|
||||
},
|
||||
utils.CacheResourceProfiles: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheResourceProfiles].TTL,
|
||||
},
|
||||
utils.CacheResourceFilterIndexes: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.MetaFilterIndexes].TTL,
|
||||
},
|
||||
utils.CacheResources: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheResources].TTL,
|
||||
},
|
||||
utils.CacheStatFilterIndexes: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.MetaFilterIndexes].TTL,
|
||||
},
|
||||
utils.CacheStatQueueProfiles: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheStatQueueProfiles].TTL,
|
||||
},
|
||||
utils.CacheStatQueues: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheStatQueues].TTL,
|
||||
},
|
||||
utils.CacheThresholdFilterIndexes: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.MetaFilterIndexes].TTL,
|
||||
},
|
||||
utils.CacheThresholdProfiles: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheThresholdProfiles].TTL,
|
||||
},
|
||||
utils.CacheThresholds: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheThresholds].TTL,
|
||||
},
|
||||
utils.CacheSupplierFilterIndexes: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.MetaFilterIndexes].TTL,
|
||||
},
|
||||
utils.CacheSupplierProfiles: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheSupplierProfiles].TTL,
|
||||
},
|
||||
utils.CacheChargerFilterIndexes: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.MetaFilterIndexes].TTL,
|
||||
},
|
||||
utils.CacheChargerProfiles: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheChargerProfiles].TTL,
|
||||
},
|
||||
utils.CacheAttributeFilterIndexes: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.MetaFilterIndexes].TTL,
|
||||
},
|
||||
utils.CacheAttributeProfiles: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheAttributeProfiles].TTL,
|
||||
},
|
||||
utils.CacheDispatcherFilterIndexes: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.MetaFilterIndexes].TTL,
|
||||
},
|
||||
utils.CacheDispatcherProfiles: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheDispatcherProfiles].TTL,
|
||||
},
|
||||
utils.CacheDispatcherHosts: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheDispatcherHosts].TTL,
|
||||
},
|
||||
utils.CacheLoadIDs: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().DataDbCfg().Items[utils.CacheLoadIDs].TTL,
|
||||
},
|
||||
utils.TBLTPTimings: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPTimings].TTL,
|
||||
},
|
||||
utils.TBLTPDestinations: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPDestinations].TTL,
|
||||
},
|
||||
utils.TBLTPRates: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPRates].TTL,
|
||||
},
|
||||
utils.TBLTPDestinationRates: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPDestinationRates].TTL,
|
||||
},
|
||||
utils.TBLTPRatingPlans: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPRatingPlans].TTL,
|
||||
},
|
||||
utils.TBLTPRateProfiles: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPRateProfiles].TTL,
|
||||
},
|
||||
utils.TBLTPSharedGroups: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPSharedGroups].TTL,
|
||||
},
|
||||
utils.TBLTPActions: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPActions].TTL,
|
||||
},
|
||||
utils.TBLTPActionTriggers: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPActionTriggers].TTL,
|
||||
},
|
||||
utils.TBLTPAccountActions: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPAccountActions].TTL,
|
||||
},
|
||||
utils.TBLTPResources: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPResources].TTL,
|
||||
},
|
||||
utils.TBLTPStats: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPStats].TTL,
|
||||
},
|
||||
utils.TBLTPThresholds: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPThresholds].TTL,
|
||||
},
|
||||
utils.TBLTPFilters: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPFilters].TTL,
|
||||
},
|
||||
utils.SessionCostsTBL: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.SessionCostsTBL].TTL,
|
||||
},
|
||||
utils.TBLTPActionPlans: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPActionPlans].TTL,
|
||||
},
|
||||
utils.TBLTPSuppliers: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPSuppliers].TTL,
|
||||
},
|
||||
utils.TBLTPAttributes: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPAttributes].TTL,
|
||||
},
|
||||
utils.TBLTPChargers: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPChargers].TTL,
|
||||
},
|
||||
utils.TBLTPDispatchers: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPDispatchers].TTL,
|
||||
},
|
||||
utils.TBLTPDispatcherHosts: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.TBLTPDispatcherHosts].TTL,
|
||||
},
|
||||
utils.CDRsTBL: <cache.CacheConfig{
|
||||
MaxItems: -1,
|
||||
TTL: config.CgrConfig().StorDbCfg().Items[utils.CDRsTBL].TTL,
|
||||
},
|
||||
}
|
||||
|
||||
type InternalDB struct {
|
||||
@@ -129,7 +288,7 @@ func (iDB *InternalDB) SetPrefixIndexedFields(prefixIndexedFields []string) {
|
||||
func (iDB *InternalDB) Close() {}
|
||||
|
||||
func (iDB *InternalDB) Flush(_ string) error {
|
||||
iDB.db = ltcache.NewTransCache(config.CgrConfig().CacheCfg().AsTransCacheConfig())
|
||||
iDB.db = ltcache.NewTransCache(internalDBCacheCfg)
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user