[libvirt] [PATCH] util: hash: Append to hash buckets when adding new entries
Daniel P. Berrangé
berrange at redhat.com
Tue Apr 16 14:43:07 UTC 2019
On Tue, Apr 16, 2019 at 04:09:54PM +0200, Peter Krempa wrote:
> In cases when the hash function for a name collides with other entry
> already in the hash we prepend to the bucket. This creates a 'stack
> effect' on the buckets if we then iterate through the hash. Normally
> this is not a problem, but in tests we want deterministic results.
>
> Since it does not matter where we add the entry and it's usually more
> probable that a different entry will be accessed next change it to
> append to the end of the bucket. Luckily we already iterate throught the
> bucket once thus we can easily find the last entry and just connect the
> new entry after it.
>
> Signed-off-by: Peter Krempa <pkrempa at redhat.com>
> ---
> src/util/virhash.c | 9 +++++++--
> 1 file changed, 7 insertions(+), 2 deletions(-)
Reviewed-by: Daniel P. Berrangé <berrange at redhat.com>
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
More information about the libvir-list
mailing list