我正在使用Datastax C#驱动程序从我的C#应用程序连接到Cassandra节点。我的代码工作正常,我能够检索所有数据并处理它们。但是,当我尝试在获取记录后关闭群集时,它会给我上述错误。下面是我的Connect方法代码。
public ISession Connect()
{
cluster = Cluster.Builder().AddContactPoint(NodeIp).Build(); //node ip
ISession session = cluster.Connect(ClusterName); //database name
return session;
}
任何帮助都将不胜感激。
答案 0 :(得分:2)
关闭群集时,驱动程序使用STAThreads不支持的WaitHandle.WaitAll()
。
驱动程序应该在关闭时支持STAThreads,我创建了一个ticket for it。
与此同时,作为一种解决方法,您可以开始一项新任务并等待它。
Task.Factory.StartNew(() => cluster.Shutdown()).Wait();
<强>更新强>
此错误已在最新版本中修复。