You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@directory.apache.org by Alex Karasulu <ao...@bellsouth.net> on 2004/02/19 08:55:02 UTC
FYI FW: [OT] Bug in NIO
Just wanted to get this last piece of embarrassing material out to
my friends her at the directory project. Yeah I blew a good 2 hours
for nothing on this one. But its not a bug but actually how it should
work. It spooked me but it will never happen again :-).
Alex
> -----Original Message-----
> From: Boon Hian Tek [mailto:btek@cox.net]
> Sent: Thursday, February 19, 2004 2:04 AM
> To: Avalon Developers List
> Subject: Re: [OT] Bug in NIO
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi Alex,
>
> Alex Karasulu wrote:
> | I think I found a bug in NIO but I'm seeing double right now
> | after chasing it for so long. The bug has to do with a simple
> | hashCode function - nothing really to do with the core operations
> | of the API.
> |
> | I was wondering if others can look at this junit testcase I have here
> | and perhaps even run it to confirm that I'm not smoking crack.
> | I this really a bug?
> |
> | The test is simply this here:
> |
> | public void testBufferHashing() throws Exception
> | {
> | HashMap l_map = new HashMap() ;
> |
> | for( int ii = 0; ii < 10; ii++ )
> | {
> | ByteBuffer l_buf = ByteBuffer.allocateDirect( 4096 ) ;
> | l_map.put( l_buf, new Integer( ii ) ) ;
> | }
> |
> | assertTrue( l_map.size() == 10 ) ;
> | }
> |
> | Seems like there's a hashCode problem with the direct buffer.
> |
> | Thanks in advance,
> | Alex
>
> "Because buffer hash codes are content-dependent, it is inadvisable to
> use buffers as keys in hash maps or similar data structures unless it is
> known that their contents will not change."
>
> http://java.sun.com/j2se/1.4.2/docs/api/java/nio/ByteBuffer.html#hashCode(
> )
>
> The equals method evaluate two empty buffers as equals.
>
> I don't think this is a bug.
>
> My 2 cents.
>
> Boon
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.2.3 (GNU/Linux)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
>
> iD8DBQFANF/iNJFBtmCH2hIRAtTbAKCHvROEHkxHkkumZMwqaawDG0NRXgCfcpiO
> J9WOcMrA/inmDpD0X2M6hJQ=
> =BCf5
> -----END PGP SIGNATURE-----
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@avalon.apache.org
> For additional commands, e-mail: dev-help@avalon.apache.org
Re: FYI FW: [OT] Bug in NIO
Posted by Stephen McConnell <mc...@apache.org>.
Alex Karasulu wrote:
> Just wanted to get this last piece of embarrassing material out to
> my friends her at the directory project. Yeah I blew a good 2 hours
> for nothing on this one. But its not a bug but actually how it should
> work. It spooked me but it will never happen again :-).
Don't worry - this just puts you in good company!!
Cheers, Steve.
> Alex
>
>
>>-----Original Message-----
>>From: Boon Hian Tek [mailto:btek@cox.net]
>>Sent: Thursday, February 19, 2004 2:04 AM
>>To: Avalon Developers List
>>Subject: Re: [OT] Bug in NIO
>>
>>-----BEGIN PGP SIGNED MESSAGE-----
>>Hash: SHA1
>>
>>Hi Alex,
>>
>>Alex Karasulu wrote:
>>| I think I found a bug in NIO but I'm seeing double right now
>>| after chasing it for so long. The bug has to do with a simple
>>| hashCode function - nothing really to do with the core operations
>>| of the API.
>>|
>>| I was wondering if others can look at this junit testcase I have here
>>| and perhaps even run it to confirm that I'm not smoking crack.
>>| I this really a bug?
>>|
>>| The test is simply this here:
>>|
>>| public void testBufferHashing() throws Exception
>>| {
>>| HashMap l_map = new HashMap() ;
>>|
>>| for( int ii = 0; ii < 10; ii++ )
>>| {
>>| ByteBuffer l_buf = ByteBuffer.allocateDirect( 4096 ) ;
>>| l_map.put( l_buf, new Integer( ii ) ) ;
>>| }
>>|
>>| assertTrue( l_map.size() == 10 ) ;
>>| }
>>|
>>| Seems like there's a hashCode problem with the direct buffer.
>>|
>>| Thanks in advance,
>>| Alex
>>
>>"Because buffer hash codes are content-dependent, it is inadvisable to
>>use buffers as keys in hash maps or similar data structures unless it is
>>known that their contents will not change."
>>
>>http://java.sun.com/j2se/1.4.2/docs/api/java/nio/ByteBuffer.html#hashCode(
>>)
>>
>>The equals method evaluate two empty buffers as equals.
>>
>>I don't think this is a bug.
>>
>>My 2 cents.
>>
>>Boon
>>-----BEGIN PGP SIGNATURE-----
>>Version: GnuPG v1.2.3 (GNU/Linux)
>>Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
>>
>>iD8DBQFANF/iNJFBtmCH2hIRAtTbAKCHvROEHkxHkkumZMwqaawDG0NRXgCfcpiO
>>J9WOcMrA/inmDpD0X2M6hJQ=
>>=BCf5
>>-----END PGP SIGNATURE-----
>>
>>---------------------------------------------------------------------
>>To unsubscribe, e-mail: dev-unsubscribe@avalon.apache.org
>>For additional commands, e-mail: dev-help@avalon.apache.org
>
>
>
>
>
--
|------------------------------------------------|
| Magic by Merlin |
| Production by Avalon |
| |
| http://avalon.apache.org/merlin |
| http://dpml.net/merlin/distributions/latest |
|------------------------------------------------|