You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pinot.apache.org by "sschulzdialpad (via GitHub)" <gi...@apache.org> on 2023/12/20 22:26:17 UTC

[I] ISO-8601 T character issue when using Multi-Stage Engine [pinot]

sschulzdialpad opened a new issue, #12187:
URL: https://github.com/apache/pinot/issues/12187

   Hi folks,
   
   it appears like the Multi-Stage Engine on Apache Pinot 1.0.0 is enforcing a different ruleset for valid patterns for the FROMDATETIME function when applied as a filter.
   ```
   WHERE 
      BETWEEN(date_created,
   			FROMDATETIME('2022-11-20T00:00:00 UTC','YYYY-MM-dd''''T''''HH:mm:ss ZZZ'),
   			FROMDATETIME('2022-11-30T00:00:00 UTC','YYYY-MM-dd''''T''''HH:mm:ss ZZZ'))
   ```
   
   Results in:
   ```
   Caused by: org.apache.pinot.sql.parsers.SqlCompilationException: Caught exception while invoking method: public static long org.apache.pinot.common.function.scalar.DateTimeFunctions.fromDateTime(java.lang.String,java.lang.String) with arguments: [2022-11-20T00:00:00 UTC, YYYY-MM-dd''T''HH:mm:ss ZZZ]
   	at org.apache.calcite.rel.rules.PinotEvaluateLiteralRule.evaluateLiteralOnlyFunction(PinotEvaluateLiteralRule.java:164)
   	at org.apache.calcite.rel.rules.PinotEvaluateLiteralRule$EvaluateLiteralShuttle.visitCall(PinotEvaluateLiteralRule.java:131)
   	at org.apache.calcite.rel.rules.PinotEvaluateLiteralRule$EvaluateLiteralShuttle.visitCall(PinotEvaluateLiteralRule.java:119)
   	at org.apache.calcite.rex.RexCall.accept(RexCall.java:189)
   ...
   Caused by: java.lang.IllegalStateException: Caught exception while invoking method: public static long org.apache.pinot.common.function.scalar.DateTimeFunctions.fromDateTime(java.lang.String,java.lang.String) with arguments: [2022-11-20T00:00:00 UTC, YYYY-MM-dd''T''HH:mm:ss ZZZ]
   	at org.apache.pinot.common.function.FunctionInvoker.invoke(FunctionInvoker.java:142)
   	at org.apache.calcite.rel.rules.PinotEvaluateLiteralRule.evaluateLiteralOnlyFunction(PinotEvaluateLiteralRule.java:161)
   	... 63 more
   Caused by: java.lang.reflect.InvocationTargetException
   	at jdk.internal.reflect.GeneratedMethodAccessor177.invoke(Unknown Source)
   	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
   	at org.apache.pinot.common.function.FunctionInvoker.invoke(FunctionInvoker.java:139)
   ...
   Caused by: java.lang.IllegalArgumentException: Illegal pattern component: T
   	at org.joda.time.format.DateTimeFormat.parsePatternTo(DateTimeFormat.java:566)
   	at org.joda.time.format.DateTimeFormat.createFormatterForPattern(DateTimeFormat.java:687)
   	at org.joda.time.format.DateTimeFormat.forPattern(DateTimeFormat.java:177)
   	at org.apache.pinot.common.function.DateTimePatternHandler.getDateTimeFormatter(DateTimePatternHandler.java:68))
   ```
   whereas the same query works when using the non Multi-Stage query engine.
   
   Background on the date_created column:
   ```
       {
         "name": "date_created",
         "dataType": "LONG",
         "format": "1:MILLISECONDS:EPOCH",
         "granularity": "1:HOURS"
       }
   ``` 
   and it is also used as a timeColumnName on segmentsConfig.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pinot.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@pinot.apache.org
For additional commands, e-mail: commits-help@pinot.apache.org


Re: [I] ISO-8601 T character issue when using Multi-Stage Engine [pinot]

Posted by "sschulzdialpad (via GitHub)" <gi...@apache.org>.
sschulzdialpad closed issue #12187: ISO-8601 T character issue when using Multi-Stage Engine
URL: https://github.com/apache/pinot/issues/12187


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pinot.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@pinot.apache.org
For additional commands, e-mail: commits-help@pinot.apache.org


Re: [I] ISO-8601 T character issue when using Multi-Stage Engine [pinot]

Posted by "sschulzdialpad (via GitHub)" <gi...@apache.org>.
sschulzdialpad commented on issue #12187:
URL: https://github.com/apache/pinot/issues/12187#issuecomment-1865231726

   It appears like using ''T'' instead of ''''T'''' fixes the issue!


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pinot.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@pinot.apache.org
For additional commands, e-mail: commits-help@pinot.apache.org