Bug #7222
closedОшибка при redo изменения значения атрибута у унаследованного узла
100%
Description
1. У требования создаем атрибут с некоторым значением ('значение_1').
2. В проекте создаем виртуальный узел и в качестве целевого для него указываем наше требование.
3. У ребенка виртуального узла (т.е. у клонированного требования) открываем Properties view, видим там унаследованный атрибут со значением 'значение_1'. Меняем его значение на любое другое ('значение_2').
4. Делаем Undo два раза.
5. Делаем Redo два раза.
Возникает сообщение об ошибке.
В Error log две ошибки:
eclipse.buildId=4.4.1.M20140925-0400
java.version=1.8.0_73
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=ru_RU
Framework arguments: -product org.eclipse.epp.package.standard.product
Command-line arguments: -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.standard.product
org.eclipse.ui
Error
Wed May 18 17:02:49 MSK 2016
node not found: af0adf07-7ec6-4f73-aacb-943e8e7481a6
java.lang.RuntimeException: node not found: af0adf07-7ec6-4f73-aacb-943e8e7481a6
at com.unitesk.requality.core.TreeDB.getNode(TreeDB.java:723)
at com.unitesk.requality.core.TreeDB$5.changed(TreeDB.java:1395)
at com.unitesk.requality.core.instancer.TreeInstancer.saveAttributes(TreeInstancer.java:577)
at com.unitesk.requality.core.instancer.TreeInstancer.saveAttributes(TreeInstancer.java:522)
at com.unitesk.requality.core.transaction.SaveAttributes.apply(SaveAttributes.java:31)
at com.unitesk.requality.core.transaction.TransactionStorage.apply(TransactionStorage.java:269)
at com.unitesk.requality.eclipse.operations.TreeDBOperation.redo(TreeDBOperation.java:34)
at org.eclipse.core.commands.operations.DefaultOperationHistory.doRedo(DefaultOperationHistory.java:357)
at org.eclipse.core.commands.operations.DefaultOperationHistory.redo(DefaultOperationHistory.java:1110)
at org.eclipse.ui.operations.RedoActionHandler.runCommand(RedoActionHandler.java:86)
at org.eclipse.ui.operations.OperationHistoryActionHandler$1.run(OperationHistoryActionHandler.java:318)
at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:466)
at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:374)
at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:527)
at org.eclipse.ui.internal.operations.TimeTriggeredProgressMonitorDialog.access$6(TimeTriggeredProgressMonitorDialog.java:1)
at org.eclipse.ui.internal.operations.TimeTriggeredProgressMonitorDialog$2.run(TimeTriggeredProgressMonitorDialog.java:214)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.ui.internal.operations.TimeTriggeredProgressMonitorDialog.run(TimeTriggeredProgressMonitorDialog.java:227)
at org.eclipse.ui.operations.OperationHistoryActionHandler.run(OperationHistoryActionHandler.java:333)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:519)
at org.eclipse.jface.commands.ActionHandler.execute(ActionHandler.java:122)
at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:90)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:55)
at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:247)
at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:229)
at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:132)
at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:149)
at org.eclipse.core.commands.Command.executeWithChecks(Command.java:499)
at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:508)
at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:210)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.executeCommand(KeyBindingDispatcher.java:286)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.press(KeyBindingDispatcher.java:507)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.processKeyEvent(KeyBindingDispatcher.java:558)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.filterKeySequenceBindings(KeyBindingDispatcher.java:378)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.access$0(KeyBindingDispatcher.java:324)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher$KeyDownFilter.handleEvent(KeyBindingDispatcher.java:86)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1262)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1060)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1085)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1070)
at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1112)
at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1108)
at org.eclipse.swt.widgets.Widget.wmChar(Widget.java:1529)
at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:4722)
at org.eclipse.swt.widgets.Tree.WM_CHAR(Tree.java:6028)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4610)
at org.eclipse.swt.widgets.Tree.windowProc(Tree.java:6024)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:5023)
at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2549)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3759)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:135)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
eclipse.buildId=4.4.1.M20140925-0400
java.version=1.8.0_73
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=ru_RU
Framework arguments: -product org.eclipse.epp.package.standard.product
Command-line arguments: -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.standard.product
org.eclipse.ui
Error
Wed May 18 17:02:49 MSK 2016
node not found: af0adf07-7ec6-4f73-aacb-943e8e7481a6
Updated by Denis Kildishev over 8 years ago
- Status changed from New to Resolved
- % Done changed from 0 to 100
Applied in changeset r5016.
Updated by Viktoria Kopach over 8 years ago
- Status changed from Resolved to Open
- Published in build deleted (
0.20.254)
Ошибка воспроизводится по-прежнему, как описано в тикете.
Updated by Denis Kildishev over 8 years ago
- Target version changed from 0.20 to 0.21
Updated by Denis Kildishev almost 8 years ago
- Status changed from Open to Resolved
- Published in build set to 0.21.286
А вот сейчас опять не воспроизводится
Updated by Viktoria Kopach almost 8 years ago
- Status changed from Resolved to Open
После первого же Redo у виртуального узла появляется два почти одинаковых дочерних узла. ID у них одинаковый и все остальное тоже совпадает. Но у одного атрибут имеет значение 'значение_1' и является унаследованным.А у второго узла атрибут не унаследованный и имеет значение 'значение_2'.
Updated by Denis Kildishev almost 8 years ago
- Status changed from Open to Resolved
Applied in changeset r5417.
Updated by Denis Kildishev almost 8 years ago
- Published in build changed from 0.21.286 to 0.21.287
Updated by Viktoria Kopach almost 8 years ago
- Status changed from Resolved to Open
После второго redo значение атрибута остается 'значение_1', хотя ожидается 'значение_2'.
Updated by Denis Kildishev almost 8 years ago
- Status changed from Open to Resolved
Applied in changeset r5424.
Updated by Viktoria Kopach almost 8 years ago
- Published in build deleted (
0.21.287)
Updated by Denis Kildishev almost 8 years ago
- Published in build set to 0.21.288
Updated by Viktoria Kopach almost 8 years ago
- Status changed from Resolved to Verified
Updated by Denis Kildishev over 7 years ago
- Status changed from Verified to Resolved
Applied in changeset requality|commit:dfd9663e76ff5251dd8d30c8eed607edfe282bd9.
Updated by Denis Kildishev over 7 years ago
Applied in changeset requality|commit:038c7ed633ad430a8a64425fff0b036e8fafdbf0.
Updated by Denis Kildishev over 7 years ago
Applied in changeset requality|commit:377cf2e4aed09240793177c0028088636cff3e0b.
Updated by Alexey Khoroshilov over 7 years ago
- Status changed from Resolved to Closed