You are viewing a plain text version of this content. The canonical link for it is here.
Posted to slide-dev@jakarta.apache.org by oz...@apache.org on 2004/06/21 17:58:49 UTC
cvs commit: jakarta-slide/src/share/org/apache/slide/store ExtendedStore.java
ozeigermann 2004/06/21 08:58:49
Modified: src/share/org/apache/slide/store ExtendedStore.java
Log:
- Added some FIXMEs
- Fixed minor bugs that did not enforce enlistment of certain retrieval methods into transactions
Revision Changes Path
1.11 +12 -10 jakarta-slide/src/share/org/apache/slide/store/ExtendedStore.java
Index: ExtendedStore.java
===================================================================
RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/store/ExtendedStore.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- ExtendedStore.java 6 May 2004 09:17:54 -0000 1.10
+++ ExtendedStore.java 21 Jun 2004 15:58:49 -0000 1.11
@@ -755,8 +755,7 @@
if (tempObject != null) {
return ((NodeRevisionDescriptors) tempObject).cloneObject();
} else {
- NodeRevisionDescriptors revisionDescriptors =
- revisionDescriptorsStore.retrieveRevisionDescriptors(uri);
+ NodeRevisionDescriptors revisionDescriptors = super.retrieveRevisionDescriptors(uri);
descriptorsCache.put(uri.toString(), revisionDescriptors);
revisionDescriptors.validate(uri.toString());
return revisionDescriptors.cloneObject();
@@ -820,8 +819,7 @@
if (result != null) {
return ((NodeRevisionDescriptor) result).cloneObject();
} else {
- NodeRevisionDescriptor revisionDescriptor =
- revisionDescriptorStore.retrieveRevisionDescriptor(uri, revisionNumber);
+ NodeRevisionDescriptor revisionDescriptor = super.retrieveRevisionDescriptor(uri, revisionNumber);
revisionDescriptor.validate();
descriptorCache.put(uri + "-" + revisionNumber, revisionDescriptor);
return revisionDescriptor.cloneObject();
@@ -931,6 +929,7 @@
return XA_OK;
}
+ // FIXME needs suspend and resume here as well!
public void start(Xid xid, int flags) throws XAException {
// XXX we do not suspend, so we do not resume
if (flags == TMNOFLAGS || flags == TMJOIN) {
@@ -959,6 +958,9 @@
}
protected void releaseTransientLocks() {
+ // XXX can be the case when an external transaction took up work in another thread
+ // no need to implement suspend and resume here as tlocks will not be used with external transactions
+ if (locks.get() == null) return;
Xid txId = (Xid) activeTransactionBranch.get();
for (Iterator it = ((HashSet)locks.get()).iterator(); it.hasNext();) {
@@ -977,7 +979,7 @@
return permissions;
} else {
permissions = new Vector();
- Enumeration permissionsList = securityStore.enumeratePermissions(uri);
+ Enumeration permissionsList = super.enumeratePermissions(uri);
while (permissionsList.hasMoreElements()) {
NodePermission tempPermission = (NodePermission) permissionsList.nextElement();
tempPermission.validate(uri.toString());
@@ -994,7 +996,7 @@
return locksVector;
} else {
locksVector = new Vector();
- Enumeration lockList = lockStore.enumerateLocks(uri);
+ Enumeration lockList = super.enumerateLocks(uri);
while (lockList.hasMoreElements()) {
NodeLock tempLock = (NodeLock) lockList.nextElement();
tempLock.validate(uri.toString());
---------------------------------------------------------------------
To unsubscribe, e-mail: slide-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: slide-dev-help@jakarta.apache.org