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

Solr 8 - MiniSolrCloudCluster with multiple servers gives "java.io.IOException: 6/invalid_frame_length" when adding docs

我正在创建一个 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 中添加以下内容或将其添加到静态块以便它在其他所有内容之前运行来工作:

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

添加这个解决了上面的异常。