Hi Martin, Yes this does appear incorrect, and I expect other integer implementations probably have similar issues.
You should be able to sign up for an account on JIRA with a valid e-mail address and then file an issue in the Arrow project. Thanks, Micah On Thu, Apr 9, 2020 at 9:58 AM Martin Janda <[email protected]> wrote: > I made first look to Apache Arrow Java sources. > > I found wrong implementation for DefaultVectorComparators.LongComparator I > suppose that other comparators can be wrong too. > > Simple test: > > long l1=Long.MIN_VALUE + 1L;long l2=Long.MAX_VALUE; > > System.out.println("Arrow: " + Long.signum(l1 - l2)); // actual arrow code > System.out.println("Java : " + Long.compare(l1, l2)); > > Result: > Arrow: 1 > Java : -1 > > I think that there should be added tests for corner cases. And I suggest to > replace arrow implementation with Long.compare, Integer.compare... > that provides correct results. > Thank you > Martin > > PS I have no access to JIRA to report this issue. > > >
