ITS#8447 fix cursor_put(MDB_CURRENT) on DUPSORT DB with different-sized data

This commit is contained in:
Howard Chu 2023-03-06 16:47:44 +00:00 committed by Quanah Gibson-Mount
parent 137fef056d
commit 76bad923f7

View file

@ -6963,11 +6963,14 @@ current:
else if (!(mc->mc_flags & C_SUB))
memcpy(olddata.mv_data, data->mv_data, data->mv_size);
else {
if (key->mv_size != NODEKSZ(leaf))
goto new_ksize;
memcpy(NODEKEY(leaf), key->mv_data, key->mv_size);
goto fix_parent;
}
return MDB_SUCCESS;
}
new_ksize:
mdb_node_del(mc, 0);
}