Transient collections should guarantee thread visibility

Description

With changes from CLJ-1498, transients are still thread isolated but may move between threads during their lifetime which introduces new concurrency concerns, namely visibility of changes across threads.

Approach: Make all transient collection fields either final or volatile to ensure visibility across threads.

Patch: clj-1580-2.patch

Screened by:

Environment

None

Attachments

2

Activity

Alex Miller 
January 2, 2015 at 5:57 PM

Added -2 patch that makes ATransientSet.impl volatile.

Stuart Halloway 
January 2, 2015 at 5:39 PM

Should ATtransientSet.impl be volatile also?

Completed

Details

Assignee

Reporter

Labels

Approval

Patch

Priority

Affects versions

Fix versions

Created November 5, 2014 at 5:43 PM
Updated January 9, 2015 at 2:02 PM
Resolved January 9, 2015 at 2:02 PM