[ https://issues.apache.org/jira/browse/IMPALA-6202?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16614058#comment-16614058 ]
Yongjun Zhang edited comment on IMPALA-6202 at 9/13/18 8:59 PM: ---------------------------------------------------------------- Hi [~jbapple], Thanks for finding the issue and creating the jira. I assume fmod()'s behavior is as expected: {code:java} [localhost:21000] default> select fmod(9.9, 3); +--------------------+ | fmod(9.9, 3) | +--------------------+ | 0.8999996185302734 | +--------------------+ [localhost:21000] default> select typeof(fmod(9.9, 3)); +----------------------+ | typeof(fmod(9.9, 3)) | +----------------------+ | FLOAT | +----------------------+ {code} So what we need to fix is: # # the functionality of mod(). # the doc of fmod(). Do you agree? If so, we can create a separate Jira to do #2, and let this Jira address #1. Does that sound good? Thanks. was (Author: yzhangal): Hi [~jbapple], Thanks for finding the issue and creating the jira. I assume fmod()'s behavior is as expected: {code} [localhost:21000] default> select fmod(9.9, 3); +--------------------+ | fmod(9.9, 3) | +--------------------+ | 0.8999996185302734 | +--------------------+ [localhost:21000] default> select typeof(fmod(9.9, 3)); +----------------------+ | typeof(fmod(9.9, 3)) | +----------------------+ | FLOAT | +----------------------+ {code} So what we need to fix is: # # the functionality of mod(). # the doc of fmod(). Do you agree? Thanks. > fmod and mod and % are not equivalent > ------------------------------------- > > Key: IMPALA-6202 > URL: https://issues.apache.org/jira/browse/IMPALA-6202 > Project: IMPALA > Issue Type: Bug > Affects Versions: Impala 2.11.0 > Reporter: Jim Apple > Assignee: Yongjun Zhang > Priority: Major > > The docs say: > "mod(numeric_type a, same_type b) Purpose: Returns the modulus of a number. > Equivalent to the % arithmetic operator." > and > "fmod(double a, double b), fmod(float a, float b) Purpose: Returns the > modulus of a floating-point number. Equivalent to the % arithmetic operator." > But these can't both be true: > {noformat} > [localhost:21000] > select typeof(9.9 % 3), typeof(mod(9.9, 3)), > typeof(fmod(9.9, 3)); > +-----------------+---------------------+----------------------+ > | typeof(9.9 % 3) | typeof(mod(9.9, 3)) | typeof(fmod(9.9, 3)) | > +-----------------+---------------------+----------------------+ > | DECIMAL(2,1) | DECIMAL(4,1) | FLOAT | > +-----------------+---------------------+----------------------+ > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-all-unsubscr...@impala.apache.org For additional commands, e-mail: issues-all-h...@impala.apache.org