Skip to content

Commit

Permalink
Fixed vs test failure
Browse files Browse the repository at this point in the history
Signed-off-by: mlok <[email protected]>
  • Loading branch information
mlok-nokia committed Oct 1, 2024
1 parent 509c5d0 commit 80f2a59
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 22 deletions.
43 changes: 23 additions & 20 deletions orchagent/lagids.lua
Original file line number Diff line number Diff line change
Expand Up @@ -40,42 +40,45 @@ if op == "add" then
-- If proposed lagid is not available, lpop the first availabe ID
local index = redis.call("lpos", "SYSTEM_LAG_IDS_FREE_LIST", tostring(plagid))
if index == false then
if redis.call("llen", "SYSTEM_LAG_IDS_FREE_LIST") <= 0
return -1
end
local lagid = redis.call("lpop", "SYSTEM_LAG_IDS_FREE_LIST")
redis.call("hset", "SYSTEM_LAG_ID_TABLE", pcname, lagid)
redis.call("sadd", "SYSTEM_LAG_ID_SET", lagid)
if dblagid then
redis.call("srem", "SYSTEM_LAG_ID_SET", tostring(dblagid))
if redis.call("lpos", "SYSTEM_LAG_IDS_FREE_LIST", tostring(dblagid)) == false then
redis.call("rpush", "SYSTEM_LAG_IDS_FREE_LIST", tostring(dblagid))
end
redis.call("srem", "SYSTEM_LAG_ID_SET", tostring(dblagid))
if redis.call("lpos", "SYSTEM_LAG_IDS_FREE_LIST", tostring(dblagid)) == false then
redis.call("rpush", "SYSTEM_LAG_IDS_FREE_LIST", tostring(dblagid))
end
end
return tonumber(lagid)
else
redis.call("lrem", "SYSTEM_LAG_IDS_FREE_LIST", 1, tostring(plagid))
redis.call("hset", "SYSTEM_LAG_ID_TABLE", pcname, tostring(plagid))
redis.call("sadd", "SYSTEM_LAG_ID_SET", tostring(plagid))
if dblagid then
redis.call("srem", "SYSTEM_LAG_ID_SET", tostring(dblagid))
if redis.call("lpos", "SYSTEM_LAG_IDS_FREE_LIST", tostring(dblagid)) == false then
redis.call("rpush", "SYSTEM_LAG_IDS_FREE_LIST", tostring(dblagid))
end
end
return plagid
redis.call("lrem", "SYSTEM_LAG_IDS_FREE_LIST", 1, tostring(plagid))
redis.call("hset", "SYSTEM_LAG_ID_TABLE", pcname, tostring(plagid))
redis.call("sadd", "SYSTEM_LAG_ID_SET", tostring(plagid))
if dblagid then
redis.call("srem", "SYSTEM_LAG_ID_SET", tostring(dblagid))
if redis.call("lpos", "SYSTEM_LAG_IDS_FREE_LIST", tostring(dblagid)) == false then
redis.call("rpush", "SYSTEM_LAG_IDS_FREE_LIST", tostring(dblagid))
end
end
return plagid
end
else
if redis.call("llen", "SYSTEM_LAG_IDS_FREE_LIST") <= 0
return -1
end
local lagid = redis.call("lpop", "SYSTEM_LAG_IDS_FREE_LIST")
redis.call("hset", "SYSTEM_LAG_ID_TABLE", pcname, lagid)
redis.call("sadd", "SYSTEM_LAG_ID_SET", lagid)
if dblagid then
if redis.call("lpos", "SYSTEM_LAG_IDS_FREE_LIST", tostring(dblagid)) == false then
redis.call("rpush", "SYSTEM_LAG_IDS_FREE_LIST", tostring(dblagid))
end
if redis.call("lpos", "SYSTEM_LAG_IDS_FREE_LIST", tostring(dblagid)) == false then
redis.call("rpush", "SYSTEM_LAG_IDS_FREE_LIST", tostring(dblagid))
end
end
return tonumber(lagid)
end

return -1

end

if op == "del" then
Expand Down
4 changes: 2 additions & 2 deletions tests/test_virtual_chassis.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@ def set_lag_id_boundaries(self, vct):
chassis_app_db = DVSDatabase(swsscommon.CHASSIS_APP_DB, dvs.redis_chassis_sock)
chassis_app_db.db_connection.set("SYSTEM_LAG_ID_START", "1")
chassis_app_db.db_connection.set("SYSTEM_LAG_ID_END", "2")
chassis_app_db_db_connection.rpush("SYSTEM_LAG_IDS_FREE_LIST", "1")
chassis_app_db_db_connection.rpush("SYSTEM_LAG_IDS_FREE_LIST", "2")
chassis_app_db.db_connection.rpush("SYSTEM_LAG_IDS_FREE_LIST", "1")
chassis_app_db.db_connection.rpush("SYSTEM_LAG_IDS_FREE_LIST", "2")
break

def config_inbandif_port(self, vct, ibport):
Expand Down

0 comments on commit 80f2a59

Please sign in to comment.