[erlang-bugs] Re: ETS ordered_set not ordered with OTP R14-B02 64 bits

pan@REDACTED pan@REDACTED
Fri Apr 1 11:04:26 CEST 2011


Hi!

Thank you for the awesome error report!

The bug is confirmed (of course) and it looks like a truncated integer in 
the comparision. The attached patch should fix it.

Please verify the patch and I'll add it (together with your testcase) to 
dev.

Cheers,
/Patrik

On Fri, 1 Apr 2011, Nicolas Charpentier wrote:

> Hi,
>
> Testing our application with R14-B02, we noticed some strange behaviour with the timers.
> Sometimes, timer:send_interval/3 wasn't sending the message to the process.
>
> After some investigations, it seems that in some circumstances, on an ordered_set  ets:first/1 doesn't give the lowest key.
>
> The minimal use case is isolated in the script bug.esh.
>
> The bug can be reproduce on:
> - Ubuntu 64bits and Red-Hat 64 bits  (OTP compiled without any particular option )
> - MacOS 64 BIts (64 bits compilation forced with ./configure --enable-darwin-64bit)
>
> The bug can't be reproduce on:
> - MacOs 32 bits
> - Ubuntu 32 bits
>
>
> Thanks to "git bisect" the bug seems to be introduced by the commit fff4ba0282e42e2942acebff9c10a274075c1c62
>
> $ git start
> $ git bisect good OTP_R14B01
> $ git bisect bad OTP_R14B02
> $ git bisect run <PATH_TO bisect_ets_bug.sh>
>
>
>
> Regards,
> Nicolas Charpentier
>
>
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ets_ordered_set_key_cmp.diff
Type: text/x-patch
Size: 548 bytes
Desc: Correction for ordered_set comparision bug.
URL: <http://erlang.org/pipermail/erlang-bugs/attachments/20110401/45ffdc20/attachment.bin>


More information about the erlang-bugs mailing list