pounded on it some more :-)

  • coder_1024

    coder_1024 - 2002-03-24

    I thought it would be fun to really pound on the SW and so I did the following.  I modified the accountManager project slightly to add another menu option.  This option goes out and creates 1000 user accounts named user# (# is 1 to 1000)with the password of pass.

    I ran it and created the 1000 accounts, started the server, and setup a batch file which would simultaneously start multiple clients, each with a unique user name (using the user# format).

    I wasn't bold enough to try kicking off 1000 clients on my machine, but I did try running 100 of them at once (using user1 to user100).

    A handfull of them succeeded, but most crashed out.  Later I saw the following message in many of the newly opened windows.


    App   :(notice)-> Initializing Client
    App   :(notice)-> Connecting to
    Layer0:(fatal error)-> f:\dev\arianne\src\libclient\0_network\networkclientmanag
    er.cpp:(__LINE__Var+12): f:\dev\arianne\src\common\basic\network\tcpconnection.c
    pp:(__LINE__Var+7) - Error opening connection: Can't resolve host
    Fatal error: UNKNOWN - Host not found.


    granted, you'll never have 100 clients on the same machine..... so it was somewhat of a brutal test :-)

    it was interesting to see, however, that the server held its ground.  it kept on running.

    based on the errors, I think the problem was in the client code.  having a huge # of clients attempting to connect is most likely causing some resource contention.

    anyway, it was a fun test :-)

    • Brian Rowe

      Brian Rowe - 2002-03-24

      Try that test again, but put a 1 second pause between starting each client...

      • Miguel Angel Blanch Lardin

        The result will be the same...
        The problem is because server is full of players, you can of course:
        a) Raise the MAX_CONNECTIONS_NUMBER
        b) Wait for me to complete the unlimmited connections code :)

    • coder_1024

      coder_1024 - 2002-03-24

      tried it with the pause.  this time after about 20 successfull client startups, i got the following for the rest:

      App   :(notice)-> Initializing Client
      App   :(notice)-> Connecting to
      Fatal error: UNKNOWN - Host not found.

    • coder_1024

      coder_1024 - 2002-03-24

      Well, I changed the pause to 10 seconds.  This time, I had up to about 15 clients running.  I did notice the following message periodically in the server output during this time.  I'm not sure if this is actually a problem though:

      Layer3:(error)-> f:\dev\arianne\src\server\3_manager\perceptionmanager.cpp: f:\dev\arianne\src\common\4_object\piece.cpp
      :(__LINE__Var+4) - Error: Object don't found

      anyway, eventually, I also saw the following error:

      Layer5:(notice)-> An exception happen inside action method: Contact arianne-general@lists.sf.net about the event

      • Nobody/Anonymous

        This is due to a crash on the server, or the serve being improperly closed by the exit command, so world file is not updated.
        To fix this one you need to run account manager and delete all the account ids(7).

        Next time you close server type exit and it will finish.

    • Miguel Angel Blanch Lardin

      It is correct.
      It is known.

      When server is full, it just close the connection to new connections, so clients thinks that server is unreachable...

      I will work on fixing this.

    • coder_1024

      coder_1024 - 2002-03-25

      ok, well, I raised MAX_NUMBER_CONNECTIONS up to 100.  I then wiped and re-created all the accounts as you suggested.  i then started launching clients, with a 2 second delay.  this time, no errors.  woopee! :-)  I let it launch 30 clients, and then just stopped it from launching any more.

      The first 20 clients seemed to be buzzing away.  The last 10, were stuck sitting at the following:

      App   :(notice)-> Initializing Client
      App   :(notice)-> Connecting to

      Most likely my system was just loaded down :-)  Eventually (a couple minutes later) they were finally able to progress to the following:

      Receiving NLOGIN
      Server asking for password.

      The server output was getting very slow, so I ended up just killing everything.  I suppose runnning the server and multiple clients on the same machine isn't a great test anyway....

      • Brian Rowe

        Brian Rowe - 2002-03-25

        Do you know how to do profiling?

        If you would profile the server under these conditions it would be helpfull.

        btw, could we move this discussion to arianne-devel@lists.sf.net ??

    • Nobody/Anonymous

      ok, will do.



Cancel  Add attachments

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks