You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@druid.apache.org by fj...@apache.org on 2018/09/27 16:38:51 UTC
[incubator-druid] branch master updated: Add TimestampSpec format
for microsecond (#6395)
This is an automated email from the ASF dual-hosted git repository.
fjy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-druid.git
The following commit(s) were added to refs/heads/master by this push:
new 47a6cca Add TimestampSpec format for microsecond (#6395)
47a6cca is described below
commit 47a6cca01343e4a671e588afbfbbb6901cd46a50
Author: QiuMM <cs...@gmail.com>
AuthorDate: Fri Sep 28 00:38:44 2018 +0800
Add TimestampSpec format for microsecond (#6395)
---
docs/content/ingestion/ingestion-spec.md | 2 +-
.../org/apache/druid/java/util/common/parsers/TimestampParser.java | 7 +++++--
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/docs/content/ingestion/ingestion-spec.md b/docs/content/ingestion/ingestion-spec.md
index 7978f6f..590ea30 100644
--- a/docs/content/ingestion/ingestion-spec.md
+++ b/docs/content/ingestion/ingestion-spec.md
@@ -187,7 +187,7 @@ handle all formatting decisions on their own, without using the ParseSpec.
| Field | Type | Description | Required |
|-------|------|-------------|----------|
| column | String | The column of the timestamp. | yes |
-| format | String | iso, millis, posix, auto or any [Joda time](http://joda-time.sourceforge.net/apidocs/org/joda/time/format/DateTimeFormat.html) format. | no (default == 'auto' |
+| format | String | iso, posix, millis, micro, nano, auto or any [Joda time](http://joda-time.sourceforge.net/apidocs/org/joda/time/format/DateTimeFormat.html) format. | no (default == 'auto' |
### DimensionsSpec
diff --git a/java-util/src/main/java/org/apache/druid/java/util/common/parsers/TimestampParser.java b/java-util/src/main/java/org/apache/druid/java/util/common/parsers/TimestampParser.java
index 38f1206..ecd06f8 100644
--- a/java-util/src/main/java/org/apache/druid/java/util/common/parsers/TimestampParser.java
+++ b/java-util/src/main/java/org/apache/druid/java/util/common/parsers/TimestampParser.java
@@ -71,8 +71,9 @@ public class TimestampParser
return DateTimes.of(ParserUtils.stripQuotes(input));
};
} else if ("posix".equalsIgnoreCase(format)
- || "millis".equalsIgnoreCase(format)
- || "nano".equalsIgnoreCase(format)) {
+ || "millis".equalsIgnoreCase(format)
+ || "micro".equalsIgnoreCase(format)
+ || "nano".equalsIgnoreCase(format)) {
final Function<Number, DateTime> numericFun = createNumericTimestampParser(format);
return input -> {
Preconditions.checkArgument(!Strings.isNullOrEmpty(input), "null timestamp");
@@ -104,6 +105,8 @@ public class TimestampParser
{
if ("posix".equalsIgnoreCase(format)) {
return input -> DateTimes.utc(TimeUnit.SECONDS.toMillis(input.longValue()));
+ } else if ("micro".equalsIgnoreCase(format)) {
+ return input -> DateTimes.utc(TimeUnit.MICROSECONDS.toMillis(input.longValue()));
} else if ("nano".equalsIgnoreCase(format)) {
return input -> DateTimes.utc(TimeUnit.NANOSECONDS.toMillis(input.longValue()));
} else if ("ruby".equalsIgnoreCase(format)) {
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@druid.apache.org
For additional commands, e-mail: commits-help@druid.apache.org