Bug #60322 | MissingManifestResourceException exception on Compact Framework | ||
---|---|---|---|
Submitted: | 3 Mar 2011 20:38 | Modified: | 9 Feb 2012 17:57 |
Reporter: | Maxim Nikolaev | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | Connector / NET | Severity: | S4 (Feature request) |
Version: | 6.3.6 | OS: | Windows |
Assigned to: | Gabriela Martinez Sanchez | CPU Architecture: | Any |
Tags: | MissingManifestResourceException |
[3 Mar 2011 20:38]
Maxim Nikolaev
[3 Mar 2011 23:40]
Maxim Nikolaev
Sample project which produces this error message
Attachment: CFConSample.rar (application/octet-stream, text), 130.96 KiB.
[4 Mar 2011 4:08]
Maxim Nikolaev
Looks like it can be just named as "MissingManifestResourceException", because during testing with sources of MySQL .NET Connector - it was possible to see that it's hanging in procedure ---(StreamCreator.cs)--- private Stream CreateSocketStream(IPAddress ip, bool unix) { EndPoint endPoint; #if !CF if (!Platform.IsWindows() && unix) endPoint = CreateUnixEndPoint(hostList); else #endif endPoint = new IPEndPoint(ip, (int)port); Socket socket = unix ? new Socket(AddressFamily.Unix, SocketType.Stream, ProtocolType.IP) : new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); if (keepalive > 0) { SetKeepAlive(socket, keepalive); } IAsyncResult ias = socket.BeginConnect(endPoint, null, null); if (!ias.AsyncWaitHandle.WaitOne((int)timeOut * 1000, false)) { socket.Close(); return null; } try { socket.EndConnect(ias); // <--- ERROR HAPPENING HERE } catch (Exception) { socket.Close(); throw; } MyNetworkStream stream = new MyNetworkStream(socket, true); GC.SuppressFinalize(socket); GC.SuppressFinalize(stream); return stream; }
[5 Mar 2011 4:00]
Maxim Nikolaev
I decreased the level of this issue - because the problem was solved - this was just an issue of network connection, which was not connected to MySQL connector itself. Now when network is ok - connector works fine. However, it was just look like a bug, because of this strange message "MissingManifestResourceException" - this message was not very descriptive in fact. So this topic can be closed.
[9 Mar 2011 8:57]
Bogdan Degtyariov
Maxim, Thanks for your comments and for the test case. MissingManifestResourceException is coming from the following code: public static string UnableToConnectToHost { get { return ResourceManager.GetString("UnableToConnectToHost", resourceCulture); } } The driver cannot connect to the host and it is about to return UnableToConnectToHost error, but ResourceManager cannot find the appropriate string.
[9 Mar 2011 11:13]
Bogdan Degtyariov
Setting to Verified because the error message is misleading and not adequate to the actual error.
[9 Feb 2012 17:57]
Gabriela Martinez Sanchez
Maxim, I used the application you attached to the bug entry and I was able to reproduce the issue. I noticed that you're using version 6.3.6 which is the one that has the bug and also it's not longer supported. So I changed to 6.3.8 which doesn't have this issue. And the result is accurate to the error when the connection fails: Unable to connect to any of the specified MySQL hosts. So my recommendation here is to update your application to use this newer version instead of the 6.3.6. which you can download from http://dev.mysql.com/downloads/connector/net/6.3.html#downloads. Please let us know if this resolve the issue.