#4954

Yutaka Emura
Keymaster

I opened one of my huge SQL-files (~160 MB; longest line is ~2700 characters) and found the following inconsistencies:

1. Wrapping Mode buttons on the toolbar are disabled both visually and functionally (the first button is shown normally, but cannot be pressed).

This is the specification. In order to improve performance in very large files, wrapping mode is fixed to “No-Wrap” mode in case of very large files. You can change the threshold in the file size in the Advanced tab of the Customize dialog box. The default is 100MB. You can change this value to 200MB if you don’t have problem with opening larger files.

2. Option Highlight (2) -> Strings Enclosed by Quotation Marks -> Continue to Next Line is not taken into account at all (I have a double-lines string but the first part of it is highlighted only).

This is also the specification, and it is restricted in larger files. Again, you can change the value above to 200MB if you need this feature.

3. When I try to search some text in this file, searching is performed twice (at least, it looks so). That is, in the progress dialog I see the line number increasing to the maximum number (1359306 in my case), then it becomes 0 and is growing to the maximum again – and only after this second cycle it stops. If I press Cancel during the first “stage”, the second stage immediately begins and I have to press Cancel again. (Maybe, this is valid not only with large files, but I can’t check it on small files – it’s too fast there.)

I reproduced this issue, and I will look into that.

4. Searching for n is extremely slow! Two tests:
a) Replace every n with n. In usual file it is done with speed ~1000 occurences per second. In this SQL file it happens just ~100 occurences per second. (The first lines in this SQL file are not long at all – maximum 80 characters, so it cannot be because of the rare appearance of the n’s in the file.)
b) Replace ^.{0,1000}$ with nothing: the speed is ~34000 replaces per second. When I changed the expression to ^.{0,1000}n, the speed became just ~100 replaces per second!

I will further try to optimize find/replace operations.
Thanks!