This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
Summary: | Editor locked up during code completion autopopup. | ||
---|---|---|---|
Product: | web | Reporter: | _ pcw <pcw> |
Component: | HTML Editor | Assignee: | Marek Fukala <mfukala> |
Status: | RESOLVED FIXED | ||
Severity: | blocker | CC: | blaha, jsedek, mmirilovic, pjiricka |
Priority: | P1 | ||
Version: | 6.x | ||
Hardware: | Sun | ||
OS: | Solaris | ||
Issue Type: | DEFECT | Exception Reporter: | |
Attachments: |
stack trace
example file |
Description
_ pcw
2007-11-27 22:29:45 UTC
Created attachment 53575 [details]
stack trace
messages.log header:
-------------------------------------------------------------------------------
>Log Session: Monday, November 26, 2007 5:18:20 PM PST
>System Info:
Product Version = NetBeans IDE Dev (Build 071126)
Operating System = SunOS version 5.10 running on x86
Java; VM; Vendor = 1.6.0_03; Java HotSpot(TM) Client VM 1.6.0_03-b05; Sun Microsystems Inc.
Java Home = /usr/jdk/instances/jdk1.6.0_03/jre
System Locale; Encoding = en (nb); ISO646-US
Home Directory = /home/peterw99
Current Directory = /space/peterw/nb6/nbbuild/netbeans/bin
User Directory = /space/peterw/userdir/nb6_jdk6_dev_run
Installation = /space/peterw/nb6/nbbuild/netbeans/nb6.0
/space/peterw/nb6/nbbuild/netbeans/ide8
/space/peterw/nb6/nbbuild/netbeans/java1
/space/peterw/nb6/nbbuild/netbeans/apisupport1
/space/peterw/nb6/nbbuild/netbeans/enterprise4
/space/peterw/nb6/nbbuild/netbeans/profiler2
/space/peterw/nb6/nbbuild/netbeans/harness
/space/peterw/nb6/nbbuild/netbeans/extra
/space/peterw/nb6/nbbuild/netbeans/platform7
Boot & Ext. Classpath =
/usr/jdk/instances/jdk1.6.0_03/jre/lib/resources.jar:/usr/jdk/instances/jdk1.6.0_03/jre/lib/rt.jar:/usr/jdk/instances/jdk1.6.0_03/jre/lib/sunrsasign.jar:/usr/jdk/instances/jdk1.6.0_03/jre/lib/jsse.jar:/usr/jdk/instances/jdk1.6.0_03/jre/lib/jce.jar:/usr/jdk/instances/jdk1.6.0_03/jre/lib/charsets.jar:/usr/jdk/instances/jdk1.6.0_03/jre/classes:/usr/jdk/instances/jdk1.6.0_03/jre/lib/ext/sunjce_provider.jar:/usr/jdk/instances/jdk1.6.0_03/jre/lib/ext/sunpkcs11.jar:/usr/jdk/instances/jdk1.6.0_03/jre/lib/ext/dnsns.jar:/usr/jdk/instances/jdk1.6.0_03/jre/lib/ext/localedata.jar:/usr/jdk/packages/lib/ext/jhall.jar
Application Classpath =
/space/peterw/nb6/nbbuild/netbeans/platform7/lib/boot.jar:/space/peterw/nb6/nbbuild/netbeans/platform7/lib/org-openide-modules.jar:/space/peterw/nb6/nbbuild/netbeans/platform7/lib/org-openide-util.jar:/usr/jdk/jdk1.6.0/lib/dt.jar:/usr/jdk/jdk1.6.0/lib/tools.jar
Startup Classpath =
/space/peterw/nb6/nbbuild/netbeans/platform7/core/org-openide-filesystems.jar:/space/peterw/nb6/nbbuild/netbeans/platform7/core/core.jar:/space/peterw/nb6/nbbuild/netbeans/nb6.0/core/org-netbeans-upgrader.jar:/space/peterw/nb6/nbbuild/netbeans/nb6.0/core/locale/core_nb.jar
Actually, maybe this isn't 110074 after all. One of the CPU's is pegged at 100% indicating that the thread that owns whatever lock the AWT thread is waiting on is in an infinite or near infinite loop. The following thread stack (from the trace) might be the culprit - I was able to get 2 stack dumps before the console also locked up and this thread is definitely running (top of stack was at line 488 and 489 in the two dumps). "Default RequestProcessor" daemon prio=1 tid=0x093d3800 nid=0xe2 runnable [0xcd5ff000..0xcd5ffaf0] java.lang.Thread.State: RUNNABLE at org.netbeans.editor.ext.html.HTMLSyntaxSupport.getElementChain(HTMLSyntaxSupport.java:488) at org.netbeans.editor.ext.html.HTMLSyntaxSupport.getPreviousElement(HTMLSyntaxSupport.java:378) at org.netbeans.editor.ext.html.SyntaxElement.getPrevious(SyntaxElement.java:117) at org.netbeans.editor.ext.html.HTMLSyntaxSupport.getPossibleEndTags(HTMLSyntaxSupport.java:822) at org.netbeans.editor.ext.html.HTMLCompletionQuery.query(HTMLCompletionQuery.java:257) at org.netbeans.modules.editor.html.HTMLCompletionProvider$Query.doQuery(HTMLCompletionProvider.java:104) at org.netbeans.modules.editor.html.HTMLCompletionProvider$AbstractQuery.query(HTMLCompletionProvider.java:154) at org.netbeans.spi.editor.completion.support.AsyncCompletionTask.run(AsyncCompletionTask.java:218) at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:561) at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:986) Not 110074 - I restarted with -J-XX:-UseThreadPriorities -J-XX:-UseBiasedLocking and can reproduce the infinite loop by doing the following edits in the attached HTML file. Open secure-ejb.html in the editor (attached). On line 35, add '<s>' before "no longer", then add '<s' after "no longer" and hit ctrl-escape. Editor freezes and cpu (or 1 core) will be pegged. Created attachment 53578 [details]
example file
P1 due to dataloss - have to kill ide from outside losing all unsaved changes. Seems like an infinite loop in HTMLSyntaxSupport.getElementChain(). Reassigning. Peter/Marek, does this only affect the 6.1 trunk build, or is there a possibility that this is also manifested in 6.0 FCS? Thanks. I can reproduce this in trunk but it I'm not able to reproduce is 6.0FCS. It happens in the situation while cc is asked to add ending ">". It doesn't happen for example in situation of -------------- <h1> ... </| ------------- but it happens in situation of --------------- <h1> ... </h1| -------------- I'm changing version to dev according to jsedek's comment. I confirm the problem is reproducible on trunk, not on 6.0. Probably caused by some refactoring done after the branch point. Will be fixed (the errorneous code removed) by reimplementing the html parsing support. I'll add a temporary simple hotfix. fixed Checking in HTMLSyntaxSupport.java; /cvs/html/editor/lib/src/org/netbeans/editor/ext/html/HTMLSyntaxSupport.java,v <-- HTMLSyntaxSupport.java new revision: 1.41; previous revision: 1.40 done *** Issue 123220 has been marked as a duplicate of this issue. *** |