【问题标题】:SolrJ 8.11.1 upgrade - Invalid version (expected 2, but 31) or the data in not in 'javabin' formatSolrJ 8.11.1 升级 - 无效版本(预期为 2,但为 31)或数据不是“javabin”格式
【发布时间】:2022-06-24 17:33:37
【问题描述】:

我正在将我的应用程序从 Solr 8.7.0 升级到 Solr 8.11.1。服务器和 solr-solrj-8.11.1.jar 都已更新到相同的版本。 Solr 服务器在 RHEL 7 上。当我在 Windows 上的 JBoss 7 中运行我的客户端应用程序时,所有 SolrJ 调用都失败了:

java.lang.RuntimeException: Invalid version (expected 2, but 31) or the data in not in 'javabin' format
   at org.apache.solr.common.util.JavaBinCodec._init(JavaBinCodec.java:213)
   at org.apache.solr.common.util.JavaBinCodec.initRead(JavaBinCodec.java:202)
   at org.apache.solr.common.util.JavaBinCodec.unmarshal(JavaBinCodec.java:195)
   at org.apache.solr.client.solrj.impl.BinaryResponseParser.processResponse(BinaryResponseParser.java:51)
   at org.apache.solr.client.solrj.impl.HttpSolrClient.executeMethod(HttpSolrClient.java:641)
   ... 94 more

相同的应用程序在部署到 RHEL 7 JBoss 时运行良好,只是在 Windows 上失败。在此次升级之前,Windows 应用程序一直在正常运行。

有什么想法吗?

Windows Java 版本 java 版本“1.8.0_251” 服务器 Java 版本“1.8.0_311”

【问题讨论】:

  • 您找到解决方案了吗?

标签: java windows solr solrj


【解决方案1】:

遇到与上述相同的问题,以防有人遇到与我们相同的问题。 我们从 8.3.0 迁移到 8.11.2。

我们的 http 客户端设置为始终添加“Accept: gzip”标头,而没有任何可以解压缩响应的实现。 8.3.0 没有使用 gzip,只是返回了 javabin not-gzipped,所以没有问题。 8.11.2 确实返回 gzip。这导致了上述异常。

该异常基本上是 solrj 告诉您它无法解析有效负载响应(因为它是 gzip 压缩的,但需要纯 javabin)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-10-24
    • 1970-01-01
    • 2023-03-21
    • 1970-01-01
    • 2021-05-08
    • 2020-12-22
    • 2023-04-11
    相关资源
    最近更新 更多