我正在使用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_dt
,managed-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'")
但是我也应该解析S
和SS
。这看起来有点尴尬。
任何帮助表示赞赏,