[JBoss JIRA] Created: (JBCACHE-1201) OPTIMISTIC locking requires SyncCommitPhase to be true
by Brian Stansberry (JIRA)
OPTIMISTIC locking requires SyncCommitPhase to be true
------------------------------------------------------
Key: JBCACHE-1201
URL: http://jira.jboss.com/jira/browse/JBCACHE-1201
Project: JBoss Cache
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Replication
Reporter: Brian Stansberry
Assigned To: Manik Surtani
Fix For: 2.1.0.BETA1
When using OPTIMISTIC and REPL_SYNC, I find I need to set SyncCommitPhase=true in order for the following to work:
tm.begin();
cache1.put(fqn, KEY, VALUE1);
tm.commit();
assertEquals("Correct node2 value", VALUE1, cache2.get(fqn, KEY));
With SyncCommitPhase=false, cache2.get(fqn, KEY) consistently returns null.
A simple sleep after the commit call will also make this test pass
My understanding of distributed optimistic locking is that at the end of the prepare phase, on all nodes in the cluster the originating node's workspace modifications should have been applied to the main tree, with normal write locks held on the updated nodes. The commit call then causes the locks to be released, as in pessimistic locking.
The above test result implies this is not the case. That implies more work is going on in the commit phase than is appropriate for a Synchronization.afterCompletion() callback.
Test for this is o.j.c.optimistic.FullStackInterceptorTest.testAsynchronousCommit()
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
18 years, 4 months
[JBoss JIRA] Created: (JBRULES-1417) NPE when trying to save file in Eclipse Drools Editor
by Marcus Ilgner (JIRA)
NPE when trying to save file in Eclipse Drools Editor
-----------------------------------------------------
Key: JBRULES-1417
URL: http://jira.jboss.com/jira/browse/JBRULES-1417
Project: JBoss Drools
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Eclipse IDE
Affects Versions: 4.0.3
Environment: MacOS X 10.4, Eclipse 3.3.1.1
Reporter: Marcus Ilgner
Priority: Minor
eclipse.buildId=M20071023-1652
java.version=1.5.0_13
java.vendor=Apple Computer, Inc.
BootLoader constants: OS=macosx, ARCH=x86, WS=carbon, NL=en_US
Framework arguments: -keyring /Users/marcus/.eclipse_keyring -showlocation
Command-line arguments: -os macosx -ws carbon -arch x86 -keyring /Users/marcus/.eclipse_keyring -consoleLog -showlocation
Warning
Sun Jan 13 22:40:39 CET 2008
Save Failed
java.lang.NullPointerException
at org.drools.eclipse.util.ProjectClassLoader.getRawLocationFile(Unknown Source)
at org.drools.eclipse.util.ProjectClassLoader.getRawLocationURL(Unknown Source)
at org.drools.eclipse.util.ProjectClassLoader.getProjectClassPathURLs(Unknown Source)
at org.drools.eclipse.util.ProjectClassLoader.getProjectClassPathURLs(Unknown Source)
at org.drools.eclipse.util.ProjectClassLoader.getProjectClassLoader(Unknown Source)
at org.drools.eclipse.DroolsEclipsePlugin.generateParsedResource(Unknown Source)
at org.drools.eclipse.DroolsEclipsePlugin.parseResource(Unknown Source)
at org.drools.eclipse.editors.outline.RuleContentOutlinePage.initRules(Unknown Source)
at org.drools.eclipse.editors.outline.RuleContentOutlinePage.update(Unknown Source)
at org.drools.eclipse.editors.AbstractRuleEditor.doSave(Unknown Source)
at org.drools.eclipse.editors.DRLRuleEditor.doSave(Unknown Source)
at org.drools.eclipse.editors.DRLRuleEditor2.doSave(Unknown Source)
at org.eclipse.ui.internal.SaveableHelper$1.run(SaveableHelper.java:143)
at org.eclipse.ui.internal.SaveableHelper$4.run(SaveableHelper.java:266)
at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:369)
at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:313)
at org.eclipse.jface.window.ApplicationWindow$1.run(ApplicationWindow.java:758)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67)
at org.eclipse.jface.window.ApplicationWindow.run(ApplicationWindow.java:755)
at org.eclipse.ui.internal.WorkbenchWindow.run(WorkbenchWindow.java:2451)
at org.eclipse.ui.internal.SaveableHelper.runProgressMonitorOperation(SaveableHelper.java:274)
at org.eclipse.ui.internal.SaveableHelper.runProgressMonitorOperation(SaveableHelper.java:253)
at org.eclipse.ui.internal.SaveableHelper.savePart(SaveableHelper.java:148)
at org.eclipse.ui.internal.EditorManager.savePart(EditorManager.java:1345)
at org.eclipse.ui.internal.WorkbenchPage.savePart(WorkbenchPage.java:3202)
at org.eclipse.ui.internal.WorkbenchPage.saveEditor(WorkbenchPage.java:3215)
at org.eclipse.ui.internal.SaveAction.run(SaveAction.java:73)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
at org.eclipse.jface.commands.ActionHandler.execute(ActionHandler.java:119)
at org.eclipse.core.commands.Command.executeWithChecks(Command.java:475)
at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:429)
at org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerService.java:165)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand(WorkbenchKeyboard.java:470)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.press(WorkbenchKeyboard.java:821)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.processKeyEvent(WorkbenchKeyboard.java:879)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.filterKeySequenceBindings(WorkbenchKeyboard.java:568)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.access$3(WorkbenchKeyboard.java:510)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard$KeyDownFilter.handleEvent(WorkbenchKeyboard.java:126)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1101)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1494)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1519)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1504)
at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1556)
at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1551)
at org.eclipse.swt.widgets.Control.kEventUnicodeKeyPressed(Control.java:2090)
at org.eclipse.swt.widgets.Composite.kEventUnicodeKeyPressed(Composite.java:580)
at org.eclipse.swt.widgets.Control.kEventTextInputUnicodeForKeyEvent(Control.java:2071)
at org.eclipse.swt.widgets.Widget.textInputProc(Widget.java:1925)
at org.eclipse.swt.widgets.Display.textInputProc(Display.java:3806)
at org.eclipse.swt.internal.carbon.OS.SendEventToEventTarget(Native Method)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2938)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2389)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2219)
at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:466)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:289)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:461)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:106)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:169)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:508)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:447)
at org.eclipse.equinox.launcher.Main.run(Main.java:1173)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
18 years, 4 months