ServiceStack Redis クライアントをテストしていたところ、Windows Server 2003 R2 のパッケージのサイズに関連するエラーが発生しました。
30MB 未満のファイルの場合は問題なく動作しますが、32 ~ 33MB を超えるファイルの場合はエラーが発生し始めました。Windows Server 2003 R2 でのみ発生しましたが、Windows 7 と Windows 2008 R2 で正常にテストされました。
コード:
String text = File.ReadAllText("file.xml");
String key = Guid.NewGuid().ToString();
if (redisClient.Add(key, text, DateTime.Now.AddSeconds(300)))
String Result = redisClient.Get<object>(key) as String;
エラー:
System.Net.Sockets.SocketException (0x80004005): An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
OSの制限によるものなのか、それともRedisのServiceStackクライアントの問題なのか、誰にもわかりません。
前もって感謝します。