From 3495a5d706b69723c771024317edfd3457b35082 Mon Sep 17 00:00:00 2001 From: DanB Date: Wed, 13 Sep 2017 16:10:12 +0200 Subject: [PATCH 1/2] TPReader init resources if missing from dataDB --- engine/tp_reader.go | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/engine/tp_reader.go b/engine/tp_reader.go index 584b91938..565d6cebf 100755 --- a/engine/tp_reader.go +++ b/engine/tp_reader.go @@ -56,6 +56,7 @@ type TpReader struct { resProfiles map[string]*utils.TPResource stats map[string]*utils.TPStats thresholds map[string]*utils.TPThreshold + resources []string // IDs of resources which need creation based on resourceConfigs revDests, revAliases, @@ -1602,6 +1603,13 @@ func (tpr *TpReader) LoadResourceProfilesFiltered(tag string) error { mapRsPs[rl.ID] = rl } tpr.resProfiles = mapRsPs + for rID := range mapRsPs { + if has, err := tpr.dataStorage.HasData(utils.ResourcesPrefix, rID); err != nil { + return err + } else if !has { + tpr.resources = append(tpr.resources, rID) + } + } return nil } @@ -1948,6 +1956,17 @@ func (tpr *TpReader) WriteToDatabase(flush, verbose, disable_reverse bool) (err log.Print("\t", rsp.ID) } } + if verbose { + log.Print("Resources:") + } + for _, rID := range tpr.resources { + if err = tpr.dataStorage.SetResource(&Resource{ID: rID, Usages: make(map[string]*ResourceUsage)}); err != nil { + return + } + if verbose { + log.Print("\t", rID) + } + } if verbose { log.Print("StatQueueProfiles:") } From 69b4e3d3e354e6fbf32a029859f5318089ffc180 Mon Sep 17 00:00:00 2001 From: DanB Date: Wed, 13 Sep 2017 16:20:38 +0200 Subject: [PATCH 2/2] Test return message in offline_tp --- offline_tp_test.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/offline_tp_test.sh b/offline_tp_test.sh index 6eb76a4ee..7b90c12bf 100755 --- a/offline_tp_test.sh +++ b/offline_tp_test.sh @@ -2,5 +2,7 @@ gen=$? echo 'go test github.com/cgrates/cgrates/apier/v1 -tags=offline_tp' go test github.com/cgrates/cgrates/apier/v1 -tags=offline_tp +ap1=$? + +exit $gen && $ap1 -exit $gen