Consultor Eletrônico



Kbase P142172: OE Architect 10.2A is freezing randomly after upgrade
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   11/02/2010
Status: Verified

SYMPTOM(s):

OE Architect 10.2A is freezing randomly after upgrade

Freeze can happen opening file, requesting code completion using ctrl+space or when editing file.

Freeze happens with or without database connections

No error messages are displayed

.log file in the .metadata directory, displays no error messages

Hang occurs for few minutes and then session goes back to normal

Problem occurs when project is placed in local or shared drive

'Build Automatically' option is turned off

'Refresh Automatically' option is turned off

'Save Automatically' option is turned off

Java Stack Trace from JConsole:
Name: main
State: RUNNABLE
Total blocked: 421 Total waited: 49
Stack trace:
java.io.WinNTFileSystem.getBooleanAttributes(Native Method)
java.io.File.isFile(File.java:747)
com.openedge.core.util.DirectoryWalker.visitFile(DirectoryWalker.java:41)
com.openedge.core.util.DirectoryWalker.visitFile(DirectoryWalker.java:40)
com.openedge.core.util.DirectoryWalker.visitFile(DirectoryWalker.java:40)
com.openedge.core.util.DirectoryWalker.visitFile(DirectoryWalker.java:40)
com.openedge.core.util.DirectoryWalker.accept(DirectoryWalker.java:22)
com.openedge.core.otm.OTM.getRcodeTypes(OTM.java:757)
com.openedge.core.otm.OTM.loadTypes(OTM.java:788)
com.openedge.core.otm.OBLibraryInfo.loadTypes(OBLibraryInfo.java:110)
com.openedge.core.otm.OBLibraryInfo.getTypes(OBLibraryInfo.java:147)
com.openedge.core.otm.OBProjectInfo.getResources(OBProjectInfo.java:58)
com.openedge.pdt.text.codeinfo.CodeModel.getAllTypesFromOTM(CodeModel.java:621)
com.openedge.pdt.text.codeinfo.CodeModel.findAllTypes(CodeModel.java:279)
com.openedge.pdt.text.actions.editor.InsertIntoEditorAction.isInterface(InsertIntoEditorAction.java:101)
com.openedge.pdt.text.actions.editor.AddDestructor.update(AddDestructor.java:110)
com.openedge.pdt.text.actions.editor.OEEditorAction$1.reconciled(OEEditorAction.java:250)
com.openedge.pdt.text.editor.OESourceViewer$2$1.run(OESourceViewer.java:284)
org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
com.openedge.pdt.text.editor.OESourceViewer$2.run(OESourceViewer.java:282)
org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:133)
org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3800)
org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3425)
org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2382)
org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346)
org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2198)
org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493)
org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:288)
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:488)
org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113)
org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:193)
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:382)
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:585)
org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549)
org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
org.eclipse.equinox.launcher.Main.run(Main.java:1236)
org.eclipse.equinox.launcher.Main.main(Main.java:1212)

FACT(s) (Environment):

Project doesn't contain visual designer classes
Project is placed in a shared drive
All Supported Operating Systems
OpenEdge 10.2A

CAUSE:

This particular problem occurs when there is no r-code for classes in the project. Architect must do a directory scan every time the file being worked on is modified and this causes the noted performance issue.

FIX:

Upgrade to OpenEdge 10.2A, OpenEdge 10.2B or later. If upgrading is not fesible, a workaround is to compile all the ABL classes and procedures in the project.