Skip to content

Commit

Permalink
fix(incremental sync): fixed ws_id processing in _set_entity_for_txn
Browse files Browse the repository at this point in the history
  • Loading branch information
chobits committed Oct 31, 2024
1 parent f35c3d3 commit 662da5d
Showing 1 changed file with 3 additions and 6 deletions.
9 changes: 3 additions & 6 deletions kong/db/declarative/import.lua
Original file line number Diff line number Diff line change
Expand Up @@ -326,6 +326,7 @@ local function _set_entity_for_txn(t, entity_name, item, options, is_delete)
local is_foreign = fdata.type == "foreign"
local fdata_reference = fdata.reference
local value = item[fname]
local fws_id = fdata.unique_across_ws and kong.default_workspace or ws_id

-- value may be null, we should skip it
if not value or value == null then
Expand All @@ -345,11 +346,7 @@ local function _set_entity_for_txn(t, entity_name, item, options, is_delete)
value_str = pk_string(kong.db[fdata_reference].schema, value)
end

if fdata.unique_across_ws then
ws_id = kong.default_workspace
end

for _, wid in ipairs {ws_id, GLOBAL_WORKSPACE_TAG} do
for _, wid in ipairs {fws_id, GLOBAL_WORKSPACE_TAG} do
local key = unique_field_key(entity_name, wid, fname, value_str or value)

-- store item_key or nil into lmdb
Expand All @@ -363,7 +360,7 @@ local function _set_entity_for_txn(t, entity_name, item, options, is_delete)

value_str = pk_string(kong.db[fdata_reference].schema, value)

for _, wid in ipairs {ws_id, GLOBAL_WORKSPACE_TAG} do
for _, wid in ipairs {fws_id, GLOBAL_WORKSPACE_TAG} do
local key = foreign_field_key(entity_name, wid, fname, value_str, pk)

-- store item_key or nil into lmdb
Expand Down

0 comments on commit 662da5d

Please sign in to comment.