Notepad++ 7.8.9 32bit freezes with dbf file
-
I have a dbf file from a Fox Pro database that I need to search through. The file size is about 8MB. When I have my dbf file open, if I minimize notepad++ or alt-tab to something else notepad++ starts to use a large amount of CPU and freezes. I noticed the problem starting with 7.8.7. I don’t know if earlier versions are affected.
The dbf starts off with some binary garbage and then switches to text for most of the rest of the file.
-
dbf file are, normally, binary files which do not work nicely with npp as npp is a text editor.
-
@Ekopalypse said in Notepad++ 7.8.9 32bit freezes with dbf file:
dbf file are, normally, binary files which do not work nicely with npp as npp is a text editor.
In theory, I concur. However, given the recent group of requests about Notepad++ freezing, starting somewhere in the 7.8.7-7.8.9 timeframe, I am wondering whether a recent change has affected the large-file editing capability.
Is the file on your local drive? or on a network drive? Or does it freeze under either location?
Could you try a big pure-text file, rather than a dbf file, and see if it still freezes?Please share your ? menu Debug Info
-
@Ekopalypse Unfortunately I don’t have access to the program that can properly decode the file so I have to make do. All I am doing is searching for strings.
@PeterJones The problem happens when the file is both local and on a network. Regular small text files work fine. I don’t have any large txt files at the moment. Notepad++ opens the dbf and works fine until I either Alt-Tab away or minimize the window so I am almost certain the problem is with Notepad++.
Notepad++ v7.8.9 (32-bit)
Build time : Jul 15 2020 - 20:26:50
Path : C:\Program Files (x86)\Notepad++\notepad++.exe
Admin mode : OFF
Local Conf mode : OFF
OS Name : Windows 10 Enterprise (64-bit)
OS Version : 1909
OS Build : 18363.959
Current ANSI codepage : 1252
Plugins : ComparePlugin.dll mimeTools.dll NppConverter.dll NppExport.dll SpellChecker.dll webedit.dll XMLTools.dll -
I don’t have any large txt files at the moment.
That only takes 30sec to overcome: create a new file, type text
Big Text File!
and hit enter. Hit Ctrl+A then Ctrl+D 23 times, and you have a 130MB file. Voila! Exponential growth is not just good for viruses.In fact, that’s how I made a big file to try to replicate your results: I saved
BigTextFile.dbf
as a plain text file to my local drive, minimized Notepad++, and nothing drastic happened.I originally tried in v7.8.7-64, since that’s my default Notepad++ instance for now. When I did that, the peak I saw Notepad++.exe go to was about 10%, for a few seconds after it was minimized.
To replicate your circumstances, I downloaded the zip for v7.8.9-32, and repeated the experiment: when I minimized it, there wasn’t even a blip in the CPU for notepad++.exe
You have a few extra plugins beyond the default; try the experiment with plugins disabled (there’s a command line option, shown in the ? > Command Line Arguments dialog).
Also, what kind of file does your instance of Notepad++ think that the dbf is? Does it say “Normal text file” like my screenshot, or does it say something else?
(A plugin or a syntax highlighter might be taking advantage of things.)
-
@PeterJones Thank you for the instructions. A regular text file works fine. I see the same spike in CPU usage as you do with the CPU returning to normal after a few seconds. The dbf does show as a normal text file. I ran notepad++ -noPlugin and opened my dbf. When I minimized the window my cpu spikes and stays that way until I kill Notepad++.
-
It’s looking more like @Ekopalypse might be right.
You might try downloading a portable/zip edition, unzip to your desktop, and see if it freezes . If not, maybe it’s one of your settings.
-
@PeterJones
I have downloaded the zip versions until 7.7 and all of them exhibit the problem. However this experimenting lead me to the source of the problem. When word wrap is turned on with my dbf file open and I minimize the notepad++ window my cpu spikes and stays spiked. If I turn word wrap off with my dbf file open and I minimize the notepad++ window my cpu spikes for several seconds, but then returns to normal. Given the file I have to work with, word wrap is the only way to see everything without huge amounts of scrolling left and right. -
why taking the pain to use an text editor to view a database file if
there are applications like this available? -
So I’m not big on using Notepad++ for non-text applications; I know the pitfalls…
But, since you said you were just looking thru the .dbf files with N++, and not changing them, I was thinking of what might happen if you changed (or deleted) all non-text data to text data. Would the file get easier to manipulate?
If you did this, you still might have a performance issue with “really long lines” and word-wrap. But, if you did a Split Lines operation you wouldn’t need word-wrap any longer, and could still browse the data.
Maybe you could do the Split Lines with leaving the binary data in place. Don’t know, but as you don’t need the binary “garbage”, let’s think about getting rid of it as a first step.
BTW, this all presumes you aren’t dealing heavily with encodings for this file, in which case probably all bets are off.
First of all, you’d definitely want to work on a backup copy of your .dbf file.
The first thing I would try would be to convert the file from whatever its encoding is, to ANSI via the Encoding menu.
Then since regular expressions have trouble with NUL characters, I’d use an Extended search mode and replace
\0
with nothing to get rid of any NULs.Then, switch the search mode to Regular expression and replace
[^\r\n\t\x20-\x7E]+
with nothing. At this point, if all goes well, you won’t have any non-text left in your file.You could then use the Split Lines command under Edit menu -> Line Operations -> Split Lines to (in theory, depending upon where space characters occur) break lines to more reasonable widths.
Maybe replacing the binary data with a single space helps with this? Dunno, because I dunno your exact data situation.
So, I guess I’ve laid out some ideas of what I’d try if I were doing it; not sure if that helps or hurts. Cheers, mate.
-
@Ekopalypse
I didn’t know about DBF Viewer Plus. I was given an assignment with a deadline and went to the tools I know how to use. I completed the assignment last night so this morning I was able to delve into the notepad++ issue and discovered the source of the problem. Thank you for telling me about DBF Viewer. Once I figure out how to use it it will be a big help. If all I have is a hammer everything looks like a nail. Now I have a crowbar so now I can do more with less effort.@Alan-Kilborn
The dbf is 6 lines long according to Notepad++. Line 6 is the one I am interested in which takes up 98% of the file. Now that I have DBF Viewer that should make things easier in the future. I will definitely keep this in mind for if I can’t use DBF Viewer.