You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafodion.apache.org by "He Zhenxing (JIRA)" <ji...@apache.org> on 2019/01/22 06:54:00 UTC

[jira] [Updated] (TRAFODION-3260) SSMP may wait 3 seconds before handling requests

     [ https://issues.apache.org/jira/browse/TRAFODION-3260?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

He Zhenxing updated TRAFODION-3260:
-----------------------------------
    Description: 
SSMP may wait and stop responding for up to 3 seconds before handling requests. This problem was found while investigating LOB locking issue, which may take 3 seconds to acquire the lock.

Here are the steps to reproduce the issue:

 
{code:java}
>> cqd traf_blob_as_varchar 'off';
>> create table t1 (a blob);
>> set statistics on;
>> insert into t1 values (stringtolob('abc'));
>> insert into t1 values (stringtolob('abc'));
{code}
 

We ignore the first insert, which may take long for loading metadata. starting from the second, sometimes the insert will take 3 or 6 seconds to finish. Normally, it should only take hundreds of milliseconds.

The problem is because SSMP waiting for client requests from $RECEIVE and replies from SSCP separately, so there is a possibility that SSMP is waiting on $RECEIVE while there are replies from SSCP and thus it will have to wait until timeout (3 seconds) before the replies can be handled and then SSMP can reply the client. If both LOB lock and unlock suffered this, the insert will take more than 6 seconds to finish.

This problem also affects other scenarios that need to interact with SSMP.

  was:
SSMP may wait and stop responding for up to 3 seconds before handling requests. This problem was found while investigating LOB locking issue, which may take 3 seconds to acquire the lock.

Here are the steps to reproduce the issue:

 
{code:java}
>> cqd traf_blob_as_varchar 'off';
>> create table t1 (a blob);
>> set statistics on;
>> insert into t1 values (stringtolob('abc'));
>> insert into t1 values (stringtolob('abc'));
{code}
 

We ignore the first insert, which may take long for loading metadata. starting from the second, sometimes the insert will take 3 or 6 seconds to finish. Normally, it should only take hundreds of milliseconds.

The problem is because SSMP waiting for client requests from $RECEIVE and replies from SSCP separately, so there is a possibility that SSMP is waiting on $RECEIVE while there are replies from SSCP and thus it will have to wait until timeout (3 seconds) before the replies can be handled and then SSMP can reply the client. If both LOB lock and unlock suffered this, the insert will take more than 6 seconds to finish.

This problem also affects scenarios that need to interact with SSMP.


> SSMP may wait 3 seconds before handling requests
> ------------------------------------------------
>
>                 Key: TRAFODION-3260
>                 URL: https://issues.apache.org/jira/browse/TRAFODION-3260
>             Project: Apache Trafodion
>          Issue Type: Bug
>          Components: sql-exe
>    Affects Versions: any
>            Reporter: He Zhenxing
>            Priority: Major
>             Fix For: 2.4
>
>
> SSMP may wait and stop responding for up to 3 seconds before handling requests. This problem was found while investigating LOB locking issue, which may take 3 seconds to acquire the lock.
> Here are the steps to reproduce the issue:
>  
> {code:java}
> >> cqd traf_blob_as_varchar 'off';
> >> create table t1 (a blob);
> >> set statistics on;
> >> insert into t1 values (stringtolob('abc'));
> >> insert into t1 values (stringtolob('abc'));
> {code}
>  
> We ignore the first insert, which may take long for loading metadata. starting from the second, sometimes the insert will take 3 or 6 seconds to finish. Normally, it should only take hundreds of milliseconds.
> The problem is because SSMP waiting for client requests from $RECEIVE and replies from SSCP separately, so there is a possibility that SSMP is waiting on $RECEIVE while there are replies from SSCP and thus it will have to wait until timeout (3 seconds) before the replies can be handled and then SSMP can reply the client. If both LOB lock and unlock suffered this, the insert will take more than 6 seconds to finish.
> This problem also affects other scenarios that need to interact with SSMP.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)