[ https://issues.apache.org/jira/browse/KAFKA-1469?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Neha Narkhede closed KAFKA-1469. -------------------------------- > Util.abs function does not return correct absolute values for negative values > ----------------------------------------------------------------------------- > > Key: KAFKA-1469 > URL: https://issues.apache.org/jira/browse/KAFKA-1469 > Project: Kafka > Issue Type: Bug > Reporter: Joel Koshy > Labels: newbie, patch > Attachments: KAFKA-1469.patch > > > Reported by Russell Melick. [edit: I don't think this affects correctness of > the places that use the abs utility since we just need it to return a > consistent positive value, but we should fix this nonetheless] > {code} > /** > * Get the absolute value of the given number. If the number is > Int.MinValue return 0. > * This is different from java.lang.Math.abs or scala.math.abs in that > they return Int.MinValue (!). > */ > def abs(n: Int) = n & 0x7fffffff > {code} > For negative integers, it does not return the absolute value. It does > appear to do what the comment says for Int.MinValue though. For example, > {code} > scala> -1 & 0x7fffffff > res8: Int = 2147483647 > scala> -2 & 0x7fffffff > res9: Int = 2147483646 > scala> -2147483647 & 0x7fffffff > res11: Int = 1 > scala> -2147483648 & 0x7fffffff > res12: Int = 0 > {code} -- This message was sent by Atlassian JIRA (v6.2#6252)