Quake3World.com Forums
     Programming Discussion
        #462 SV_Netchan_Transmit: unsent fragments, stacked


Post new topicReply to topic
Login | Profile | | FAQ | Search | IRC




Print view Previous topic | Next topic 
Topic Starter Topic: #462 SV_Netchan_Transmit: unsent fragments, stacked

Commander
Commander
Joined: 06 Oct 2006
Posts: 148
PostPosted: 06-01-2010 04:58 AM           Profile Send private message  E-mail  Edit post Reply with quote


Hey guys

I'm hoping someone here can help me figure out why I am getting the above error message. It seems to only happen at the beginning of a new map but doesn't happen all the time.




Top
                 

Mentor
Mentor
Joined: 12 Mar 2005
Posts: 3958
PostPosted: 06-01-2010 06:50 AM           Profile Send private message  E-mail  Edit post Reply with quote


You have debug logging on. It's a harmless message, the only thing it signals is that the server is trying to send more data than fits in one packet. The surplus will overflow into the next packet.




Top
                 

Commander
Commander
Joined: 06 Oct 2006
Posts: 148
PostPosted: 06-02-2010 10:58 AM           Profile Send private message  E-mail  Edit post Reply with quote


The problem is that I see a whole stream of these messages at the end of the log file after a server crash. Are these messages a result of the server crash and not the cause?




Top
                 

Mentor
Mentor
Joined: 12 Mar 2005
Posts: 3958
PostPosted: 06-03-2010 01:03 AM           Profile Send private message  E-mail  Edit post Reply with quote


The cause? Unlikely. Where exactly does the crash happen? If unsure, tag on a debugger and post the backtrace here.




Top
                 

Commander
Commander
Joined: 06 Oct 2006
Posts: 148
PostPosted: 06-04-2010 03:47 PM           Profile Send private message  E-mail  Edit post Reply with quote


Code:
#0  0x0000003053630215 in raise () from /lib64/libc.so.6
#1  0x0000003053631cc0 in abort () from /lib64/libc.so.6
#2  0x0000003053629696 in __assert_fail () from /lib64/libc.so.6
#3  0x0000000000476810 in StringsMatch (pieces=0x2aaaaf9373e8,
    match=0x7fffffffca50) at code/botlib/be_ai_chat.c:1442
#4  0x0000000000476964 in BotFindMatch (
    str=0x7fffffffcd6c "\031(Lost in your eyes\031) (Blue Upper Entrances)\031: I do not have any skills, I just team stack and then spam to groups of people to get a high score and act cool.", match=0x7fffffffca50, context=262)
    at code/botlib/be_ai_chat.c:1475
#5  0x000000000040c70b in SV_GameSystemCalls (args=0x7fffffffc8b0)
    at code/server/sv_game.c:667
#6  0x0000000000449632 in VM_DllSyscall (arg=518) at code/qcommon/vm.c:349
#7  0x00002aaaafff52ac in trap_BotFindMatch (
    str=0x7fffffffcd6c "\031(Lost in your eyes\031) (Blue Upper Entrances)\031: I do not have any skills, I just team stack and then spam to groups of people to get a high score and act cool.", match=0x7fffffffca50, context=262)
    at code/game/g_syscalls.c:555
#8  0x00002aaaaff91301 in BotMatchMessage (bs=0x2aaab022b2e0,
    message=0x7fffffffcd6c "\031(Lost in your eyes\031) (Blue Upper Entrances)\031: I do not have any skills, I just team stack and then spam to groups of people to get a high score and act cool.") at code/game/ai_cmd.c:1808
#9  0x00002aaaaffa569c in BotCheckConsoleMessages (bs=0x2aaab022b2e0)
---Type <return> to continue, or q <return> to quit---
    at code/game/ai_dmq3.c:4636
#10 0x00002aaaaffa66cb in BotDeathmatchAI (bs=0x2aaab022b2e0,
    thinktime=0.100000001) at code/game/ai_dmq3.c:5256
#11 0x00002aaaaffa99e3 in BotAI (client=8, thinktime=0.100000001)
    at code/game/ai_main.c:1043
#12 0x00002aaaaffaaef4 in BotAIStartFrame (time=479498)
    at code/game/ai_main.c:1545
#13 0x00002aaaaff859ef in vmMain (command=10, arg0=479498, arg1=11065408,
    arg2=0, arg3=1572864, arg4=31, arg5=-1338077360, arg6=-8784, arg7=4264202,
    arg8=11054473, arg9=0, arg10=0, arg11=33) at code/game/g_main.c:261
#14 0x000000000044a2d3 in VM_Call (vm=0x896ae0, callnum=10)
    at code/qcommon/vm.c:756
#15 0x000000000040358e in SV_BotFrame (time=479498) at code/server/sv_bot.c:439
#16 0x000000000041110a in SV_Frame (msec=1) at code/server/sv_main.c:939
#17 0x000000000042baf2 in Com_Frame () at code/qcommon/common.c:2910
#18 0x0000000000498768 in main (argc=30, argv=0x7fffffffe338)
    at code/sys/sys_main.c:568




Top
                 

Mentor
Mentor
Joined: 12 Mar 2005
Posts: 3958
PostPosted: 06-05-2010 02:11 AM           Profile Send private message  E-mail  Edit post Reply with quote


Code:
#3 0x0000000000476810 in StringsMatch (pieces=0x2aaaaf9373e8, match=0x7fffffffca50) at code/botlib/be_ai_chat.c:1442

That's the one. And it's this assert that is failing:
Code:
assert( match->variables[lastvariable].offset >= 0 );

Not exactly sure why. Have you been hacking the bot code?




Top
                 

Commander
Commander
Joined: 06 Oct 2006
Posts: 148
PostPosted: 06-05-2010 05:54 AM           Profile Send private message  E-mail  Edit post Reply with quote


Hmmm good question. There was one function I played with a while back. I will go back and change it to stock and see if that fixes it. Thanks ^misantropia^!




Top
                 

Commander
Commander
Joined: 06 Oct 2006
Posts: 148
PostPosted: 06-23-2010 12:20 PM           Profile Send private message  E-mail  Edit post Reply with quote


Can you tell from that assert where in the code the problem might be? Is this in some particular function?




Top
                 

Commander
Commander
Joined: 06 Oct 2006
Posts: 148
PostPosted: 06-23-2010 02:51 PM           Profile Send private message  E-mail  Edit post Reply with quote


Here is a new one...

Code:
Item: 1 weapon_rocketlauncher
UnnamedPlayer: Delta request from out of date packet.
WARNING: msg overflowed for UnnamedPlayer
UnnamedPlayer: Delta request from out of date packet.
WARNING: msg overflowed for UnnamedPlayer
UnnamedPlayer: Delta request from out of date packet.
WARNING: msg overflowed for UnnamedPlayer
UnnamedPlayer: Delta request from out of date packet.
WARNING: msg overflowed for UnnamedPlayer
UnnamedPlayer: Delta request from out of date packet.
WARNING: msg overflowed for UnnamedPlayer
]
Program received signal SIGSEGV, Segmentation fault.
0x080599c7 in SV_SendClientMessages () at code/server/sv_snapshot.c:681
681                     if (!c->state) {

#0  0x080599c7 in SV_SendClientMessages () at code/server/sv_snapshot.c:681
#1  0x00000008 in ?? ()
#2  0x00004000 in ?? ()
#3  0x00001700 in ?? ()
#4  0xbe2a6c00 in ?? ()
#5  0xa07ff4f6 in ?? ()
#6  0xffcf5800 in ?? ()
#7  0x0583cbff in ?? ()
#8  0x28a98008 in ?? ()
#9  0x00000808 in ?? ()
#10 0x0f182000 in ?? ()
#11 0x00000000 in ?? ()




Top
                 

Mentor
Mentor
Joined: 12 Mar 2005
Posts: 3958
PostPosted: 06-24-2010 12:11 AM           Profile Send private message  E-mail  Edit post Reply with quote


I know that bit of code, it iterates over the svs.clients array. c = svs.clients[i] and it looks like it doesn't point to a valid client_t structure (NULL or stray pointer).




Top
                 

Commander
Commander
Joined: 06 Oct 2006
Posts: 148
PostPosted: 06-24-2010 10:58 AM           Profile Send private message  E-mail  Edit post Reply with quote


Can you give an example of what might be causing this? I haven't touched any of the code in sv_snapshot.c...




Top
                 

Mentor
Mentor
Joined: 12 Mar 2005
Posts: 3958
PostPosted: 06-24-2010 12:17 PM           Profile Send private message  E-mail  Edit post Reply with quote


Stray pointers? When management asks, I blame it on cosmic radiation corrupting memory bits. That'll teach 'em cheap-skates to not buy ECC memory.

But seriously, it's hard to say. Does this also happen in vanilla Q3? (Probably not, else I would've heard of it). If not, consider your code changes carefully - somewhere you introduced a bug. If all else fails, go back a few revisions until the problem goes away. You are using some form of source control like CVS or Subversion, right?




Top
                 
Quake3World.com | Forum Index | Programming Discussion


Post new topic Reply to topic


cron
Quake3World.com
© ZeniMax. Zenimax, QUAKE III ARENA, Id Software and associated trademarks are trademarks of the ZeniMax group of companies. All rights reserved.
This is an unofficial fan website without any affiliation with or endorsement by ZeniMax.
All views and opinions expressed are those of the author.