C# StackExchange.Redis SetAdd(key,val)崩溃,key=GUID
非常恼人的StackExchange.Redis崩溃C# StackExchange.Redis SetAdd(key,val)崩溃,key=GUID,c#,.net,redis,stackexchange.redis,C#,.net,Redis,Stackexchange.redis,非常恼人的StackExchange.Redis崩溃SetAdd(key,val) 我想设置一个以程序GUID为键的集合 我发现(调试3小时后)SetAdd(key,val)在某些GUID下工作,但在其他GUID下崩溃: string key = "02639d71-0935-35e8-9d1b-9dd1a2a34629"; const string val = "somevalue"; db.SetAdd(key, val); // <=
SetAdd(key,val)
我想设置一个以程序GUID为键的集合
我发现(调试3小时后)SetAdd(key,val)
在某些GUID下工作,但在其他GUID下崩溃:
string key = "02639d71-0935-35e8-9d1b-9dd1a2a34629";
const string val = "somevalue";
db.SetAdd(key, val); // <=== Works
key = "02639d71-0935-35e8-9d1b-9dd1a2a34627";
db.SetAdd(key, val); // <=== CRASH @@!!@!@!
StackExchange.Redis中的崩溃点
我在LINQPad中测试了这段代码。它在同一个地方坠毁。第一个GUID工作,第二个不工作
这不是由于启动应用程序GUID导致的崩溃
使用不同的guid进行更多的测试。只有以“7”结尾的崩溃
key = "02639d71-0935-35e8-9d1b-9dd1a2a34622";
key = "02639d71-0935-35e8-9d1b-9dd1a2a34623";
key = "02639d71-0935-35e8-9d1b-9dd1a2a34624";
key = "02639d71-0935-35e8-9d1b-9dd1a2a34625";
key = "02639d71-0935-35e8-9d1b-9dd1a2a34626";
key = "02639d71-0935-35e8-9d1b-9dd1a2a34627"; // <= crashes
key = "02639d71-0935-35e8-9d1b-9dd1a2a34628";
key = "02639d71-0935-35e8-9d1b-9dd1a2a34629";
key=“02639d71-0935-35e8-9d1b-9dd1a2a34622”;
key=“02639d71-0935-35e8-9d1b-9dd1a2a34623”;
key=“02639d71-0935-35e8-9d1b-9dd1a2a34624”;
key=“02639d71-0935-35e8-9d1b-9dd1a2a34625”;
key=“02639d71-0935-35e8-9d1b-9dd1a2a34626”;
key=“02639d71-0935-35e8-9d1b-9dd1a2a34627”// Redis键是不透明的。这一信息:
针对持有错误类型值的键的错误类型操作
简单地说,您以前在该键中存储的数据类型不是“集合”。尝试(在redis cli中):
这将告诉您现有数据的数据类型。如果密钥不存在,或者密钥存在且是一个集合,则只能使用SADD
。它崩溃是因为我以前用该键存储了一个字符串。谁写这些错误消息?为什么消息不是“数据库已经包含具有该键的其他元素。请使用其他键!”。。多谢各位+1@Miroslav“这些错误消息是谁写的?”这是来自服务器的逐字错误,所以可能是Salvatore Sanfilippo:)我知道。:)我从1986年开始编程,但我被这个例外误导了(有3天的Redis经验)。我从StackExchange.Redis
的角度搜索了密钥类型的错误。可怜的我:)
key = "02639d71-0935-35e8-9d1b-9dd1a2a34622";
key = "02639d71-0935-35e8-9d1b-9dd1a2a34623";
key = "02639d71-0935-35e8-9d1b-9dd1a2a34624";
key = "02639d71-0935-35e8-9d1b-9dd1a2a34625";
key = "02639d71-0935-35e8-9d1b-9dd1a2a34626";
key = "02639d71-0935-35e8-9d1b-9dd1a2a34627"; // <= crashes
key = "02639d71-0935-35e8-9d1b-9dd1a2a34628";
key = "02639d71-0935-35e8-9d1b-9dd1a2a34629";
TYPE "02639d71-0935-35e8-9d1b-9dd1a2a34627"