Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Report a possible race issue #6273

Closed
baigd opened this issue Sep 22, 2015 · 1 comment
Closed

Report a possible race issue #6273

baigd opened this issue Sep 22, 2015 · 1 comment
Milestone

Comments

@baigd
Copy link

@baigd baigd commented Sep 22, 2015

Hi, Developers of hazelcast/hazelcast,

I am writing to report a race issue on use of ConcurrentHashMap. The issue is reported by our tool in an automatic way. Although manually confirmed, it would be a false positive, given we do not know the specification of the program. We would very appreciate if you could check below for details and confirm with us whether it is a real problem. For more information, please refer to our website: http://sav.sutd.edu.sg/?page_id=2845

File: hazelcast/hazelcast/hazelcast/src/main/java/com/hazelcast/cache/impl/AbstractCacheService.java
Location: Line (453/450, 461)
Description:
The get-put operations (in line 450, 453) are guarded by the lock "resources". If the intention is to guarantee atomicity of the get-put operation, then the remove operation in line 461 may break this atomicity. Relying on the ConcurrentHashMap to ensure exclusive access is dangerous since ConcurrentHashMap has no guarantee of exclusive access.

@serkan-ozal
Copy link
Contributor

@serkan-ozal serkan-ozal commented Sep 22, 2015

Hi @baigd,

Thanks for reporting the issue. Yes there is no atomicity as you mentioned but in fact the problem itself is synchronization problem between cache creation (record store creation) and destroy.

I will look at this issue from this perspective more detailed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

5 participants
You can’t perform that action at this time.