SOLR中的日期问题有时会增加毫秒

时间:2019-06-10 06:38:14

标签: java solr solrj

我正在使用solr 7-4,我得到了

  

java.time.format.DateTimeParseException:无法在索引19处解析文本'2017-03-15T20:02:52.335Z'

当我尝试使用

解析存储在索引中的日期时
LocalDate.parse(documentModifDateAsString,SOLR_DATE_TIME_FORMAT);

使用SOLR_DATE_TIME_FORMAT = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss'Z'");(最多几秒钟而不是毫秒)

我了解例外情况,但是我不知道这样的日期会如何出现,因为Solr应该以YYYY-MM-DDThh:mm:ssZ模式存储所有日期。

我的日期字段名为modifiedDate_dtmanaged-schema.xml显示

<dynamicField name="*_dt" type="pdate" indexed="true" stored="true"/>

我怎么能强迫Solr(或任何人)总是只存储最多几秒钟的日期?

到目前为止,为缓解这种情况,我一直在捕获异常并尝试解析为毫厘斯:

SOLR_DATE_TIME_FORMAT_UP_TO_MILLIS = DateTimeFormatter.ofPattern(
            "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'")

但是我也应该解析SSS。这看起来有点尴尬。

任何帮助表示赞赏,

0 个答案:

没有答案