[ 
https://issues.apache.org/jira/browse/LENS-1418?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15998282#comment-15998282
 ] 

Hudson commented on LENS-1418:
------------------------------

UNSTABLE: Integrated in Jenkins build Lens-Commit #1404 (See 
[https://builds.apache.org/job/Lens-Commit/1404/])
LENS-1418: LensClient is not thread safe (rajatgupta59: rev 
139f029ae88da7cc29a02afeee73a542f0c92eef)
* (edit) lens-cli/src/test/java/org/apache/lens/cli/TestLensQueryCommands.java
* (edit) src/site/apt/user/cli.apt
* (edit) lens-client/src/main/java/org/apache/lens/client/LensClient.java


> LensClient is not thread safe
> -----------------------------
>
>                 Key: LENS-1418
>                 URL: https://issues.apache.org/jira/browse/LENS-1418
>             Project: Apache Lens
>          Issue Type: Bug
>          Components: client
>            Reporter: Rajat Khandelwal
>            Assignee: Rajat Khandelwal
>             Fix For: 2.7
>
>         Attachments: LENS-1418.01.patch, LENS-1418.03.patch, 
> LENS-1418.04.patch, LENS-1418.05.patch, LENS-1418.06.patch, LENS-1418.07.patch
>
>
> Using one lens client to fire two queries in two threads results in 
> discrepencies. LensClient has a {{Map<QueryHandle, LensStatement>}} and also 
> has a cached instance of {{LensStatement}}. When two threads fire queries, 
> both use the same statement object. {{LensStatement}} object in turn caches 
> {{LensQuery}} Object. So whichever thread fired query last is the last one to 
> set lens query inside statement causing 
> {{LensClient.getStatement().getQuery()}} to return that query object for all 
> threads. 



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to