[Home] [Downloads] [Search] [Help/forum]

Gammon Forum

See www.mushclient.com/spam for dealing with forum spam. Please read the MUSHclient FAQ!

[Folder]  Entire forum
-> [Folder]  MUSHclient
. -> [Folder]  Bug reports
. . -> [Subject]  Inexplicable delay after sending a command. (Second-hand explanation)
Home  |  Users  |  Search  |  FAQ
Username:
Register forum user name
Password:
Forgotten password?

Inexplicable delay after sending a command. (Second-hand explanation)

It is now over 60 days since the last post. This thread is closed.     [Refresh] Refresh page


Pages: 1 2  3  

Posted by Twisol   USA  (2,257 posts)  [Biography] bio
Date Tue 15 Dec 2009 12:42 AM (UTC)
Message
I'm posting this report for someone else because they don't have an account, don't want one, and don't really care to figure out what's going on because they'll just use zMud instead. I on the other hand would like to get to the bottom of this, especially because at least four other people have experienced the same delay. I have never experienced this delay, myself, and I know at least one other person who is also delay-free.

It seems that MUSHclient has a delay on the order of ~250ms after submitting a command, before the response is shown on-screen. The aforementioned user claims that there is no delay if he uses TinTin++ or raw telnet, and less of a delay with zMud. The MUSHclient version in question is 4.44, though I imagine it's not the only affected version.

The only delay I personally have ever noticed was when chatting on a pseudo-MUD that uses IMC (InterMud Chat) to communicate between separate MUDs; due to the nature of the protocol, it takes some time to pass the message through. All other delays I've ever seen were easily explained by a simple 'ping' to the MUD server, which always matched up to the delay period.

Anyways, this isn't really a full bug report, it's more of a noticing of a bug. I don't know what is going on, and the other person doesn't care to join the forums, so I'd appreciate it if you could give me a few diagnostic questions to pass along. It worries me that some people have it and some people don't.

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
[Go to top] top

Posted by Nick Gammon   Australia  (21,321 posts)  [Biography] bio   Forum Administrator
Date Reply #1 on Tue 15 Dec 2009 01:34 AM (UTC)
Message
Well the questions that spring to mind are:


  • Is this a vanilla installation? That is, no plugins, triggers, aliases etc.?

    If not, could they make a new world file with no plugins or anything else, and see if the problem persists?

    I know this might sound strange, but perhaps they have an alias that picks up every command, and sends it after the speedwalk delay, or something.

    Or, they have a trigger that is very slow to execute.

    Or maybe if some sort of "screen reader" plugin or similar is installed, it may delay output.

  • Does this always happen (ie. from the moment you connect), or does it gradually get worse?

    If so, possibly they have a very large output buffer, and it fills up, and due to a shortage of memory, every attempt to write to it causes a page fault, and disk access.

  • Does this apply to every line, or ones with a prompt?

  • Does it seem to be a delayed input, rather than delayed output? Eg. if they type "help" then does the whole help arrive very quickly, once the initial delay is over?

  • Can they try turning on "Debug Packets" (on the Edit menu).

    Then type a command to make the debug window appear, then move and resize it so they can see it easily.

    Then type another command. Does it appear immediately in the packet debug window - for example:

    
    Sent  packet: 9 (6 bytes) at Tuesday, December 15, 2009, 1:28:50 PM
    
    sigh..             73 69 67 68 0d 0a
    


    ... or is there a delay before the command appears in the packet debug?

  • Are other things open? (eg. other worlds)

  • Are they logging the session? Maybe the log file is slow to write to (eg. on a network drive).

  • If this delay occurs, and they *immediately* switch to another client, such as zMUD, then does the delay go away? Perhaps the MUD just happens to have lag at this time.



I have MUSHclient running on all sorts of PCs, Windows XP, Vista, Windows 7, natively and under VMware on a Mac. Also on Ubuntu. I never notice this delayed input problem.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Twisol   USA  (2,257 posts)  [Biography] bio
Date Reply #2 on Tue 15 Dec 2009 01:49 AM (UTC)
Message
It's a vanilla installation. Original configuration, no plugins, no aliases or triggers.

Apparently, it always happens.

I'm not sure I understand the third bullet point, since you can only really send commands at a prompt.

All of the response comes very quickly.

I'll get back to you on the debug packets suggestion.

Nothing else is open.

No logging is taking place.

I believe it does indeed go away simply by switching to another client, such as TinTin++.

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
[Go to top] top

Posted by David Haley   USA  (3,881 posts)  [Biography] bio
Date Reply #3 on Tue 15 Dec 2009 03:05 AM (UTC)
Message
Packet debugging would be most interesting to me, as it would confirm if MC is for some reason receiving the packets but choosing to not print them straight away; this could be due to several reasons, such as perhaps not getting a telnet GA for the prompt?

David Haley aka Ksilyan
Head Programmer,
Legends of the Darkstone

http://david.the-haleys.org
[Go to top] top

Posted by Nick Gammon   Australia  (21,321 posts)  [Biography] bio   Forum Administrator
Date Reply #4 on Tue 15 Dec 2009 05:46 AM (UTC)

Amended on Tue 15 Dec 2009 05:47 AM (UTC) by Nick Gammon

Message
A delay of 250 ms isn't that long (one quarter of a second - a bit short to time with a stopwatch). It could originate from a number of sources:


  • A delay between hitting <enter> and the command being transmitted via the Internet.

  • A delay between the PC you are on, and the MUD server (so the server hasn't got the command yet) (outgoing network lag)

  • A delay at the MUD end (server lag) - where it takes a few milliseconds to process the command, perhaps because of lots of players being on, or because they are doing backups or something.

  • A delay from where the MUD responds, and the response being received by the PC (incoming network lag)

  • A delay before MUSHclient receives the message from the operating system (perhaps other applications are running)

  • A delay inside MUSHclient from when the message is received to when it is processed (eg. triggers, plugins)

  • A delay from when MUSHclient decides to display the message and when it becomes visible (eg. screen refresh a bit slow)



The packet debug, closely observed, might help work some of this out. Also running a tracert might help show if there is network lag.

I would also have another client running at the same time, and confirm that, within a second of each other, commands in one client are noticeably slower than in another one - this would tend to rule out network lag.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Nick Gammon   Australia  (21,321 posts)  [Biography] bio   Forum Administrator
Date Reply #5 on Tue 15 Dec 2009 06:00 AM (UTC)

Amended on Tue 15 Dec 2009 06:02 AM (UTC) by Nick Gammon

Message
You know, whilst I don't totally dismiss the claims made by this 3rd party, I am inclined to think this is a bit of a "troll" complaint.

From this thread:

http://www.gammon.com.au/forum/?id=9892

Larkin said:

It's [MUSHclient] always been a speedy and extremely stable application, which I personally appreciate immensely!


and:

Cage_fire_2000 said:

I agree MUSHclient is very speedy, I tried simpleMU once, and while I really liked the spawn feature it's very awesome, on my 933 Mhz computer, the GUI was peculiarly slow in comparison to MUSHclient for some reason, just clicking the different buttons seemed to lag strangely, I can't imagine why, but it did.


Now we have a 3rd-hand complaint, from someone who doesn't bother to log onto the forum themselves, saying that MUSHclient is slow but TinTin++ and zMUD are faster. It's almost like an ad for a competing client.

Sorry, Twisol, but I think we can ask your friend to complain in person, or say "screen shot or it didn't happen".

;)

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Twisol   USA  (2,257 posts)  [Biography] bio
Date Reply #6 on Tue 15 Dec 2009 08:57 AM (UTC)

Amended on Tue 15 Dec 2009 09:00 AM (UTC) by Twisol

Message
Right, I'm pretty sceptical myself - I absolutely think it's something external to the client. The problems is that there are multiple "3rd parties" who have experienced this, so it's somewhat less likely to be a shill sort of thing. (Also, he and the others only brought it up during a separate conversation, and I wanted to look into it. It was entirely my idea to report it)

I don't mind dropping the matter, but I just wanted to bring it up and hopefully reach some kind of conclusive proof that it's not MUSHclient that's the issue. Something else that might help is that he says even the command echo is delayed, which seems to me to rule out latency issues. It occured to me that maybe there is a send() operation on a socket that, for some low-level reason specific to certain factors that most MUSHclient users don't have, is blocking longer than appropriate. However, I haven't looked into the source code to check, so this is just theoretical. It did remind me of the issue with timers and a processor issue from a while back, though.

EDIT: Speaking of which, he said he had an Intel Core Duo. Just throwing that out there.

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
[Go to top] top

Posted by Kayle   (5 posts)  [Biography] bio
Date Reply #7 on Tue 15 Dec 2009 09:17 AM (UTC)
Message
While I'm not the original person who brought this up, I can confirm that I've had this happen. Most recently while I was using MUSHClient to test that output from recent changes were showing properly across all the clients I knew of.

The lag I experience with MUSHClient is from the time enter is pressed to the time MUSHClient displayed the local echo on the screen. (I don't know why, but I always turn on local echo.)

I've never experienced this on any other client, and the MUD that I connect to has never mattered. Realms of Despair, my own mud, any of them. I've always experienced this delay. I've never brought it up before, because MUSHClient isn't my preferred client. I personally use zMUD, not because of some loyalty, but because I paid for it, and I believe in getting my money's worth. ;)
[Go to top] top

Posted by Nick Gammon   Australia  (21,321 posts)  [Biography] bio   Forum Administrator
Date Reply #8 on Tue 15 Dec 2009 09:27 AM (UTC)
Message
Thanks for the clarification. If there is a delay between hitting <enter> and the command being echoed locally, that certainly seems to be a client problem.

Having said that, it isn't one I experience myself. I wonder if spell-checking is turned on? Conceivably, spell-checking might delay the interval between when you press <enter> and the line is accepted as having no spelling mistakes.

Just to clarify, can you confirm whether or not automatic spell checking is enabled?

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Nick Gammon   Australia  (21,321 posts)  [Biography] bio   Forum Administrator
Date Reply #9 on Tue 15 Dec 2009 09:30 AM (UTC)
Message
I note that, fairly recently, the spell checker migrated from Lua tables to an SQLite database. If, for some reason, SQLite accesses are slow, this might account for the delay. Maybe with a 10 word line, for example, looking up 10 words in the database might take 25 ms each.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Kayle   (5 posts)  [Biography] bio
Date Reply #10 on Tue 15 Dec 2009 09:34 AM (UTC)

Amended on Tue 15 Dec 2009 09:35 AM (UTC) by Kayle

Message
No, Spell-Checker was not on in my case. I can't speak for the others, but I never turned it on.

I first noticed it on an older version, in the 2.0 range.
[Go to top] top

Posted by Twisol   USA  (2,257 posts)  [Biography] bio
Date Reply #11 on Tue 15 Dec 2009 09:40 AM (UTC)
Message
For my part, I tried enabling the spellchecker (in global preferences -> general and world properties -> commands), and there was no noticable delay at all.

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
[Go to top] top

Posted by Kayle   (5 posts)  [Biography] bio
Date Reply #12 on Tue 15 Dec 2009 09:47 AM (UTC)
Message
I just tested on two other computers in the house, one of which is relatively new, the other is relatively old. Both experienced that same bit of lag.

Neither of the newer computers is top of the line or bleeding edge (well this one was when it was new..) and the lag is identical across all of them.

Two use Windows XP SP3 (one Pro, the other Media Center), and the newest one uses Windows 7.
[Go to top] top

Posted by Nick Gammon   Australia  (21,321 posts)  [Biography] bio   Forum Administrator
Date Reply #13 on Tue 15 Dec 2009 09:48 AM (UTC)
Message
Hmmm. Well, the processing that occurs after you press <enter> is not trivial, it is documented here:

Template:post=6572 Please see the forum thread: http://gammon.com.au/forum/?id=6572.


However I can't offhand see anything there that might account for why a small number of people (out of thousands) are experiencing a delay.

Problems like this are easier solved if they can be reproduced. If I could reproduce it I could add timing code between each step and work out which step has the 250 ms delay in it.

I don't mind if people use other clients, after all I don't get paid for MUSHclient, but I like to think it is fast and reliable.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Nick Gammon   Australia  (21,321 posts)  [Biography] bio   Forum Administrator
Date Reply #14 on Tue 15 Dec 2009 09:55 AM (UTC)

Amended on Tue 15 Dec 2009 09:56 AM (UTC) by Nick Gammon

Message
Kayle said:

I just tested on two other computers in the house, one of which is relatively new, the other is relatively old. Both experienced that same bit of lag.


Kayle, can you please copy and paste your entire world file here? Sometimes some obscure option that I didn't think to look at is responsible for these things. Just open the world file in Notepad or similar, as it is stored as straight text.

You can delete or "x" out any lines with identifying information in them, like the world name, character name, password, and connection details.

For example, a while ago someone complained that what they typed wasn't being echoed, and that was because the "echo your input" box wasn't checked.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

The dates and times for posts above are shown in Universal Co-ordinated Time (UTC).

To show them in your local time you can join the forum, and then set the 'time correction' field in your profile to the number of hours difference between your location and UTC time.


25,300 views.

This is page 1, subject is 3 pages long: 1 2  3  [Next page]

It is now over 60 days since the last post. This thread is closed.     [Refresh] Refresh page

Go to topic:           Search the forum


[Go to top] top

Quick links: MUSHclient. MUSHclient help. Forum shortcuts. Posting templates. Lua modules. Lua documentation.

Information and images on this site are licensed under the Creative Commons Attribution 3.0 Australia License unless stated otherwise.

[Home]


Written by Nick Gammon - 5K   profile for Nick Gammon on Stack Exchange, a network of free, community-driven Q&A sites   Marriage equality

Comments to: Gammon Software support
[RH click to get RSS URL] Forum RSS feed ( https://gammon.com.au/rss/forum.xml )

[Best viewed with any browser - 2K]    [Hosted at FutureQuest]