java - Solr 8 - 具有多个服务器的 MiniSolrCloudCluster 在添加文档时给出 "java.io.IOException: 6/invalid_frame_length"

标签 java solr solrj solrcloud

我正在创建一个 MiniSolrCloudCluster 实例,如下所示。之后我创建一个集合,然后添加一个文档并提交。

final int numServers = 3;

        // random unassigned HTTP port
        final int jettyPort = 0;

        final JettyConfig jettyConfig = JettyConfig.builder().setPort(jettyPort).build();

        // create a MiniSolrCloudCluster instance
        miniSolrCloudCluster = new MiniSolrCloudCluster(numServers, baseDir, jettyConfig);

当我添加文档(“cloudSolrClient.add(doc);”)时,我收到以下奇怪的异常:

18:06:44.627 [updateExecutor-17-thread-1-processing-x:collection1_shard3_replica_n4 r:core_node6 null n:127.0.0.1:56546_solr c:collection1 s:shard3]错误org.apache.solr.update.ErrorReportingConcurrentUpdateSolrClient - 错误 java.io.IOException: java.io.IOException: 6/invalid_frame_length

如果 numServers=1 则不会出现此异常。仅当 numServers>1 时才会发生。

有人知道这个问题的解决办法吗?

最佳答案

它的工作原理是在 Junit 测试用例的 @BeforeClass 中添加以下内容或将其添加到静态 block 中,以便它在其他所有内容之前运行:

System.setProperty("jetty.testMode", "true");

添加此解决了上面的异常。

关于java - Solr 8 - 具有多个服务器的 MiniSolrCloudCluster 在添加文档时给出 "java.io.IOException: 6/invalid_frame_length",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55417706/

相关文章:

apache - 安装 solr 和索引 mysql

c# - Solrnet 未找到 SolrField 属性

solr - SolrJ 上有没有好的教程或资源?

Java 函数式编程 : How to convert a if-else ladder inside for loop to functional style?

java - assetManager.loadModel 导致 AssetNotFound 异常

solr - 从 Solr 结果中过滤掉不相关的方面

indexing - SOLRJ-6.0.0 : Insertion of a bean object which associate list of bean object is giving null pointer exception

java - HttpSolrServer 实例管理

java - SQLite 错误代码 = 1

java - 如何在按下后退按钮后停止 while 循环