Details
-
Bug
-
Status: Closed
-
Critical
-
Resolution: Won't Fix
-
2.0.0
-
None
-
None
Description
In a transform plugin, with chunked data in the origin response, we're seeing obscene return values from
INKVIONTodoGet(input_vio);
e.g. (with some new tracers) using v2.0.1:
Oct 27 21:34:32.770] Server
{139651219031824} DIAG: (null-transform) Entering handle_transform()[Oct 27 21:34:32.770] Server {139651219031824}
DIAG: (null-transform) toWrite is 2147348222
[Oct 27 21:34:32.770] Server
DIAG: (null-transform) avail is 2896
This sort of works in the v2.0.1 branch, but fails completely on trunk (it'll typically completely hang the transaction, due to integer overflows). In my test, using trunk, "toWrite" becomes -1 for the chunked data. A "working" solution is to not let the value overflow, but I think we should figure out why these numbers are so big in the first place (I'm guessing it's something related to 64-bit changes).
There's a similar issue with INKVIONBytesGet() as well, and possible other APIs ?