View Issue Details

IDProjectCategoryView StatusLast Update
0014397MMW 5Otherpublic2021-05-15 21:26
Reporterrusty Assigned To 
PriorityurgentSeveritymajorReproducibilityalways
Status closedResolutionunable to reproduce 
Product Version5.0 
Target Version5.0.1Fixed in Version5.0.1 
Summary0014397: MediaMonkey 'restart' option often fails
DescriptionWhen MediaMonkey experiences an error, it gives the user the option to Continue or Restart. If the user chooses the option to restart, MM5 will often restart but not before closing all associated processes (e.g. when it restarts, depending on what the error was, it may have an extra instance of MediaMonkey64Helper.exe or MediaMonkeyEngine.exe running).

For users who don't have Process Explorer running, this will result in perpetual instability.

Ideally 'Restart' should first terminate all associated processes before restarting to prevent this from occurring.

Additional Informationhttps://www.mediamonkey.com/forum/viewtopic.php?f=30&t=97431
TagsNo tags attached.
Fixed in build2404

Activities

petr

2017-09-23 17:20

developer   ~0048824

Fixed

peke

2017-10-07 01:01

developer   ~0048898

Verified 2080

lowlander

2020-09-26 22:48

developer   ~0059704

I have observed this 2260+ Will add details next time it occurs.

peke

2020-09-27 10:16

developer   ~0059707

In recent issues I have observed with users in Remote session is that MM5 Full UI do not loads at all, but restart just creates two additional MM5 processes. To resolve this and restart MM5 It needs to be killed in Task Manager -> Details by using end process tree.

petr

2020-10-06 16:51

developer   ~0059769

I need a debug log to see what's happened ... tried on my end and MM restarts without issue

drakinite

2020-11-21 18:28

developer   ~0060304

I think that the error popup should have an option to simply force-close everything. As it is now, there's no way to close the Application Error dialog without task manager, which is especially bad because the Application Error dialog is set to Always On Top (...and often doesn't respond to button presses.)

Here's an easy way to intentionally cause controlled crashes:

app.listen(window, 'DOMContentLoaded', () => {
    var crash = document.createElement('button');
    crash.innerText = 'Crash';
    crash.style.zIndex = 999999999999999;
    crash.style.position = 'absolute';
    crash.style.top = '0';
    crash.style.left = '0';

    document.body.appendChild(crash);
    crash.onclick = function(){
        throw new Error();
    }
});

When clicking that Crash button, you would expect that clicking Close then Restart would restart MM perfectly fine, but the error dialogs keep repeating until you force-close them via task manager / process manager.

Unfortunately the debug log doesn't catch much.
IntentionalCrash.LOG (4,438 bytes)   
00000001	0.00000000	[2376] MM5 [22852](R) DB: Deleting prepared query: SELECT Lyrics, Comment FROM Songs WHERE Songs.ID=?	
00000002	6.73493338	[2376] MM5 [20664](R) buildPathFromUrl from file:///actions.js to actions.js	
00000003	6.73581362	[2376] MM5 [20664](R) buildPathFromUrl from file:///actions_add.js to actions_add.js	
00000004	6.73617458	[2376] MM5 [20664](R) TFilesHandlerFile.getFileContent - opening file "c:\program files (x86)\mediamonkey 5\scripts\export\layouts\Desktop\actions_add.js", took: 0	
00000005	6.73652649	[2376] MM5 [20664](R) TFilesHandlerFile.getFileContent - opening file "c:\program files (x86)\mediamonkey 5\scripts\exportpodcasts\layouts\Desktop\actions_add.js", took: 0	
00000006	6.73688412	[2376] MM5 [20664](R) TFilesHandlerFile.getFileContent - opening file "c:\program files (x86)\mediamonkey 5\scripts\exportplaylists\layouts\Desktop\actions_add.js", took: 0	
00000007	6.73733044	[2376] MM5 [20664](R) TFilesHandlerFile.getFileContent - opening file "c:\program files (x86)\mediamonkey 5\scripts\statistics\layouts\Desktop\actions_add.js", took: 0	
00000008	6.73756981	[2376] MM5 [20664](R) TFilesHandlerFile.getFileContent - opening file "c:\program files (x86)\mediamonkey 5\scripts\swapartisttitle\layouts\Desktop\actions_add.js", took: 0	
00000009	6.73792887	[2376] MM5 [20664](R) TFilesHandlerFile.getFileContent - opening file "c:\program files (x86)\mediamonkey 5\scripts\reloadshortcut\layouts\Desktop\actions_add.js", took: 0	
00000010	6.73819351	[2376] MM5 [20664](R) TFilesHandlerFile.getFileContent - opening file "c:\program files (x86)\mediamonkey 5\scripts\redonavbarbutton\layouts\Desktop\actions_add.js", took: 0	
00000011	6.73854065	[2376] MM5 [20664](R) TFilesHandlerFile.getFileContent - opening file "c:\program files (x86)\mediamonkey 5\scripts\autoinctrack\layouts\Desktop\actions_add.js", took: 0	
00000012	6.73883200	[2376] MM5 [20664](R) TFilesHandlerFile.getFileContent - opening file "c:\program files (x86)\mediamonkey 5\scripts\casechecker\layouts\Desktop\actions_add.js", took: 0	
00000013	6.74208975	[2376] MM5 [20664](R) Callstack: Script: file:///mminit.js ; Func: window.myAlert ; Row: 281 ; Col: 17 	
00000014	6.74208975	[2376] Script: file:///mminit.js ; Func: window.alertException ; Row: 291 ; Col: 9 	
00000015	6.74208975	[2376] Script: file:///mminit.js ; Func: window.onerror ; Row: 261 ; Col: 13 	
00000016	6.74604464	[2376] MM5 [20664](R) Exception!! - "	
00000017	13.49839973	[2376] MM5 [20664](R) Exception!! - Uncaught Erro	
00000018	74.01430511	[460] MM5 [11528](B) WM_CLOSE begin	
00000019	74.01436615	[460] MM5 [11528](B) ****** CLOSE for identifier 13	
00000020	74.01451874	[460] MM5 [11528](B) ****** CLOSE query called for identifier 13	
00000021	74.09125519	[5344] MM5 [17228](B) Running on Windows 10 Anniversary	
00000022	74.09281158	[5344] MM5 [17228](B) INI path: C:\Users\draki\AppData\Roaming\MediaMonkey5\MediaMonkey.ini	
00000023	74.09477234	[5344] FastMM4 cannot install since memory has already been allocated through the default memory manager. 	
00000024	74.09477234	[5344] FastMM4.pas MUST be the first unit in your project's .dpr file, otherwise memory may be allocated 	
00000025	74.09477234	[5344] through the default memory manager before FastMM4 gains control.  	
00000026	74.09477234	[5344]  	
00000027	74.09477234	[5344] If you are using an exception trapper like MadExcept (or any tool that modifies the unit initialization order), 	
00000028	74.09477234	[5344] go into its configuration page and ensure that the FastMM4.pas unit is initialized before any other unit.	
00000029	74.39876556	[5344] MM5 [17228](B) Version: 5.0.0.2274	
00000030	74.42416382	[5344] MM5 [17228](R) Received command line: '"C:\Program Files (x86)\MediaMonkey 5\MediaMonkeyEngine.exe" --type=utility --field-trial-handle=2672,5456715424000669334,3973019543777616054,131072 --disable-features=IsolateOrigins,site-per-process --lang=en-US --service-sandbox-type=network --no-sandbox --locales-dir-path="chromium\79\locales\\" --log-file="C:\Program Files (x86)\MediaMonkey 5\debug.log" --log-severity=disable --lang=en-US --log-file="C:\Program Files (x86)\MediaMonkey 5\debug.log" --service-request-channel-token=9019631243696079088 --mojo-platform-channel-handle=2788 /prefetch:8'	
00000031	74.42430115	[5344] MM5 [17228](R) CefLibrary is going to load	
00000032	74.43254089	[5344] MM5 [17228](R) CefLibrary loaded	
IntentionalCrash.LOG (4,438 bytes)   

peke

2020-12-10 13:33

developer   ~0060680

Assigned back, Using @drakinite example it causes controlled crash that should catch additional extra instance of MediaMonkey64Helper.exe or MediaMonkeyEngine.exe running and not completely terminated/killed during Restart.

petr

2020-12-10 15:05

developer   ~0060685

Fixed

peke

2020-12-12 19:07

developer   ~0060738

Seams much better in 2283

But I had restart loop in 2282 due the SVN bug (fixed in 2283) that on restart left one MMengine.exe still started. Left it as resolved for now.

drakinite

2021-01-13 21:03

developer   ~0061317

Reopened: If the crash is caused from within a popup menu, the restart option still fails and MM has to be force-closed from task manager.

To consistently reproduce such a crash, add this to trackListView.js or trackListView_add.js:

window.menus.tracklistMenuItems.push({
    action: {
        title: 'Cause Crash on Hover',
        submenu: function() {
            
        }
    },
});

I submitted a log with ID AC124DF9, if that helps.

petr

2021-01-13 22:50

developer   ~0061321

Fixed

lowlander

2021-01-15 00:27

developer   ~0061349

Restart did nothing after a crash for me on 2295

petr

2021-01-15 12:11

developer   ~0061375

Fixed

peke

2021-02-10 23:56

developer   ~0061859

Verified 2308

drakinite

2021-04-28 19:08

developer   ~0062951

Last edited: 2021-04-28 22:43

Reopening: On 5.0.1.2400 (I believe also with a few previous builds), the "Continue/Restart" dialog does not appear after crash logs are sent.

petr

2021-05-14 08:26

developer   ~0063202

For me Continue/Restart dialog apppeared after logs are sent in 2404

peke

2021-05-15 21:26

developer   ~0063231

Verified 2405

Only case when restart/continue is not shown if MM5 completely locks during sending and logs are not sent.

Test note: Easy to simulate by disconnecting internet and manually initiate crash log sending on debug build.