Iterate user table in a sorted way, fix tests with latest glib#24
Open
SunilMohanAdapa wants to merge 1 commit intogobby:masterfrom
Open
Iterate user table in a sorted way, fix tests with latest glib#24SunilMohanAdapa wants to merge 1 commit intogobby:masterfrom
SunilMohanAdapa wants to merge 1 commit intogobby:masterfrom
Conversation
This is primarily to help test cases which assume that the adopted algorithm prioritizes the users in the exact reverse order they appear in the test cases (and get inserted into the session in reverse order). With older glib version, the five users being inserted happened to return the order expected by the tests. With latest glib, due to a minor tweak in hashing strategy, the insertion leads to unsorted list leading to failed tests. In addition, GHashTable makes no guarantees about the stability of items when iterating multiple times. Since the algorithm is sensitive to order of users, it is best to return users in an order that is consistent over multiple calls and stable over insert/remove operations. This patch sorts the keys during iteration of users in the user table. Closes: gobby#22. Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Contributor
Author
|
This is an alternative implementation to #25. Only one of the patches should be merged. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This is primarily to help test cases which assume that the adopted algorithm
prioritizes the users in the exact reverse order they appear in the test
cases (and get inserted into the session in reverse order). With older glib
version, the five users being inserted happened to return the order expected by
the tests. With latest glib, due to a minor tweak in hashing strategy, the
insertion leads to unsorted list leading to failed tests.
In addition, GHashTable makes no guarantees about the stability of items when
iterating multiple times. Since the algorithm is sensitive to order of users, it
is best to return users in an order that is consistent over multiple calls and
stable over insert/remove operations.
This patch sorts the keys during iteration of users in the user table.
Closes: #22.
Signed-off-by: Sunil Mohan Adapa sunil@medhas.org
Tested on Debian: