Bug 195357 - [spell checking] Eclipse VERY slow with custom user dictionary on quick fix
Summary: [spell checking] Eclipse VERY slow with custom user dictionary on quick fix
Status: RESOLVED FIXED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Text (show other bugs)
Version: 3.3   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: 3.4 M7   Edit
Assignee: JDT-Text-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords: performance
Depends on:
Blocks:
 
Reported: 2007-07-04 05:20 EDT by Alexey Kuznetsov CLA
Modified: 2008-04-21 07:29 EDT (History)
2 users (show)

See Also:


Attachments
russian user dictionary from open office (403.20 KB, application/octet-stream)
2007-07-04 05:22 EDT, Alexey Kuznetsov CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alexey Kuznetsov CLA 2007-07-04 05:20:43 EDT
Build ID: I20070625-1500

Steps To Reproduce:
1. Get attached dict. (it is russian dictionary)
2. Open any java class in java code editor
3. Print some words in russian (incorrectly).
4. Put cursor to underlined word and pres ctrl+1 for quic fix ---> Eclipse get down for 2-3 minutes.



More information:
Comment 1 Alexey Kuznetsov CLA 2007-07-04 05:22:51 EDT
Created attachment 73009 [details]
russian user dictionary from open office
Comment 2 Dani Megert CLA 2008-04-21 07:29:47 EDT
The main problem is in the default hash algorithm DefaultPhoneticHashProvider.getHash(String) which causes too many collisions.  

Changing this algorithm is non-trivial. I've now added a guard/fallback in case of too many collisions. This fixes the performance problem.

Fixed in HEAD.
Available in builds > N20080420-2000.