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.

Bug 230125 - Simplify locking mechanism of lexer
Summary: Simplify locking mechanism of lexer
Status: RESOLVED FIXED
Alias: None
Product: editor
Classification: Unclassified
Component: Lexer (show other bugs)
Version: 7.3
Hardware: PC Linux
: P2 normal (vote)
Assignee: Miloslav Metelka
URL:
Keywords: 7.4_WAIVER_APPROVED
Depends on:
Blocks: 227643
  Show dependency tree
 
Reported: 2013-05-22 14:54 UTC by Miloslav Metelka
Modified: 2013-11-15 07:59 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Miloslav Metelka 2013-05-22 14:54:25 UTC
For most of the operation TokenSequence will synchronize on root TokenList that it will cache.
Custom embedding removal should be simplified by removal of EmbeddingContainer class and just linking ETLs. There's a problem with TS.isValid() on removed custom embedding. For that case a new EmbeddingContainer used to be created (that was marked as removed) which made ETL.embeddingContainer non-final. Newly with EC removal the situation should be simpler. NO_DEFAULT_EMBEDDING flag could be handled by a bit flag in DefaultToken.tokenLength (and similarly for other token impls).
Comment 1 Miloslav Metelka 2013-09-05 11:35:58 UTC
I have a fix (the diff is about 236KB) that I'll soon integrate into the trunk once I'll fix remaining 4 tests in the lexer module that are currently failing.
However the fix should be tested for some time in the trunk first so I ask for waiver for 7.4 for this issue.
Comment 2 Miloslav Metelka 2013-10-11 11:34:53 UTC
http://hg.netbeans.org/jet-main/rev/8822288ae30c
Comment 3 Miloslav Metelka 2013-10-15 12:24:12 UTC
Additional fix of removed token sequences:
http://hg.netbeans.org/jet-main/rev/75bae758be34
Comment 4 Quality Engineering 2013-10-16 02:19:29 UTC
Integrated into 'main-silver', will be available in build *201310160001* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)

Changeset: http://hg.netbeans.org/main-silver/rev/8822288ae30c
User: Miloslav Metelka <mmetelka@netbeans.org>
Log: #230125 - Simplify locking mechanism of lexer.
Comment 5 Miloslav Metelka 2013-11-14 12:22:48 UTC
In release74:
8822288ae30c transplanted as 4a364bff396c
75bae758be34 transplanted as fab748867dc9
Comment 6 Quality Engineering 2013-11-14 14:31:18 UTC
Integrated into 'releases/release74', will be available in build *201311141216* or newer. Wait for official and publicly available build.

Changeset: http://hg.netbeans.org/releases/rev/4a364bff396c
User: Miloslav Metelka <mmetelka@netbeans.org>
Log: #230125 - Simplify locking mechanism of lexer.
(transplanted from 8822288ae30cb6e103417afe5bb72de6d34c1acc)
Comment 7 Quality Engineering 2013-11-15 01:36:37 UTC
Integrated into 'releases/release74', will be available in build *201311142201* or newer. Wait for official and publicly available build.

Changeset: http://hg.netbeans.org/releases/rev/fab748867dc9
User: Miloslav Metelka <mmetelka@netbeans.org>
Log: #230125 - Simplify locking mechanism of lexer - additional fix of removed token sequences.
(transplanted from 75bae758be34aa85cc568305abaff893643d7ba9)