Modify

Ticket #117 (closed defect: wontfix)

Opened 11 years ago

Memory model problem in synchronized block trafo

Reported by: Bernhard Haumacher (haui at haumacher dot de) Owned by:
Priority: normal Milestone: 1.07a
Component: JP trafo Version:
Severity: normal Keywords:
Cc:

Description

If the locking expression in a synchronized block is determined to be of remote type, only remote locking via the _enter() and _exit() methods is generated. This is illegal according to the Java memory model, because the thread entering the remotely synchronized block may not see locally updated memory and may not flush its local memory to global memory after exiting the remotely synchronized block.

Evaluation

This behavior may only be noticed when using JavaParty on a cluster of SMP nodes.

Evaluation

Most probably this is not a problem, since KaRMI (and RMI?) have some synchronization on the call path of a remote method invocation. This synchronization will force the local cache of a thread to be flushed during the remote _enter() and _exit() calls.

See also

ticket:116, ticket:204

closed since 1.07a.

Attachments

View

Add a comment

Modify Ticket

Change Properties
<Author field>
Action
as closed
The resolution will be deleted. Next status will be 'reopened'
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.