NEST Elasticsearch错误:基础连接已关闭

时间:2016-02-26 13:23:19

标签: elasticsearch nest

我在使用NEST客户端连接ElasticSearch集群时遇到问题。

在我的开发机器上,我可以连接并运行查询弹性(在我的本地机器上运行)就好了,但在我们的暂存环境中,我收到错误" System.Net.WebException:底层连接已关闭:连接意外关闭。"。

我们的暂存环境包括4台运行Elastic的Linux机器和运行我们客户端软件的Windows机器。

我已经在连接设置上设置了DisableDirectStreaming()。我也尝试在我的web.config中设置<httpWebRequest useUnsafeHeaderParsing="true" />,但错误仍然存​​在(但现在ApiCall.OriginalException为NULL)。

通过Kopf接口发送查询,返回结果,因此集群似乎正在运行。

任何人都知道这里出了什么问题?

更新 我正在运行的查询是(其中indexFilter和searchFilter根据用户请求填充): 此查询适用于我的本地ES(Windows / ES 2.1.1),但不适用于我的生产ES(Ubuntu / ES 2.1.1)

QueryContainer indexFilter = new QueryContainer();
QueryContainer searchFilter = new QueryContainer();

var result = db.Client.Search<IndexRecord>
(
    search => search
    .Query
    (
        f => f.HasChild<SearchRecord>
        (
            c => c
            .Query
            (
                f2 => searchFilter
            )
        ) & indexFilter
    )
    .Sort
    (
        ss => ss.Ascending(f => f.AccommodationName)
    )
    .Size(10)
);

1 个答案:

答案 0 :(得分:1)

我解决了这个问题。不知怎的,客户端正在与9300端口进行通信而不是端口9200.我修复了这个问题,现在从ES中获取结果。