Bug #73540 High Severity Error: Root element is missing
Submitted: 11 Aug 2014 22:21 Modified: 16 Jan 2018 17:13
Reporter: David Flemings Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL for Windows: MySQL Notifier Severity:S3 (Non-critical)
Version:1.1.16 OS:Windows (8.1)
Assigned to: CPU Architecture:Any

[11 Aug 2014 22:21] David Flemings
Description:
"High Severity Error: Root element is missing" [OK]
"High Severity Error: Log file path must be defined before calling the WriteToLog method."

Noted previous bug report suggesting I drop the oracle directory under C:\Users\Me\Appdata\Local

I HAVE NO ORACLE DIRECTORY here.

I uninstalled previous version of MySQL Notifier. Reboot. Download new file (version 1.1.15). Install. Immediately get this error again:

"High Severity Error: Root element is missing" [OK]
"High Severity Error: Log file path must be defined before calling the WriteToLog method."

Dump information:

at System.Xml.XmlTextReaderImpl.Throw(Exception e)
   at System.Xml.XmlTextReaderImpl.ParseDocumentContent()
   at System.Xml.XmlTextReaderImpl.Read()
   at System.Xml.XmlLoader.Load(XmlDocument doc, XmlReader reader, Boolean preserveWhitespace)
   at System.Xml.XmlDocument.Load(XmlReader reader)
   at System.Xml.XmlDocument.Load(String filename)
   at MySQL.Utility.Classes.MySQLWorkbench.MySqlWorkbenchConnectionCollection.LoadXmlFile(Boolean saving)
   at MySQL.Utility.Classes.MySQLWorkbench.MySqlWorkbenchConnectionCollection.Load()
   at MySQL.Utility.Classes.MySQLWorkbench.MySqlWorkbench.LoadExternalConnections()
   at MySQL.Utility.Classes.MySQLWorkbench.MySqlWorkbench.set_ExternalApplicationConnectionsFilePath(String value)
   at MySql.Notifier.Notifier.InitializeMySqlWorkbenchStaticSettings()
   at MySql.Notifier.Notifier..ctor()
   at MySql.Notifier.NotifierApplicationContext..ctor()
   at MySql.Notifier.Program.Main(String[] args)

Notifier version (1.1.5), windows version (8.1), if your user has administrator privileges (YES), if you had a previous Notifier version installed (YES, I think) or if this was a new installation of the Notifier (1.1.5 because I uninstalled trying to fix this issue.)

I made no system changes. This just started popping up the past two days.

Cory

How to repeat:
Uninstall and re-install.
[11 Aug 2014 22:21] David Flemings
Thansk for the help!
[11 Aug 2014 23:27] MySQL Verification Team
I couldn't repeat on Windows 8.1 however on Windows 7 I have a crash with different error than reported here.
[10 Dec 2014 17:25] Javier Treviño
David,
Thanks for your bug report. I am almost sure this bug does not happen anymore on Notifier 1.1.6.  I believe you reported this for Notifier 1.1.5 (although the version you placed reads 1.1.15).
Please try this on 1.1.6 since the problem should be already fixed there.

Thanks.
[11 Jan 2015 1:00] Bugs System
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
[19 Sep 2015 18:31] Thomas McDonald
Ok I also have this every time I reboot.  I can not install full MySql or fix this.  So help.

 at System.Xml.XmlTextReaderImpl.Throw(Exception e)
   at System.Xml.XmlTextReaderImpl.ParseDocumentContent()
   at System.Xml.XmlTextReaderImpl.Read()
   at System.Xml.XmlLoader.Load(XmlDocument doc, XmlReader reader, Boolean preserveWhitespace)
   at System.Xml.XmlDocument.Load(XmlReader reader)
   at System.Xml.XmlDocument.Load(String filename)
   at MySQL.Utility.Classes.MySQLWorkbench.MySqlWorkbenchConnectionCollection.LoadXmlFile(Boolean saving)
   at MySQL.Utility.Classes.MySQLWorkbench.MySqlWorkbenchConnectionCollection.Load()
   at MySQL.Utility.Classes.MySQLWorkbench.MySqlWorkbench.LoadExternalConnections()
   at MySQL.Utility.Classes.MySQLWorkbench.MySqlWorkbench.set_ExternalApplicationConnectionsFilePath(String value)
   at MySql.Notifier.Notifier.InitializeMySqlWorkbenchStaticSettings()
   at MySql.Notifier.Notifier..ctor()
   at MySql.Notifier.NotifierApplicationContext..ctor()
   at MySql.Notifier.Program.Main(String[] args)
[5 Nov 2015 20:37] MySQL Verification Team
Notifier Dialog Error

Attachment: root_element_is_missing_v1_1_6.png (image/png, text), 68.58 KiB.

[5 Nov 2015 20:38] MySQL Verification Team
The application was working normally for sometime suddenly at every boot the error message is launched.
[27 Dec 2015 0:44] A T
I'm seeing this issue on Windows 8.1 as of Dec 26 2015. I just reinstalled the latest MYSQL Server and I still get this error. I don't know how to fix this. It pops up everytime I open my computer and when I try to open MYSQL Notifier. Please let me know how to fix it.
Thanks.
[31 Dec 2015 10:04] Troy Noble
I removed the oracle directory under C:\Users\Me\Appdata\Roaming as I couldn't find it under local either.  Restarted MySQL notifier and the files were recreated.  Worked like a charm for me.
[23 Feb 2016 17:39] Brenda Krafft
I had the exact problem David describes.

So I took the latest advice, found the %appdata%/Roaming folder and renamed the "Oracle" folder to "OracleBadBadBad".

Now my errors are gone!  Yeah!
But now my %appdata%/Roaming folder seems to be gone too.  Hm.....
[15 Apr 2016 6:04] Bipin aryan
I have had MySQL installed for about 2 months on Windows Server 2003 R2. On start up we get presented with an error that says "High Severity Error - root element missing" followed by another high severity error that displays "Log file path must be defined before calling the WriteToLog method".

Any help with this would be appreciated!

 ran across this problem on my local install of MySQL Notifier since 10 days , and neither deleting settings.config, nor reinstalling had any effect. after Further query/investigation somebody suggested me  to a file in the same folder with the name connections.xml that only contained a single space character. Deleting that file and restarting the notifier did the trick, though, so if (like me) deleting settings.config doesn't correct the problem, look for connections.xml, and inspect that file for possible problems, deleting when necessary. but it was not resolved my problem.
[22 Jun 2016 0:55] Javier Treviño
Posted by developer:
 
Added functionality to let users retry the loading of a connections information XML file, and re-create the file from scratch if loading fails.
This is in case the connections.xml file gets corrupted for any reason.
The only way to get the "Root element is missing" error is if the XML file got corrupted.
Didn't find anything in the Notifier's code that could be corrupting the connections.xml file, just by following the attached steps I could not reproduce the error, best guess is that it was being corrupted in an earlier version of the Notifier.

If this bug is reopened once again, more information will be needed to know what exactly is corrupting the connections.xml file, like what mysql services are installed locally, is MySQL Workbench installed or previously installed, etc.
[10 Aug 2016 13:46] MySQL Verification Team
http://bugs.mysql.com/bug.php?id=82521 marked as duplicate of this one.
[23 Nov 2016 12:10] MySQL Verification Team
http://bugs.mysql.com/bug.php?id=83932 marked as duplicate of this one.
[11 Jan 2017 21:50] Eric Killough
So following Troy Noble and Brenda Krafft example, instead of renaming Oracle file, or removing Roaming folder in appdata, I instead just renamed the MySQL Notifier folder, restarted MySQL Notifier, it then created a new folder and is now working fine, even when I start up my computer.
[28 Mar 2017 19:38] Claudio Riboni
I am having the same problem on Windows 10
MySQL Server 5.7.17.0
Notifier 1.1.7

After Upgrading from 5.7.10 to 5.7.17 and still after new installation

"root element is missing"
--------------------------------------------------------------------
in System.Xml.XmlTextReaderImpl.Throw(Exception e)
   in System.Xml.XmlTextReaderImpl.ParseDocumentContent()
   in System.Xml.XmlTextReaderImpl.Read()
   in System.Xml.XmlTextReader.Read()
   in System.Xml.XmlReader.MoveToContent()
   in System.Xml.XmlReader.ReadStartElement(String name)
   in MySQL.Utility.Classes.CustomSettingsProvider.GetPropertyValues(SettingsContext context, SettingsPropertyCollection collection)
   in System.Configuration.SettingsBase.GetPropertiesFromProvider(SettingsProvider provider)
   in System.Configuration.SettingsBase.GetPropertyValueByName(String propertyName)
   in System.Configuration.SettingsBase.get_Item(String propertyName)
   in System.Configuration.ApplicationSettingsBase.GetPropertyValue(String propertyName)
   in System.Configuration.ApplicationSettingsBase.get_Item(String propertyName)
   in MySql.Notifier.Properties.Settings.get_AutoAddPattern()
   in MySql.Notifier.Classes.Program.ChangeAutoAddPatternDefaultValue()
   in MySql.Notifier.Classes.Program.Main(String[] args)
--------------------------------------------------------------------
[29 Mar 2017 8:46] Claudio Riboni
Maybe solved:
After trying a solution found on "stackoverflow" the problem appears to be solved.
----------------------------------------------------------------------------------------
Delete or rename the following files:
C:\Users\YourUser\AppData\Roaming\Oracle\MySQL Notifier\settings.xml
----------------------------------------------------------------------------------------
this  will be recreated with a size of 3kB instead of the 2kB of the installation. 
Since yesterday the PC was rebooted 2 times without presenting the problem again.
[16 Jan 2018 17:13] Christine Cole
Thank you for your bug report. This bug was fixed in the 1.1.16 release and here is the changelog entry:

A corrupted connections.xml file caused MySQL Notifier to display a "Root
element is missing" error message when started.
[28 Feb 2018 20:35] Fareed Al-Fattal
I'm having this problem with the latest version of MySQL Notifier 1.1.7 on Windows 10

   at System.Xml.XmlTextReaderImpl.Throw(Exception e)
   at System.Xml.XmlTextReaderImpl.ParseDocumentContent()
   at System.Xml.XmlTextReaderImpl.Read()
   at System.Xml.XmlTextReader.Read()
   at System.Xml.XmlReader.MoveToContent()
   at System.Xml.XmlReader.ReadStartElement(String name)
   at MySQL.Utility.Classes.CustomSettingsProvider.GetPropertyValues(SettingsContext context, SettingsPropertyCollection collection)
   at System.Configuration.SettingsBase.GetPropertiesFromProvider(SettingsProvider provider)
   at System.Configuration.SettingsBase.GetPropertyValueByName(String propertyName)
   at System.Configuration.SettingsBase.get_Item(String propertyName)
   at System.Configuration.ApplicationSettingsBase.GetPropertyValue(String propertyName)
   at System.Configuration.ApplicationSettingsBase.get_Item(String propertyName)
   at MySql.Notifier.Properties.Settings.get_AutoAddPattern()
   at MySql.Notifier.Classes.Program.ChangeAutoAddPatternDefaultValue()
   at MySql.Notifier.Classes.Program.Main(String[] args)