|
19 | 19 | import org.elasticsearch.script.Script;
|
20 | 20 | import org.elasticsearch.search.SearchHit;
|
21 | 21 | import org.elasticsearch.search.fetch.StoredFieldsContext;
|
| 22 | +import org.elasticsearch.search.fetch.subphase.DocValueFieldsContext; |
22 | 23 | import org.elasticsearch.search.sort.SortOrder;
|
23 | 24 | import org.elasticsearch.xpack.core.ClientHelper;
|
24 | 25 | import org.elasticsearch.xpack.core.ml.datafeed.extractor.DataExtractor;
|
@@ -46,6 +47,7 @@ class ScrollDataExtractor implements DataExtractor {
|
46 | 47 |
|
47 | 48 | private static final Logger LOGGER = Loggers.getLogger(ScrollDataExtractor.class);
|
48 | 49 | private static final TimeValue SCROLL_TIMEOUT = new TimeValue(30, TimeUnit.MINUTES);
|
| 50 | + private static final String EPOCH_MILLIS_FORMAT = "epoch_millis"; |
49 | 51 |
|
50 | 52 | private final Client client;
|
51 | 53 | private final ScrollDataExtractorContext context;
|
@@ -114,7 +116,11 @@ private SearchRequestBuilder buildSearchRequest(long start) {
|
114 | 116 | context.query, context.extractedFields.timeField(), start, context.end));
|
115 | 117 |
|
116 | 118 | for (String docValueField : context.extractedFields.getDocValueFields()) {
|
117 |
| - searchRequestBuilder.addDocValueField(docValueField); |
| 119 | + if (docValueField.equals(context.extractedFields.timeField())) { |
| 120 | + searchRequestBuilder.addDocValueField(docValueField, EPOCH_MILLIS_FORMAT); |
| 121 | + } else { |
| 122 | + searchRequestBuilder.addDocValueField(docValueField, DocValueFieldsContext.USE_DEFAULT_FORMAT); |
| 123 | + } |
118 | 124 | }
|
119 | 125 | String[] sourceFields = context.extractedFields.getSourceFields();
|
120 | 126 | if (sourceFields.length == 0) {
|
|
0 commit comments