You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@avalon.apache.org by le...@apache.org on 2002/02/06 09:37:47 UTC

cvs commit: jakarta-avalon-excalibur/src/scratchpad/org/apache/avalon/excalibur/datasource/cluster DefaultHashedDataSourceCluster.java

leif        02/02/06 00:37:47

  Modified:    src/scratchpad/org/apache/avalon/excalibur/datasource/cluster
                        DefaultHashedDataSourceCluster.java
  Log:
  Fix a problem where negative hashCodes were not working correctly
  
  Revision  Changes    Path
  1.2       +5 -2      jakarta-avalon-excalibur/src/scratchpad/org/apache/avalon/excalibur/datasource/cluster/DefaultHashedDataSourceCluster.java
  
  Index: DefaultHashedDataSourceCluster.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-excalibur/src/scratchpad/org/apache/avalon/excalibur/datasource/cluster/DefaultHashedDataSourceCluster.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- DefaultHashedDataSourceCluster.java	4 Feb 2002 03:20:54 -0000	1.1
  +++ DefaultHashedDataSourceCluster.java	6 Feb 2002 08:37:47 -0000	1.2
  @@ -103,7 +103,7 @@
    * </pre>
    *
    * @author <a href="mailto:leif@silveregg.co.jp">Leif Mortenson</a>
  - * @version CVS $Revision: 1.1 $ $Date: 2002/02/04 03:20:54 $
  + * @version CVS $Revision: 1.2 $ $Date: 2002/02/06 08:37:47 $
    * @since 4.1
    */
   public class DefaultHashedDataSourceCluster
  @@ -200,6 +200,9 @@
        *        DataSources will be provide a Connection.
        */
       public int getIndexForHashCode( int hashCode ) {
  -        return hashCode % getClusterSize();
  +        // Hash code may be negative, Make them all positive by using the unsigned int value.
  +        long lHashCode = ((long)hashCode) & 0xffffffffL;
  +        
  +        return (int)(lHashCode % getClusterSize());
       }
   }
  
  
  

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>