openjpa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Albert Lee (JIRA)" <j...@apache.org>
Subject [jira] Created: (OPENJPA-362) Object Locking API problems
Date Sun, 09 Sep 2007 14:29:29 GMT
Object Locking API problems
---------------------------

                 Key: OPENJPA-362
                 URL: https://issues.apache.org/jira/browse/OPENJPA-362
             Project: OpenJPA
          Issue Type: Bug
          Components: kernel
    Affects Versions: 1.0.0
         Environment: All platforms
            Reporter: Albert Lee


The manual describes the following Object Locking API

public void lock(Object pc);
public void lock(Object pc, LockModeType mode, long timeout);
public void lockAll(Object... pcs);
public void lockAll(Object... pcs, LockModeType mode, long timeout);
public void lockAll(Collection pcs);
public void lockAll(Collection pcs, LockModeType mode, long timeout);

Problems observed:

1)  In EntityManagerImpl,

  Missing method implementation
        public void lockAll(Object... pcs, LockModeType mode, long timeout);
  But found this instead.
        public void lockAll(Object[] entities, LockModeType mode, int timeout) {

2) For those API methods with timeout argument, what is the behavior when timeout occurs?
Will an exception be thrown? Since these method has void return, no return value can be used
to indicate the timeout condition.

3) For those API methods with timeout argument, the timeout value does not seem to be used
at all, hence the timeout feature is a NOP. 
      i.e. EntityManagerImpl.lock*() -> BrokerImpl.lock() --> VersionLockManager | NonLockManager

    a) Is the API just an architected feature?
    b)  Is the timeout feature not implemented and require user to implements its lock manager
that support the timeout feature?

Albert Lee.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message