Commit 3bc9a8b8 authored by hammad zafar's avatar hammad zafar
Browse files

update logic of scanning the sql returned row for predicted user traffic in meep-vis-traffic-mgr

parent 97907908
Loading
Loading
Loading
Loading
+6 −14
Original line number Diff line number Diff line
@@ -830,23 +830,15 @@ func (tm *TrafficMgr) PredictQosPerTrafficLoad(hour int32, inRsrp int32, inRsrq

	// Get predicted load for a given PoA in a desired time slot from the traffic patterns table

	var predictedUserTraffic int32
	var predictedUserTraffic int

	var rows *sql.Rows
	var row *sql.Row
	log.Debug("Collecting traffic load pattern of POA " + poaName + " for the time range: " + timeRange)
	rows, err = tm.db.Query(`SELECT "`+timeRange+`" FROM `+TrafficTable+` WHERE poa_name = ($1)`, poaName)
	if err != nil {
		return 0, 0, err
	}
	row = tm.db.QueryRow(`SELECT "`+timeRange+`" FROM `+TrafficTable+` WHERE poa_name = ($1)`, poaName)

	rows.Close()
	err = row.Scan(&predictedUserTraffic)

	for rows.Next() {
		_ = rows.Scan(&predictedUserTraffic)
	}

	err = rows.Err()
	if err != nil {
	if err == sql.ErrNoRows {
		log.Error(err)
		log.Error("Could not find estimated user load in the " + TrafficTable + " table")
		// returning the same values for Rsrp and Rsrq received in request
@@ -865,7 +857,7 @@ func (tm *TrafficMgr) PredictQosPerTrafficLoad(hour int32, inRsrp int32, inRsrq
	averageLoad := (poaLoad.ZeroToThree + poaLoad.ThreeToSix + poaLoad.SixToNine + poaLoad.NineToTwelve + poaLoad.TwelveToFifteen + poaLoad.FifteenToEighteen + poaLoad.EighteenToTwentyOne + poaLoad.TwentyOneToTwentyFour) / 8

	// Find reduced signal strength as a function of number of users in the area
	outRsrp, outRsrq, err = findReducedSignalStrength(inRsrp, inRsrq, predictedUserTraffic, averageLoad)
	outRsrp, outRsrq, err = findReducedSignalStrength(inRsrp, inRsrq, int32(predictedUserTraffic), averageLoad)

	return outRsrp, outRsrq, err
}