fixed reverse destinations

This commit is contained in:
edwardro22
2017-12-07 11:45:45 +00:00
committed by Dan Christian Bogos
parent 9b1e10472b
commit 607df07ebc
2 changed files with 16 additions and 14 deletions

View File

@@ -80,8 +80,6 @@ func (m *Migrator) migrateDestinations() (err error) {
func (m *Migrator) migrateCurrentReverseDestinations() (err error) {
var ids []string
var mapids []string
mappedvals := make(map[string][]string)
ids, err = m.dmIN.DataDB().GetKeysForPrefix(utils.REVERSE_DESTINATION_PREFIX)
if err != nil {
return err
@@ -94,20 +92,21 @@ func (m *Migrator) migrateCurrentReverseDestinations() (err error) {
}
if rdst != nil {
for _, rdid := range rdst {
mapids = append(mapids, rdid)
mappedvals[rdid] = append(mappedvals[rdid], id)
}
}
}
for _, id := range mapids {
dst := &engine.Destination{Id: id, Prefixes: mappedvals[id]}
if dst != nil {
if m.dryRun != true {
if err := m.dmOut.DataDB().SetReverseDestination(dst, utils.NonTransactional); err != nil {
rdstn, err := m.dmIN.DataDB().GetDestination(rdid, true, utils.NonTransactional)
if err != nil {
return err
}
m.stats[utils.ReverseDestinations] += 1
if rdstn != nil {
if m.dryRun != true {
if err := m.dmOut.DataDB().SetDestination(rdstn, utils.NonTransactional); err != nil {
return err
}
if err := m.dmOut.DataDB().SetReverseDestination(rdstn, utils.NonTransactional); err != nil {
return err
}
m.stats[utils.ReverseDestinations] += 1
}
}
}
}
}

View File

@@ -1509,6 +1509,9 @@ func testMigratorReverseDestinations(t *testing.T) {
dst := &engine.Destination{Id: "CRUDReverseDestination", Prefixes: []string{"+494", "+495", "+496"}}
switch dbtype {
case Move:
if err := mig.dmIN.DataDB().SetDestination(dst, utils.NonTransactional); err != nil {
t.Error("Error when setting Destinations ", err.Error())
}
if err := mig.dmIN.DataDB().SetReverseDestination(dst, utils.NonTransactional); err != nil {
t.Error("Error when setting ReverseDestinations ", err.Error())
}