Crash report for BA 5.4.0.50 for Linux

Issues and Comments on the Current Beta Versions
Post Reply
epement
Posts: 73
Joined: Fri Sep 09, 2011 9:00 pm
Location: Florida
Contact:

Crash report for BA 5.4.0.50 for Linux

Post by epement »

Today I experienced a catastrophic and unrecoverable crash of Bible Analyzer for Linux v5.4.0.50. I am running Linux Mint version 20.2, with the MATE desktop. Each time I attempt to run Bible Analyzer, it aborts with this message:

Code: Select all

/opt/bibleanalyzer $ python3 -u /opt/bibleanalyzer/ba-run.py 
3.8.10 (default, Jun  2 2021, 10:49:15) 
[GCC 9.4.0]
/opt/bibleanalyzer App dir
/home/eric/Documents/BibleAnalyzer myDocs folder
/home/eric/Documents/BibleAnalyzer all users
/home/eric/Documents/BibleAnalyzer docs modules folder
/home/eric/.config/bibleanalyzer user
0.5754525661468506 imports
Valid local config
TTS is loaded
10:18:25 PM: Debug: ClientToScreen cannot work when toplevel window is not shown
10:18:25 PM: Debug: ClientToScreen cannot work when toplevel window is not shown
10:18:25 PM: Debug: ClientToScreen cannot work when toplevel window is not shown
excepthook

*** Thu Sep  9 22:18:25 2021 ***
Traceback (most recent call last):
  File "/opt/bibleanalyzer/ba-540.zip/analyzer5.py", line 8651, in OnInit
    self.ShowMain()
  File "/opt/bibleanalyzer/ba-540.zip/analyzer5.py", line 8655, in ShowMain
    self.BA = BibleAnalyzer(None, "Bible Analyzer 5.4")
  File "/opt/bibleanalyzer/ba-540.zip/analyzer5.py", line 750, in __init__
    self.OnCmtNBChanged(None)
  File "/opt/bibleanalyzer/ba-540.zip/analyzer5.py", line 1984, in OnCmtNBChanged
    self.OnCmtViewEntry()
  File "/opt/bibleanalyzer/ba-540.zip/analyzer5.py", line 3821, in OnCmtViewEntry
    answer, imgNames = formDctPages.showLibTopic(ref, self.cmtFileList[tab], self.font, self.cmtColor, title, 1)
  File "/opt/bibleanalyzer/ba-540.zip/formDctPages.py", line 703, in showLibTopic
    verses = findRefs(refs, mainApp.bibFileList[bibIdx], 4)
  File "/opt/bibleanalyzer/ba-540.zip/formDctPages.py", line 87, in findRefs
    noTag = re.sub(r'<a href.+?</a>|<fnc?>\d+</fnc?>', r'', row[2])
  File "/usr/lib/python3.8/re.py", line 210, in sub
    return _compile(pattern, flags).sub(repl, string, count)
TypeError: cannot use a string pattern on a bytes-like object
Below are the steps I took to create this issue, and the steps I took (unsuccessfully) to resolve it.

1. Bible Analyzer (BA) was running normally in Linux and I was perfectly happy with it. Then I attempted to download and install three new Bible modules, using the Download Manager. I made this screen shot before the crash:
Downloading and installing 3 new Bible modules
Downloading and installing 3 new Bible modules
KJV-1611-module.png (68.87 KiB) Viewed 39728 times
2. Immediately after downloading, BA offered to close and reload to show the new modules (er, I *think*). I did not manually close Bible Analyzer. Immediately after that happened, the error message above appeared, except that it was placed in a graphic textbox widget, not in a terminal window.

3. BA detected the crash and offered to send an error message. See screenshot below
Cannot-report-error-in-Linux.png
Cannot-report-error-in-Linux.png (47.38 KiB) Viewed 39728 times
I entered my email address, but the Report Error button does nothing when clicked. Nothing is transmitted. The bottom line of the error message window refers to the "Windows Start Menu", but I am on Linux, so perhaps the error-reporting module is not addressing Linux message delivery correctly. Neither the Abort button nor the Close button will take me back to the BA applications. It is unrecoverable.

4. I have the Timeshift system restore utility running on Linux Mint, so I chose a time 20 hours prior to the error, hoping that would undo the damage. Timeshift ran correctly, including uninstalling some other changes I had done previously this evening, but it did not correct the problem.

5. In trying to correct the problem, I decided to look for and remove all modified files. I executed BA from the bash shell prompt (as can be seen from the screen dump at the top), and found 3 possible candidates:
  1. The ~/Documents/BibleAnalyzer/ directory tree
  2. The /opt/bibleanalyzer tree
  3. The ~/.config/bibleanalyzer tree
5.1. I deleted each of the downloaded Bibles individually from ~/Documents/BibleAnalyzer/Bibles/, but that did not help. BA still aborts with an error message.

I tried this, but only one file was located:

Code: Select all

[b]eric: ~[/b] $ # find all regular files below "BibleAnalyzer" modified less than 24 hours ago
[b]eric: ~[/b] $ find ~/Documents/BibleAnalyzer -type f -mtime -1 -ls
 24248965      8 -rw-rw-r--   1 eric     eric         8192 Sep  9 22:18 /home/eric/Documents/BibleAnalyzer/default.nts
I deleted the "default.nts" file, and it was automatically recreated. That did not fix the problem.

5.2 I ran "find" on the /opt/bibleanalyzer tree and found no files modified in the past 24 hours. Indeed, I found these results with the ls command:

Code: Select all

$ /bin/ls -lat /opt/bibleanalyzer/
total 17416
drwxr-xr-x 6 root root     4096 Aug 25 21:03 ..
drwxr-xr-x 3 root root     4096 Aug 12 22:25 .
drwxr-xr-x 2 root root    12288 Aug 12 22:25 manual
-rw-r--r-- 1 root root  5286826 May  8  2020 ba-540.zip
-rw-r--r-- 1 root root      144 May  8  2020 ba-run.py
-rw-r--r-- 1 root root   230400 May  8  2020 contexts.dat
-rw-r--r-- 1 root root    28672 May  8  2020 filters.dat
-rw-r--r-- 1 root root   415312 May  8  2020 fonts.zip
-rw-r--r-- 1 root root 11111529 May  8  2020 mod-data.zip
-rw-r--r-- 1 root root   726016 May  8  2020 strongWds.dat
I installed BA v5.4.0.50 about 3 weeks ago, so evidently the timestamps here are from the archive. It does not appear that any of these files have been modified. So why am I still getting this error??

5.3. The last place to look is my user config files. Sorting the output by time, I can see this:

Code: Select all

$ /bin/ls -lat ~/.config/bibleanalyzer/*
-rw-rw-r-- 1 eric eric  4198 Sep  9 21:48 /home/eric/.config/bibleanalyzer/config.ini
-rw-rw-r-- 1 eric eric   459 Sep  9 21:48 /home/eric/.config/bibleanalyzer/bibLayout.dat
-rw-rw-r-- 1 eric eric 15327 Sep  9 21:48 /home/eric/.config/bibleanalyzer/mainLayout.dat
-rw-rw-r-- 1 eric eric  1683 Aug 12 22:28 /home/eric/.config/bibleanalyzer/purchaseData.dat
-rw-r--r-- 1 eric eric  8192 Aug 12 22:25 /home/eric/.config/bibleanalyzer/default.nts
-rw-rw-r-- 1 eric eric    28 Aug 12 22:25 /home/eric/.config/bibleanalyzer/linkMonitor.dat
-rw-r--r-- 1 eric eric  8192 Aug 12 22:25 /home/eric/.config/bibleanalyzer/markup.dat
The top three files have been modified, but no others.

So, I decide to rename them one-by-one, and see what happens. (I am doing this live as I type . . . )

a) Rename bibLayout.dat, the smallest, to ".dat_disabled" : SUCCESS !

I have Bible Analyzer working again. Thanks for being my "rubber duck" programming buddy. (smile)

Now that everything is back to normal, I'll close off BA and see if it restarts okay. . . . Good night, everyone!
Eric Pement
2 Cor. 4:5

epement
Posts: 73
Joined: Fri Sep 09, 2011 9:00 pm
Location: Florida
Contact:

Re: Crash report for BA 5.4.0.50 for Linux

Post by epement »

I guess I spoke too hastily. The problem has re-appeared.

1. I downloaded one more Bible, the SBL Gk NT, and BA continued to work.

2. I closed BA and restarted it.

3. I downloaded another Bible, the Lexham English translation, and immediately BA crashed with the same error.

4. When I tried renaming "bibLayout.dat" a second time, this time a new file was not re-created.

This could be a more serious problem.
Eric Pement
2 Cor. 4:5

epement
Posts: 73
Joined: Fri Sep 09, 2011 9:00 pm
Location: Florida
Contact:

Re: Crash report for BA 5.4.0.50 for Linux

Post by epement »

One last discovery before I close.

I notice that the "mainLayout.dat" file contains a reference to a Bible which I do not own and have never purchased (as far as I know):

Code: Select all

caption=Bible - New American Standard Bible, w/Strong's 1995
state=134219520
Could this be part of the problem? Maybe the Module Download Manager transmitted the wrong purchase ID number?

Eric
Eric Pement
2 Cor. 4:5

Tim
Site Admin
Posts: 1454
Joined: Sun Dec 07, 2008 1:14 pm

Re: Crash report for BA 5.4.0.50 for Linux

Post by Tim »

The crash is caused by an error in the code when it tries to parse the lines for certain modules. I'm not sure which ones yet.

When an error like this occurs one option to try is to delete the
~/.config/bibleanalyzer
folder. This will delete the configuration files. On next start of Bible Analyzer a new one will be generated.

If that doesn't work try deleting the
~/Documents/BibleAnalyzer
as well. It will also be regenerated.

When I get time I will try to fix this error with a new beta.
Tim Morton
Developer, Bible Analyzer

But to him that worketh not, but believeth on him that justifieth the ungodly, his faith is counted for righteousness. (Rom 4:5 AV)

kathleenmarie
Posts: 63
Joined: Tue Oct 20, 2020 9:43 pm

Re: Crash report for BA 5.4.0.50 for Linux

Post by kathleenmarie »

If you have time, can you check the dramatized audio bible? I failed to get it to work on multiple machines and distros. The non-dramatized Bible works on Linux and both Bibles work in Windows. I don't think this is user error on my part.

Tim
Site Admin
Posts: 1454
Joined: Sun Dec 07, 2008 1:14 pm

Re: Crash report for BA 5.4.0.50 for Linux

Post by Tim »

Does the dramatized audio bible play but just not in sync with the verses, or does it not play at all?
Tim Morton
Developer, Bible Analyzer

But to him that worketh not, but believeth on him that justifieth the ungodly, his faith is counted for righteousness. (Rom 4:5 AV)

kathleenmarie
Posts: 63
Joined: Tue Oct 20, 2020 9:43 pm

Re: Crash report for BA 5.4.0.50 for Linux

Post by kathleenmarie »

Lucky for us I just installed a fresh Mint Cinnamon 20.2. The Old testament plays fine for both the Daniel Wagner and Faith Comes by Hearing Drama . The New Testament again plays fine for the Daniel Wagner, but does not play at all for the Faith Comes by Hearing Drama.

I am unable to use the sent error message feature, but here is the copy and paste.

I also got some type of bad reaction to installing the Geneva Bible. I think maybe someone else reported that? If I delete all the Geneva files, everything seems fine after that, but I cannot open the software at all, unless I remove them first.

Version: Bible Analyzer 5.4.0.50
Application Path: /home/me
Modules Path: /home/me/Documents/BibleAnalyzer
User Path: /home/me/.config/bibleanalyzer
Current Ref: 1Pe 1:1
Current Bible: AV
Current Dict: Torrey
Current Comm: Scofield
Current Word: And

Operating System: Linux 5.4.0-86-generic x86_64
System Architecture: 64bit x86_64
Frozen: False

#---- End System Information ----#


#---- Traceback Info ----#

*** Tue Sep 21 17:36:09 2021 ***
Traceback (most recent call last):
File "/opt/bibleanalyzer/ba-540.zip/analyzer5.py", line 6760, in OnTTSSpeak
self.ReadVerses()
File "/opt/bibleanalyzer/ba-540.zip/analyzer5.py", line 6809, in ReadVerses
self.OnBibSpeechLoad()
File "/opt/bibleanalyzer/ba-540.zip/analyzer5.py", line 7229, in OnBibSpeechLoad
chapPath = chapPath.replace('\\', '/')
AttributeError: 'NoneType' object has no attribute 'replace'


*** Tue Sep 21 17:38:55 2021 ***
Traceback (most recent call last):
File "/opt/bibleanalyzer/ba-540.zip/analyzer5.py", line 6760, in OnTTSSpeak
self.ReadVerses()
File "/opt/bibleanalyzer/ba-540.zip/analyzer5.py", line 6809, in ReadVerses
self.OnBibSpeechLoad()
File "/opt/bibleanalyzer/ba-540.zip/analyzer5.py", line 7229, in OnBibSpeechLoad
chapPath = chapPath.replace('\\', '/')
AttributeError: 'NoneType' object has no attribute 'replace'


*** Tue Sep 21 17:41:51 2021 ***
Traceback (most recent call last):
File "/opt/bibleanalyzer/ba-540.zip/analyzer5.py", line 6760, in OnTTSSpeak
self.ReadVerses()
File "/opt/bibleanalyzer/ba-540.zip/analyzer5.py", line 6809, in ReadVerses
self.OnBibSpeechLoad()
File "/opt/bibleanalyzer/ba-540.zip/analyzer5.py", line 7229, in OnBibSpeechLoad
chapPath = chapPath.replace('\\', '/')
AttributeError: 'NoneType' object has no attribute 'replace'

#---- End Traceback Info ----#

kathleenmarie
Posts: 63
Joined: Tue Oct 20, 2020 9:43 pm

Re: Crash report for BA 5.4.0.50 for Linux

Post by kathleenmarie »

I cannot install the 1611 Bible either. The software will not open until I remove the Bible.

System Architecture: 64bit x86_64
Frozen: False

#---- End System Information ----#


#---- Traceback Info ----#

*** Tue Sep 21 17:48:29 2021 ***
Traceback (most recent call last):
File "/opt/bibleanalyzer/ba-540.zip/analyzer5.py", line 8651, in OnInit
self.ShowMain()
File "/opt/bibleanalyzer/ba-540.zip/analyzer5.py", line 8655, in ShowMain
self.BA = BibleAnalyzer(None, "Bible Analyzer 5.4")
File "/opt/bibleanalyzer/ba-540.zip/analyzer5.py", line 756, in __init__
self.OnBibNBChanged(None)
File "/opt/bibleanalyzer/ba-540.zip/analyzer5.py", line 1766, in OnBibNBChanged
self.Tree.addApoc()
File "/opt/bibleanalyzer/ba-540.zip/baseClass.py", line 537, in addApoc
child = self.InsertItemBefore(self.root, 39, book)
AttributeError: 'CustomTreeCtrl' object has no attribute 'InsertItemBefore'

#---- End Traceback Info ----#

Tim
Site Admin
Posts: 1454
Joined: Sun Dec 07, 2008 1:14 pm

Re: Crash report for BA 5.4.0.50 for Linux

Post by Tim »

These are issues in the code that need resolved. I'll get to them as soon as I can.

Thanks for the notice.
Tim Morton
Developer, Bible Analyzer

But to him that worketh not, but believeth on him that justifieth the ungodly, his faith is counted for righteousness. (Rom 4:5 AV)

kathleenmarie
Posts: 63
Joined: Tue Oct 20, 2020 9:43 pm

Re: Crash report for BA 5.4.0.50 for Linux

Post by kathleenmarie »

Thank you for working on the Linux app!

Post Reply