• Keith Randall's avatar
    runtime: fix hashmap load factor computation · dbe3522c
    Keith Randall authored
    overLoadFactor wasn't really doing what it says it does.
    It was reporting overOrEqualToLoadFactor.  That's actually what we
    want when adding an entry to a map, but it isn't what we want when
    constructing a map in the first place.
    
    The impetus for this change is that if you make a map with a hint
    of exactly 8 (which happens, for example, with the unitMap in
    time/format.go), we allocate 2 buckets for it instead of 1.
    
    Instead, make overLoadFactor really report when it is > the max
    allowed load factor, not >=.  Adjust the callers who want to ensure
    that the map is no more than the max load factor after an insertion
    by adding a +1 to the current (pre-addition) size.
    
    Change-Id: Ie8d85344800a9a870036b637b1031ddd9e4b93f9
    Reviewed-on: https://go-review.googlesource.com/61053
    Run-TryBot: Keith Randall <khr@golang.org>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    Reviewed-by: 's avatarMartin Möhrmann <moehrmann@google.com>
    dbe3522c
Name
Last commit
Last update
.github Loading commit data...
api Loading commit data...
doc Loading commit data...
lib/time Loading commit data...
misc Loading commit data...
src Loading commit data...
test Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
AUTHORS Loading commit data...
CONTRIBUTING.md Loading commit data...
CONTRIBUTORS Loading commit data...
LICENSE Loading commit data...
PATENTS Loading commit data...
README.md Loading commit data...
favicon.ico Loading commit data...
robots.txt Loading commit data...