ServUO Version
Publish 57
Ultima Expansion
Endless Journey
I didn't do anything but log in, random crash. Restarted and logged in with no issues. Any assistance on understanding this would be great, thank you.

C#:
Exception:
System.IndexOutOfRangeException: Probable I/O race condition detected while copying memory. The I/O package is not thread safe by default. In multithreaded applications, a stream must be accessed in a thread-safe way, such as a thread-safe wrapper returned by TextReader's or TextWriter's Synchronized methods. This also applies to classes like StreamWriter and StreamReader.
   at System.Buffer.InternalBlockCopy(Array src, Int32 srcOffsetBytes, Array dst, Int32 dstOffsetBytes, Int32 byteCount)
   at System.IO.StreamWriter.Write(Char[] buffer, Int32 index, Int32 count)
   at Server.Utility.WriteBuffer(TextWriter output, PacketEntry packet) in C:\ServUO\Server\Utility.cs:line 1585
   at Server.Network.PacketLog.NetworkStore.Write(PacketEntry packet, Boolean flush) in C:\ServUO\Server\Network\PacketLog.cs:line 277
   at Server.Network.PacketLog.NetworkStore.Add(UInt16 sessionid, PacketFrom from, Byte[] data, Boolean dynamic) in C:\ServUO\Server\Network\PacketLog.cs:line 363
   at Server.Network.PacketLog.Write(PacketFrom from, Byte[] data, Boolean dynamic, Int32 start, Int32 size) in C:\ServUO\Server\Network\PacketLog.cs:line 382
   at Server.Network.PacketLog.WriteSend(Boolean dynamic, Byte[] data) in C:\ServUO\Server\Network\PacketLog.cs:line 405
   at Server.Network.NetState.Send(Packet p) in C:\ServUO\Server\Network\NetState.cs:line 665
   at Server.Multis.DesignState.SendDetailedInfoTo(NetState state, Boolean response)
   at Server.Multis.HouseFoundation.QueryDesignDetails(NetState state, BaseMulti multi)
   at Server.Multis.HouseFoundation.QueryDesignDetails(MultiDesignQueryEventArgs e)
   at Server.EventSink.InvokeMultiDesignQuery(MultiDesignQueryEventArgs e) in C:\ServUO\Server\EventSink.cs:line 2511
   at Server.Multis.HouseFoundation.QueryDesignDetails(NetState state, PacketReader pvSrc)
   at Server.Network.PacketHandlers.ExtendedCommand(NetState state, PacketReader pvSrc) in C:\ServUO\Server\Network\PacketHandlers.cs:line 1873
   at Server.Network.MessagePump.HandleReceive(NetState ns) in C:\ServUO\Server\Network\MessagePump.cs:line 347
   at Server.Network.MessagePump.Slice() in C:\ServUO\Server\Network\MessagePump.cs:line 136
   at Server.Core.Main(String[] args) in C:\ServUO\Server\Main.cs:line 676

This one also came with some fancy dsd exceptions.
C#:
System.ArgumentOutOfRangeException: Count cannot be less than zero.
Parameter name: count
   at System.String.CopyTo(Int32 sourceIndex, Char[] destination, Int32 destinationIndex, Int32 count)
   at System.IO.StreamWriter.Write(String value)
   at Server.Utility.WriteBuffer(TextWriter output, PacketEntry packet) in C:\ServUO\Server\Utility.cs:line 1625
   at Server.Network.PacketLog.NetworkStore.Write(PacketEntry packet, Boolean flush) in C:\ServUO\Server\Network\PacketLog.cs:line 277
   at Server.Network.PacketLog.NetworkStore.Add(UInt16 sessionid, PacketFrom from, Byte[] data, Boolean dynamic) in C:\ServUO\Server\Network\PacketLog.cs:line 363
   at Server.Network.PacketLog.Write(PacketFrom from, Byte[] data, Boolean dynamic, Int32 start, Int32 size) in C:\ServUO\Server\Network\PacketLog.cs:line 382
   at Server.Network.PacketLog.WriteSend(Boolean dynamic, Byte[] data) in C:\ServUO\Server\Network\PacketLog.cs:line 405
   at Server.Network.NetState.Send(Packet p) in C:\ServUO\Server\Network\NetState.cs:line 665
   at Server.Multis.DesignStateDetailed.CompressionThread()
System.IndexOutOfRangeException: Probable I/O race condition detected while copying memory. The I/O package is not thread safe by default. In multithreaded applications, a stream must be accessed in a thread-safe way, such as a thread-safe wrapper returned by TextReader's or TextWriter's Synchronized methods. This also applies to classes like StreamWriter and StreamReader.
   at System.Buffer.InternalBlockCopy(Array src, Int32 srcOffsetBytes, Array dst, Int32 dstOffsetBytes, Int32 byteCount)
   at System.IO.StreamWriter.Write(Char[] buffer, Int32 index, Int32 count)
   at Server.Utility.WriteBuffer(TextWriter output, PacketEntry packet) in C:\ServUO\Server\Utility.cs:line 1585
   at Server.Network.PacketLog.NetworkStore.Write(PacketEntry packet, Boolean flush) in C:\ServUO\Server\Network\PacketLog.cs:line 277
   at Server.Network.PacketLog.NetworkStore.Add(UInt16 sessionid, PacketFrom from, Byte[] data, Boolean dynamic) in C:\ServUO\Server\Network\PacketLog.cs:line 363
   at Server.Network.PacketLog.Write(PacketFrom from, Byte[] data, Boolean dynamic, Int32 start, Int32 size) in C:\ServUO\Server\Network\PacketLog.cs:line 382
   at Server.Network.PacketLog.WriteSend(Boolean dynamic, Byte[] data) in C:\ServUO\Server\Network\PacketLog.cs:line 405
   at Server.Network.NetState.Send(Packet p) in C:\ServUO\Server\Network\NetState.cs:line 665
   at Server.Multis.DesignStateDetailed.CompressionThread()
System.IndexOutOfRangeException: Probable I/O race condition detected while copying memory. The I/O package is not thread safe by default. In multithreaded applications, a stream must be accessed in a thread-safe way, such as a thread-safe wrapper returned by TextReader's or TextWriter's Synchronized methods. This also applies to classes like StreamWriter and StreamReader.
   at System.Buffer.InternalBlockCopy(Array src, Int32 srcOffsetBytes, Array dst, Int32 dstOffsetBytes, Int32 byteCount)
   at System.IO.StreamWriter.Write(Char[] buffer, Int32 index, Int32 count)
   at Server.Utility.WriteBuffer(TextWriter output, PacketEntry packet) in C:\ServUO\Server\Utility.cs:line 1585
   at Server.Network.PacketLog.NetworkStore.Write(PacketEntry packet, Boolean flush) in C:\ServUO\Server\Network\PacketLog.cs:line 277
   at Server.Network.PacketLog.NetworkStore.Add(UInt16 sessionid, PacketFrom from, Byte[] data, Boolean dynamic) in C:\ServUO\Server\Network\PacketLog.cs:line 363
   at Server.Network.PacketLog.Write(PacketFrom from, Byte[] data, Boolean dynamic, Int32 start, Int32 size) in C:\ServUO\Server\Network\PacketLog.cs:line 382
   at Server.Network.PacketLog.WriteSend(Boolean dynamic, Byte[] data) in C:\ServUO\Server\Network\PacketLog.cs:line 405
   at Server.Network.NetState.Send(Packet p) in C:\ServUO\Server\Network\NetState.cs:line 665
   at Server.Multis.DesignStateDetailed.CompressionThread()
System.ArgumentOutOfRangeException: Count cannot be less than zero.
Parameter name: count
   at System.String.CopyTo(Int32 sourceIndex, Char[] destination, Int32 destinationIndex, Int32 count)
   at System.IO.StreamWriter.Write(String value)
   at Server.Utility.WriteBuffer(TextWriter output, PacketEntry packet) in C:\ServUO\Server\Utility.cs:line 1623
   at Server.Network.PacketLog.NetworkStore.Write(PacketEntry packet, Boolean flush) in C:\ServUO\Server\Network\PacketLog.cs:line 277
   at Server.Network.PacketLog.NetworkStore.Add(UInt16 sessionid, PacketFrom from, Byte[] data, Boolean dynamic) in C:\ServUO\Server\Network\PacketLog.cs:line 363
   at Server.Network.PacketLog.Write(PacketFrom from, Byte[] data, Boolean dynamic, Int32 start, Int32 size) in C:\ServUO\Server\Network\PacketLog.cs:line 382
   at Server.Network.PacketLog.WriteSend(Boolean dynamic, Byte[] data) in C:\ServUO\Server\Network\PacketLog.cs:line 405
   at Server.Network.NetState.Send(Packet p) in C:\ServUO\Server\Network\NetState.cs:line 665
   at Server.Multis.DesignStateDetailed.CompressionThread()
System.IndexOutOfRangeException: Probable I/O race condition detected while copying memory. The I/O package is not thread safe by default. In multithreaded applications, a stream must be accessed in a thread-safe way, such as a thread-safe wrapper returned by TextReader's or TextWriter's Synchronized methods. This also applies to classes like StreamWriter and StreamReader.
   at System.Buffer.InternalBlockCopy(Array src, Int32 srcOffsetBytes, Array dst, Int32 dstOffsetBytes, Int32 byteCount)
   at System.IO.StreamWriter.Write(Char[] buffer, Int32 index, Int32 count)
   at Server.Utility.WriteBuffer(TextWriter output, PacketEntry packet) in C:\ServUO\Server\Utility.cs:line 1585
   at Server.Network.PacketLog.NetworkStore.Write(PacketEntry packet, Boolean flush) in C:\ServUO\Server\Network\PacketLog.cs:line 277
   at Server.Network.PacketLog.NetworkStore.Add(UInt16 sessionid, PacketFrom from, Byte[] data, Boolean dynamic) in C:\ServUO\Server\Network\PacketLog.cs:line 363
   at Server.Network.PacketLog.Write(PacketFrom from, Byte[] data, Boolean dynamic, Int32 start, Int32 size) in C:\ServUO\Server\Network\PacketLog.cs:line 382
   at Server.Network.PacketLog.WriteSend(Boolean dynamic, Byte[] data) in C:\ServUO\Server\Network\PacketLog.cs:line 405
   at Server.Network.NetState.Send(Packet p) in C:\ServUO\Server\Network\NetState.cs:line 665
   at Server.Multis.DesignStateDetailed.CompressionThread()
System.IndexOutOfRangeException: Probable I/O race condition detected while copying memory. The I/O package is not thread safe by default. In multithreaded applications, a stream must be accessed in a thread-safe way, such as a thread-safe wrapper returned by TextReader's or TextWriter's Synchronized methods. This also applies to classes like StreamWriter and StreamReader.
   at System.Buffer.InternalBlockCopy(Array src, Int32 srcOffsetBytes, Array dst, Int32 dstOffsetBytes, Int32 byteCount)
   at System.IO.StreamWriter.Write(Char[] buffer, Int32 index, Int32 count)
   at Server.Utility.WriteBuffer(TextWriter output, PacketEntry packet) in C:\ServUO\Server\Utility.cs:line 1585
   at Server.Network.PacketLog.NetworkStore.Write(PacketEntry packet, Boolean flush) in C:\ServUO\Server\Network\PacketLog.cs:line 277
   at Server.Network.PacketLog.NetworkStore.Add(UInt16 sessionid, PacketFrom from, Byte[] data, Boolean dynamic) in C:\ServUO\Server\Network\PacketLog.cs:line 363
   at Server.Network.PacketLog.Write(PacketFrom from, Byte[] data, Boolean dynamic, Int32 start, Int32 size) in C:\ServUO\Server\Network\PacketLog.cs:line 382
   at Server.Network.PacketLog.WriteSend(Boolean dynamic, Byte[] data) in C:\ServUO\Server\Network\PacketLog.cs:line 405
   at Server.Network.NetState.Send(Packet p) in C:\ServUO\Server\Network\NetState.cs:line 665
   at Server.Multis.DesignStateDetailed.CompressionThread()
 
C#:
Exception:
System.ArgumentOutOfRangeException: Count cannot be less than zero.
Parameter name: count
   at System.String.CopyTo(Int32 sourceIndex, Char[] destination, Int32 destinationIndex, Int32 count)
   at System.IO.StreamWriter.Write(String value)
   at Server.Utility.WriteBuffer(TextWriter output, PacketEntry packet) in C:\ServUO\Server\Utility.cs:line 1625
   at Server.Network.PacketLog.NetworkStore.Write(PacketEntry packet, Boolean flush) in C:\ServUO\Server\Network\PacketLog.cs:line 277
   at Server.Network.PacketLog.NetworkStore.Add(UInt16 sessionid, PacketFrom from, Byte[] data, Boolean dynamic) in C:\ServUO\Server\Network\PacketLog.cs:line 363
   at Server.Network.PacketLog.Write(PacketFrom from, Byte[] data, Boolean dynamic, Int32 start, Int32 size) in C:\ServUO\Server\Network\PacketLog.cs:line 382
   at Server.Network.PacketLog.WriteSend(Boolean dynamic, Byte[] data) in C:\ServUO\Server\Network\PacketLog.cs:line 405
   at Server.Network.NetState.Send(Packet p) in C:\ServUO\Server\Network\NetState.cs:line 665
   at Server.Mobile.Send(Packet p, Boolean throwOnOffline) in C:\ServUO\Server\Mobile.cs:line 7397
   at Server.Mobile.Send(Packet p) in C:\ServUO\Server\Mobile.cs:line 7390
   at VitaNex.Network.ExtendedOPL.SendPropertiesTo(Mobile to, Item item)
   at VitaNex.Network.ExtendedOPL.HandleQueryProperties(Mobile viewer, IEntity e)
   at VitaNex.Network.ExtendedOPL.OnBatchQueryProperties(NetState state, PacketReader pvSrc)
   at Server.Network.MessagePump.HandleReceive(NetState ns) in C:\ServUO\Server\Network\MessagePump.cs:line 347
   at Server.Network.MessagePump.Slice() in C:\ServUO\Server\Network\MessagePump.cs:line 136
   at Server.Core.Main(String[] args) in C:\ServUO\Server\Main.cs:line 676
 
These errors appear to be caused by custom code in the core networking and utility files.

Server.Network.PacketLog does not exist in ServUO, nor does Utility.WriteBuffer (which is where the error is sourced)
 
Interesting, I haven't modified that core code but I know someone who might have. Let me go back and check my code and if so get in touch with the culprit.. If anything I'll just revert the changes, it's been so long since those files were touched, thank goodness for GitHub haha!
 
Back