Skip to content

Commit

Permalink
Fix Scan error
Browse files Browse the repository at this point in the history
`sql: Scan error on column index 0, name \"out_action_next_hop\": unsupported Scan, storing driver.Value type []uint8 into type *jsonapi.NextHop"`
  • Loading branch information
louisroyer committed Aug 27, 2024
1 parent 218384b commit 07fdfc2
Showing 1 changed file with 12 additions and 4 deletions.
16 changes: 12 additions & 4 deletions internal/database/database.go
Original file line number Diff line number Diff line change
Expand Up @@ -282,7 +282,7 @@ func (db *Database) GetUplinkAction(ctx context.Context, uplinkTeid uint32, srgw
}

func (db *Database) GetDownlinkAction(ctx context.Context, ueIp netip.Addr) (jsonapi.Action, error) {
var action_next_hop jsonapi.NextHop
var action_next_hop string
var action_srh []string
if stmt, ok := db.stmt["get_downlink_action"]; ok {
err := stmt.QueryRowContext(ctx, ueIp.String()).Scan(&action_next_hop, pq.Array(&action_srh))
Expand All @@ -293,14 +293,18 @@ func (db *Database) GetDownlinkAction(ctx context.Context, ueIp netip.Addr) (jso
if err != nil {
return jsonapi.Action{}, err
}
return jsonapi.Action{NextHop: action_next_hop, SRH: *srh}, err
action, err := jsonapi.NewNextHop(action_next_hop)
if err != nil {
return jsonapi.Action{}, err
}
return jsonapi.Action{NextHop: *action, SRH: *srh}, err
} else {
return jsonapi.Action{}, fmt.Errorf("Procedure not registered")
}
}

func (db *Database) SetUplinkAction(ctx context.Context, uplinkTeid uint32, srgwIp netip.Addr, gnbIp netip.Addr, ueIp netip.Addr) (jsonapi.Action, error) {
var action_next_hop jsonapi.NextHop
var action_next_hop string
var action_srh []string
if stmt, ok := db.stmt["set_uplink_action"]; ok {
err := stmt.QueryRowContext(ctx, uplinkTeid, srgwIp.String(), gnbIp.String(), ueIp.String()).Scan(&action_next_hop, pq.Array(&action_srh))
Expand All @@ -311,7 +315,11 @@ func (db *Database) SetUplinkAction(ctx context.Context, uplinkTeid uint32, srgw
if err != nil {
return jsonapi.Action{}, err
}
return jsonapi.Action{NextHop: action_next_hop, SRH: *srh}, err
action, err := jsonapi.NewNextHop(action_next_hop)
if err != nil {
return jsonapi.Action{}, err
}
return jsonapi.Action{NextHop: *action, SRH: *srh}, err
} else {
return jsonapi.Action{}, fmt.Errorf("Procedure not registered")
}
Expand Down

0 comments on commit 07fdfc2

Please sign in to comment.