MCEBuddy-versie en type (32bit of 64bit):
2.5.8 64bit – 20230215
Besturingssysteem en type (32bit of 64bit):
Windows 10 Pro 64b
Samenvatting van het probleem of suggestie:
Met deze versie blijf ik de genoemde corruptie krijgen. Ik reset (alles werkt), maar de fout keert na een onbekende periode terug.
Teruggaan naar mijn vorige build lost het probleem op.
De laatste 2 secties uit het geschiedenisbestand verwijderen (zie hieronder) lost het probleem ook op, totdat MCEBuddy op een gegeven moment weer naar het bestand schrijft.
Deel van de logs
ERROR--> Unable to open INI file -> C:\Program Files\MCEBuddy2x\config\history.
Error : SharpConfig.ParserException: Line 184: closing bracket missing.
at SharpConfig.ConfigurationReader.ParseSection(String line, Int32 lineNumber)
at SharpConfig.ConfigurationReader.Parse(StringReader reader, Configuration config)
at SharpConfig.ConfigurationReader.ReadFromString(String source)
at MCEBuddy.Util.Ini..ctor(String file)
ERROR> 2023-02-19T04:02:36 MCEBuddy.Engine.QueueManager --> Unable to process files in location G:\VideoCaptures\Channel_DVR\TV for monitor task Channels DVR Recorded TV
ERROR : Value cannot be null.
Parameter name: source
INFORMATION> 2023-02-19T04:02:36 MCEBuddy.Engine.QueueManager --> No accessible files founds in location G:\VideoCaptures\Channel_DVR\Movies for monitor task Channels DVR Recorded Movies
ERROR> 2023-02-19T04:03:21 MCEBuddy.Engine.QueueManager --> History file corruption detected: This can lead to unpredictable behavior, fix or clear history file
ERROR--> Unable to open INI file -> C:\Program Files\MCEBuddy2x\config\history.
Error : SharpConfig.ParserException: Line 184: closing bracket missing.
at SharpConfig.ConfigurationReader.ParseSection(String line, Int32 lineNumber)
at SharpConfig.ConfigurationReader.Parse(StringReader reader, Configuration config)
at SharpConfig.ConfigurationReader.ReadFromString(String source)
at MCEBuddy.Util.Ini..ctor(String file)
ERROR> 2023-02-19T04:03:21 MCEBuddy.Engine.QueueManager --> Unable to process files in location G:\VideoCaptures\TV_RAW for monitor task SageTV Recordings
ERROR : Value cannot be null.
Parameter name: source
ERROR--> Unable to open INI file -> C:\Program Files\MCEBuddy2x\config\history.
Error : SharpConfig.ParserException: Line 184: closing bracket missing.
at SharpConfig.ConfigurationReader.ParseSection(String line, Int32 lineNumber)
at SharpConfig.ConfigurationReader.Parse(StringReader reader, Configuration config)
at SharpConfig.ConfigurationReader.ReadFromString(String source)
at MCEBuddy.Util.Ini..ctor(String file)
ERROR> 2023-02-19T04:03:21 MCEBuddy.Engine.QueueManager --> Unable to process files in location G:\VideoCaptures\Channel_DVR\TV for monitor task Channels DVR Recorded TV
ERROR : Value cannot be null.
Parameter name: source
Ik had onlangs ook (op 13-02-2023) voor het eerst (voor zover ik me kan herinneren) een corrupt geschiedenisbestand. Helaas dacht ik er niet aan om het vast te leggen. Ik nam gewoon aan dat ik het zelf had veroorzaakt. Het is tot nu toe niet opnieuw voorgekomen. (En dat incident is inmiddels uit mcebuddy.log verwijderd.)
EDIT: Ik gebruik versie 2.5.7.1. In de vorige post zie ik dat er een nieuwere BETA-versie is. Dus mijn corrupte geschiedenisbestand was klaarblijkelijk niet veroorzaakt door een probleem dat in de nieuwste versie is geïntroduceerd.
Bedankt voor het melden. We hebben de INI-handler in de laatste BETA zojuist bijgewerkt om deze schaalbaarder te maken. Ik zal dit verder onderzoeken. Kun je me laten weten of dit gebeurt wanneer je een groot aantal bestanden laat monitoren of na een bepaalde periode / een specifiek aantal conversies?
Als je een versie gebruikt vóór 2.5.8 februari bèta, is het hiermee niet gerelateerd. Bestandscorruptie kan optreden door problemen met het bestandssysteem of hardware. Het is zeer zeldzaam, maar niet specifiek gerelateerd aan MCEBuddy; meestal wijst het op een onderliggend schijf- of bestandssysteemprobleem. Probeer een schijfreparatie uit te voeren met chkdsk
Ik zie echt geen patroon dat ik kan ontdekken, behalve wanneer MCEB naar het bestand schrijft.
Voorbeeld: nadat ik het problematische stuk onderaan het history-bestand had verwijderd, startten 3 conversies, leken er 2 te zijn voltooid, waarna de laatste corruptie veroorzaakte.
Ik heb een kopie van het nieuw beschadigde bestand bijgevoegd.
Hier een stukje uit het logboek… (naar mijn mening klopt de fout in het log niet, want regel 208 van het history-bestand lijkt een sluithaak te hebben).
INFORMATION> 2023-02-19T09:43:21 --> Job for G:\VideoCaptures\Channel_DVR\TV\On Patrol Live\On Patrol Live S01E58 2023-02-18-2100.mpg converted successfully to A:\ServerFolders\Recorded\TV_SHOWS\On Patrol Live\SEASON-01\On Patrol Live - S01E58 - #157.mkv using conversion task -> TV Show Recordings and profile -> MKV Unprocessed
ERROR> --> Unable to open INI file -> C:\Program Files\MCEBuddy2x\config\history.
Error : SharpConfig.ParserException: Line 208: closing bracket missing.
at SharpConfig.ConfigurationReader.ParseSection(String line, Int32 lineNumber)
at SharpConfig.ConfigurationReader.Parse(StringReader reader, Configuration config)
at SharpConfig.ConfigurationReader.ReadFromString(String source)
at MCEBuddy.Util.Ini..ctor(String file)
ERROR> 2023-02-19T09:43:27 MCEBuddy.Engine.QueueManager --> Unable to process files in location G:\VideoCaptures\TV_RAW for monitor task SageTV Recordings
ERROR : Value cannot be null.
Parameter name: source
ERROR> --> Unable to open INI file -> C:\Program Files\MCEBuddy2x\config\history.
Error : SharpConfig.ParserException: Line 208: closing bracket missing.
at SharpConfig.ConfigurationReader.ParseSection(String line, Int32 lineNumber)
at SharpConfig.ConfigurationReader.Parse(StringReader reader, Configuration config)
at SharpConfig.ConfigurationReader.ReadFromString(String source)
at MCEBuddy.Util.Ini..ctor(String file)
ERROR> 2023-02-19T09:43:27 MCEBuddy.Engine.QueueManager --> Unable to process files in location G:\VideoCaptures\Channel_DVR\TV for monitor task Channels DVR Recorded TV
ERROR : Value cannot be null.
Parameter name: source
INFORMATION> 2023-02-19T09:43:27 MCEBuddy.Engine.QueueManager --> No accessible files founds in location G:\VideoCaptures\Channel_DVR\Movies for monitor task Channels DVR Recorded Movies
INFORMATION> 2023-02-19T09:43:33 MCEBuddy.Engine.Core --> Job for G:\VideoCaptures\Channel_DVR\TV\On Patrol Live\On Patrol Live S01E57 2023-02-17-2100.mpg completed
ERROR> --> Unable to open INI file -> C:\Program Files\MCEBuddy2x\config\history.
Error : SharpConfig.ParserException: Line 208: closing bracket missing.
at SharpConfig.ConfigurationReader.ParseSection(String line, Int32 lineNumber)
at SharpConfig.ConfigurationReader.Parse(StringReader reader, Configuration config)
at SharpConfig.ConfigurationReader.ReadFromString(String source)
at MCEBuddy.Util.Ini..ctor(String file)
ERROR> 2023-02-19T09:43:33 MCEBuddy.Engine.Core --> MCEBuddy Monitor Thread Crashed. Error: System.ArgumentNullException: Value cannot be null.
Parameter name: source
at System.Linq.Enumerable.Any[TSource](IEnumerable`1 source, Func`2 predicate)
at MCEBuddy.Util.Ini.ReadString(String section, String key, String defVal)
at MCEBuddy.Engine.Core.WriteJobHistory(ConversionJob job)
at MCEBuddy.Engine.Core.MonitorEngineThread()
INFORMATION> 2023-02-19T12:30:49 MCEBuddy.Engine.Core --> MCEBuddy engine stopped
INFORMATION> 2023-02-19T12:30:49 MCEBuddy.Engine.Core --> Setting engine last running state to stop
Ik liep tegen dezelfde fout aan zodra ik upgrade naar de 20230215 bèta-build. Tot 0214 was er geen probleem. Ik maak ook steeds een volledige back-up van elke installatie voordat ik deïnstalleer/upgrade, en probeerde het geschiedenisbestand van de vorige installatie te herstellen; geen succes. Mijn logbestand bevat dezelfde fouten van SharpConfig over een ontbrekende sluithaak.
De volgende stap is terugrollen naar de vorige build en controleren of het probleem verdwijnt.
Bedankt voor het melden. Het probleem is gevonden en opgelost in de bètaversie 2.5.8 van vandaag. Probeer het uit en laat ons weten als je nog problemen ondervindt.
Ter referentie: het probleem zat in bestanden met een # in de naam, het was geen corruptie maar een verwerkingsprobleem.
Bedankt voor de supersnelle oplossing @Goose, het werkt nu. Geschiedenis is zichtbaar in de app en tot nu toe geen fouten in het logbestand.
Dat is een goeie vondst, over die “#” in de bestandsnamen. Nu ben ik nieuwsgierig welke bestanden dit zijn en waarom ze een # in hun naam hebben.
Terzijde: ik weet dat je ffmpeg, handbrake enz. grondig moet testen voor een update; maar is er een risico als individuele gebruikers de uitvoerbare bestanden in hun lokale installaties updaten? (Ik kan hiervoor een apart bericht maken als je dat liever hebt)
Ik heb HandBrake in het verleden zonder problemen bijgewerkt, maar als de HandBrake-syntax zou veranderen, zou dat problemen kunnen veroorzaken. Het lijkt onwaarschijnlijk dat je problemen zult hebben, maar ik denk ook dat je het niet zou moeten doen tenzij je een goede reden hebt.