Archived

This forum has been archived. Please start a new discussion on GitHub.

BadMagicException on single server

2»

Comments

  • benoit
    benoit Rennes, France
    Hi Andy,

    Could you run the server under the debugger and break at the line where the exception is raised? You could also add an assert in the exception constructor and then attach to the process. I would be interested to see the attributes of the connection at the time the exception is throw.

    Otherwise, I will setup your test case with 8-core Windows 2008 machines and see if I can reproduce on those machines, hopefully I'll have better chances.

    Cheers,
    Benoit.
  • Hi, Benoit!
    Could you run the server under the debugger and break at the line where the exception is raised? You could also add an assert in the exception constructor and then attach to the process. I would be interested to see the attributes of the connection at the time the exception is throw.

    Good idea! I'll try this on Monday.
    Otherwise, I will setup your test case with 8-core Windows 2008 machines and see if I can reproduce on those machines, hopefully I'll have better chances.

    Can you clarify - how do you run the test; are you using our binaries or own build? We find very strange that you cannot reproduce BadMagicException while we see it approx every 15 minutes we run the test on a single 8-core (with HT - 16 core) Windows 2008 R2 server.

    P.S. Merry Christmas and Happy New Year!!! :p

    Regards, andy
  • benoit
    benoit Rennes, France
    Hi

    I used my own build (x64, both tried release/debug builds). The 2 machines I tried on were 4-core machines (one of them was a VM) and both were running Windows 7... I tried on some other hardware (EC2 Windows Server 2008 VMs) and I'm finally able to reproduce. I will debug this now and let you know once I know more.

    Cheers,
    Benoit.
  • Hi, Benoit!
    benoit wrote: »
    I'm finally able to reproduce

    Glad to hear, it's a good New Year gift :)

    I made a dump at the BadMagicException moment and was going to reply to the thread, when saw you've answered. Tell me if you still need it.


    Regards, andy
  • benoit
    benoit Rennes, France
    Hi Andy,

    Could you please try again your test case after applying the patch attached to this post and re-compiling the Ice library? Thanks!

    Cheers,
    Benoit
  • Hi, Benoit!

    Sorry for delay.

    1) To make Ice compile, we had to add this members to NativeInfo struct in Network.h:

    DWORD count;
    int error;


    Maybe you forgot to diff this header?

    2) After we successfully rebuilt Ice, our client doesn't start, printing an error:

    !! 01/10/12 12:41:33.523 client.exe: error: TcpTransceiver.cpp:430: Ice::ConnectionLostException:
    connection lost: recv() returned zero


    So, we can't run our test with latest patch :(

    Regards, andy
  • benoit
    benoit Rennes, France
    Sorry, here's the correct patch.

    Cheers,
    Benoit.
  • Hi, Benoit!

    At last we couldn't find BadMagicExceptions in logs! Seems it works now. I wonder if patched Ice will be available for download or we continue using our custom built binaries?

    Regards, andy
  • bernard
    bernard Jupiter, FL
    Hi Andy,

    That's excellent news. This fix will be in our next release.

    We do not post binary patches on these forums. If you have a support contract and need a signed binary that incorporates one or more bug fixes, please contact support@zeroc.com.

    Best regards,
    Bernard
  • Hi, Bernard!

    Just to know - how soon are you going to release next version of Ice?

    Regard, andy