Gaurav Bansal
2017-06-17 13:41:18 UTC
Hi all,
We are writing a transform plugin where we get the data from server,
perform some checks on the data & write the data back to the client using
following api :
TSVIO *TSVConnWrite*(TSVConn connp, TSCont contp, TSIOBufferReader readerp,
int64_t nbytes)
Here, I am seeing the issue of *VC_EVENT_INACTIVITY_TIMEOUT*. To explain
the issue, let me consider the following two cases :
1) While the data is still coming from the server, parallely we keep
sending the data to another module to perform some checks. But in this
case, TSVConnWrite is commented out implying that we are not sending data
to client. Here, whole of data is fetched from server (which takes say t
seconds) and then sent to the module to perform checks. No issues in this
case, but we start seeing the issues after uncommenting 'TSVConnWrite'
which is explained in case 2 below.
2) In the 2nd case, TSVConnWrite is used to parallely send the data to
client. Thus, all the 3 activities of fetching data from the server,
sending to another module for performing some checks and sending to client
(after the checks) are going on parallely as 3 separate threads. After
'TSVConnWrite' is uncommented, we see the VC_EVENT_INACTIVITY_TIMEOUT while
the data is still being fetched from the server. Can anyone please let me
know what can be the probable cause of such a timeout ? If we are not
writing to TSVConnWrite, timeout doesn't happen during the entire 't' sec
duration of download from server. But, if we start writing to
'TSVConnWrite', timeout happens within a duration which is less than t
seconds.
thanks,
gaurav
We are writing a transform plugin where we get the data from server,
perform some checks on the data & write the data back to the client using
following api :
TSVIO *TSVConnWrite*(TSVConn connp, TSCont contp, TSIOBufferReader readerp,
int64_t nbytes)
Here, I am seeing the issue of *VC_EVENT_INACTIVITY_TIMEOUT*. To explain
the issue, let me consider the following two cases :
1) While the data is still coming from the server, parallely we keep
sending the data to another module to perform some checks. But in this
case, TSVConnWrite is commented out implying that we are not sending data
to client. Here, whole of data is fetched from server (which takes say t
seconds) and then sent to the module to perform checks. No issues in this
case, but we start seeing the issues after uncommenting 'TSVConnWrite'
which is explained in case 2 below.
2) In the 2nd case, TSVConnWrite is used to parallely send the data to
client. Thus, all the 3 activities of fetching data from the server,
sending to another module for performing some checks and sending to client
(after the checks) are going on parallely as 3 separate threads. After
'TSVConnWrite' is uncommented, we see the VC_EVENT_INACTIVITY_TIMEOUT while
the data is still being fetched from the server. Can anyone please let me
know what can be the probable cause of such a timeout ? If we are not
writing to TSVConnWrite, timeout doesn't happen during the entire 't' sec
duration of download from server. But, if we start writing to
'TSVConnWrite', timeout happens within a duration which is less than t
seconds.
thanks,
gaurav