2.4 alpha01 accumulates background jobs

58 views
Skip to first unread message

wwwald

unread,
Jun 1, 2018, 4:11:48 AM6/1/18
to wikidpad-devel
Hi!

I've been running Wikidpad 2.4 alpha01 for some time now on Windows 10 + Python 3.5 + wxPython 4.0.1.

Every now and then, Wikidpad will slow down & freeze, requiring me to kill the process and restart. Running right now, I notice that the background job count is quite high (48 currently, increasing) and doesn't decrease as expected.
The error log does show a number of errors (I've listed some below), but nothing that systematically pops out as causing this

How can I dig deeper into what background processing is happening? 

wwwald


  • WindowsHacks.py > _shellFileOp, line 315: ValueError: embedded null character
  • HtmlExporter.py > exportHtmlMultiFile, line 894: TypeError: a bytes-like object is required, not 'str'
    This probably has to do with the Py3 transition.
  • WikiTreeCtrl.py > OnRightButtonUp, line 2535: AttributeError: 'WikiTreeCtrl' object has no attribute 'PopupMenuXY'
  • WikiTxtDialogs.py > saveFile, line 352: AttributeError: 'Image' object has no attribute 'SetOptionInt'
  • Utilities.py > end, line 398: pwiki.WikiExceptions.DeadBlockPreventionTimeOutError
  • DocPages.py > getDirty, line 245: NotImplementedError
     --> another error occurred:  Importers.py > doImport, line 308: pwiki.WikiExceptions.ImportException

Michael Butscher

unread,
Jul 17, 2018, 8:36:35 PM7/17/18
to wikidpa...@googlegroups.com
On 01.06.2018 10:11, wwwald wrote:
> Hi!
>
> I've been running Wikidpad 2.4 alpha01 for some time now on Windows 10 +
> Python 3.5 + wxPython 4.0.1.
>
> Every now and then, Wikidpad will slow down & freeze, requiring me to kill
> the process and restart. Running right now, I notice that the background
> job count is quite high (48 currently, increasing) and doesn't decrease as
> expected.

The background jobs do not instantly decrease as many of them produce a new
background job which replaces the previous one because the processing of a wiki
page happens in phases (attributes; other wiki language features; search index
if enabled). All background jobs are processed by a single thread which is
probably not the point of failure.



> The error log does show a number of errors (I've listed some below), but
> nothing that systematically pops out as causing this
>
> How can I dig deeper into what background processing is happening?
>
> wwwald
>
>
>
> - WindowsHacks.py > _shellFileOp, line 315: ValueError: embedded null
> character
> - HtmlExporter.py > exportHtmlMultiFile, line 894: TypeError: a
> bytes-like object is required, not 'str'
> This probably has to do with the Py3 transition.
> - WikiTreeCtrl.py > OnRightButtonUp, line 2535: AttributeError:
> 'WikiTreeCtrl' object has no attribute 'PopupMenuXY'
> - WikiTxtDialogs.py > saveFile, line 352: AttributeError: 'Image' object
> has no attribute 'SetOptionInt'
> - Utilities.py > end, line 398:
> pwiki.WikiExceptions.DeadBlockPreventionTimeOutError

This is to me the most "suspicious" error. If this error happens, some thread
was blocked very long (by default for more than 30 minutes).

To investigate this further you could edit "Consts.py", about at line 35 there is:

DEADBLOCKTIMEOUT = 1800

and reduce the number of seconds until a DeadBlockPreventionTimeOutError is
thrown to a lower value like e.g. 60 seconds, maybe 30, but not lower. This
should be a good limit to distinguish if the blocking is normal or too long.

After that change there will probably be more DeadBlockPreventionTimeOutError
exceptions. With full tracebacks of these the failure can (hopefully) by found.


Michael

Reply all
Reply to author
Forward
0 new messages