geode-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF subversion and git services (JIRA)" <>
Subject [jira] [Commented] (GEODE-3021) OQL Index isIndexedPdxKeys potential concurrency issue
Date Tue, 06 Jun 2017 17:07:18 GMT


ASF subversion and git services commented on GEODE-3021:

Commit b31769d7ad46e9c53f481b44a19267630007f1bf in geode's branch refs/heads/feature/GEODE-3021
from [~huynhja]
[;h=b31769d ]

Merge branch 'develop' of into feature/GEODE-3021

> OQL Index isIndexedPdxKeys potential concurrency issue
> ------------------------------------------------------
>                 Key: GEODE-3021
>                 URL:
>             Project: Geode
>          Issue Type: Bug
>          Components: querying
>            Reporter: Jason Huynh
>            Assignee: Jason Huynh
> The boolean isIndexedPdxKeys is set in a synchronized method.  However multiple threads
could be making a call to this method, the last caller would set the flag based on it's key,
either true or false, but the previous callers could have meant to set it to the opposite.
> This method sets isIndexedPdxKeysFlagSet afterwards and hopes that callers to this method
check this flag first.  However, again, multiple threads could have checked this flag, seen
it as false, and then all attempted to call the synchronized method.  
> The solution is to probably check the isIndexedPdxKeysFlagSet flag in the method also.
 That way, if another thread had already completed setPdxStringFlag(), the next call would
be a no-op.
> The current issue will lead to possible class cast exceptions from String to PdxString
or vice versa

This message was sent by Atlassian JIRA

View raw message