shenyu0127 commented on PR #10650:
URL: https://github.com/apache/pinot/pull/10650#issuecomment-1550448591

   > > 1. Before [1], the behavior was: a thrift (long, 1) -> a literal (long, 
1) -> a literal transform function (int, 1)
   > > 2. After [1], the behavior is: a thrift (long, 1) -> a literal (long, 1) 
-> a literal transform function (long, 1)
   > > 3. In this PR, the behavior is: a thrift (long, 1) -> a literal (int, 1) 
-> a literal transform function (int, 1)
   > > 
   > > 
   > > * To me behavior 2 is correct and behavior 1 is incorrect.
   > > * If we want to keep behavior 1 for backward compatibility, then the 
behavior 3 is different from behavior 1, will this cause any issues?
   > > 
   > > [1] #10380
   > 
   > So before [1], A. literal (long, 1), literal(int, 1) => thrift(string, 1) 
=> number => literal(int, 1) B. literal (long, INT_MAX+1), => thrift(string, 
INT_MAX+1) => number => literal(long, 1) Same for floating point. After [1] 
Behavior A changes, literal(long, 1), literal(int, 1)=> 
thrift(long,1)=>literal(int,1) Behavior B stays the same.
   
   Had an offline discussion with @61yao
   
   - The `LiteralContext.getType` method is not used anywhere so we are good.
   - A minor improvement we can do is to remove the `_literal` and `_dataType` 
private members in `LiteralTransformFunction` and add two methods `getLiteral` 
and `getDataType`, which get the value from the member `LiteralContext`.
   


-- 
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-unsubscr...@pinot.apache.org

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


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

Reply via email to