Opened 7 years ago

Last modified 6 years ago

#6119 confirmed Bug

Web Spell Checker - "finish checking" takes ages to finish

Reported by: Wiktor Walc Owned by:
Priority: Normal Milestone:
Component: UI : Spell Checker Version:
Keywords: HasPatch, Review? Cc:


When having a larger document, the SpellChecker dialog becomes useless. I have tried editing the following document in CKEditor:

and after opening the "SpellChecker" dialog (with the "Check Spelling" button), after I clicked "Finish Checking" button inside of the dialog, it didn't close in a reasonable amount of time (it took almost 9 minutes, I have pretty fast internet connection). I have tested it in IE8.

To reproduce load the attached HTML source and use WSC.

I have no idea how spell checker works, but it looks like the problem is that the data is sent in a really small chunks, thus checking the whole document requires hundreds of HTTP requests.

There is one more thing that I do not understand here: I have pressed the "Check Spelling" button, I did not change anything in the dialog and just pressed the "Finish Checking" button. Why is it taking so long if I did not change the document at all?

If it really has to take a lot of time, we could at least display an estimated time required to finish processing, because it is definitely not obvious that this operation may take so long.

Attachments (2)

wsc_source_error.txt (295.7 KB) - added by Wiktor Walc 7 years ago.
6119.patch (842 bytes) - added by 6 years ago.

Download all attachments as: .zip

Change History (12)

Changed 7 years ago by Wiktor Walc

Attachment: wsc_source_error.txt added

comment:1 Changed 7 years ago by

Thank you for this report. have added this bug into defect tracking system. We are working on it and will provide fix as soon as possible.

comment:2 Changed 7 years ago by

Keywords: Confirmed added

comment:3 Changed 7 years ago by Sa'ar Zac Elias

Keywords: Confirmed removed
Status: newconfirmed

comment:4 Changed 7 years ago by

Here are two problems

  1. Slow transport which is used to pass data from SpellChecker back to the editor. This transport was developed for FCKeditor and then was used for CKEditor. It is an surrogate for sproxy script (, which reload data with small chunks between spellchecker site URL and target site URL. The solution is ok for most of Internet users but is not good for users who utilize spellchecker to check and correct big enough texts (50K and more). Adding progress indication may change user experience but will not solve the problem. The solution we see now is to improve WSC plug-in to support sproxy (for customers who are interested in it) and probably utilize some new tequniques like Message Passing for some browsers, but this is an step-back solution. Other alternative here is to work on new WebSpellChecker based on SCAYT core, which will not have such limitations as current solution have. Both solutions requires significant time to implement (around month).
  1. Spellchecker does not check whether document is changed and starts to pass data back to the editor instead of just closing the spellchecker window. The solution for this problem is to add functionality on side to check whether there was any changes and take into account this information when "Finish Checking" was clicked. This is quick solution.

We suggest to implement 2. and schedule one of solutions for 1. We are open to discuss any other options.

comment:5 Changed 7 years ago by Frederico Caldeira Knabben

I think it's senseless to maintain different spellchecking solutions. would benefit a lot by having the WSC UI using the SCAYT core engine. It looks like the hardest path, but it's the most beneficial approach for the long run.

comment:6 Changed 7 years ago by

We do agree. We will rise the priority of this task in our backlog and will start to implement it within a month.

comment:7 Changed 7 years ago by Garry Yao

The performance issue is still there.

comment:8 Changed 6 years ago by Frank

I experienced this issue as well with a .NET implementation...looking forward to the fix.

Changed 6 years ago by

Attachment: 6119.patch added

comment:9 Changed 6 years ago by

Keywords: Review? added

postMessage cross-domain transport implemented for browsers which support postMessage.

Last edited 6 years ago by (previous) (diff)

comment:10 Changed 6 years ago by

Keywords: HasPatch added
Note: See TracTickets for help on using tickets.
© 2003 – 2017 CKSource – Frederico Knabben. All rights reserved. | Terms of use | Privacy policy