Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve performance of ordered set implementation #273

Closed

Conversation

PaulFurtado
Copy link

Adds an index-tracking dict similar to other Python OrderedSet implementations, but keeps the same API.

My company has many SRV records with 400+ entries in them. The time-complexity of this set implementation was causing lookups of those records to take 100's of seconds on beefy servers. This brings it down to milliseconds.

This should also solve: #259

Adds an index-tracking dict similar to other Python OrderedSet implementations, but
keeps the same API.
@MartinBasti
Copy link
Contributor

Hello, please be careful with implementation using a dictionary in dnspython. It may happen that the same entries from DNS POW are evaluated as different in dictionary, because dnspython has mutable objects without properly implemented hash methods. Please check #268 for details.

@pspacek
Copy link
Collaborator

pspacek commented Jul 17, 2018

In general I support this work but please make sure that you accomodate comments from @MartinBasti .

Copy link
Collaborator

@pspacek pspacek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please see #273 (comment)

@rthalley rthalley added the 2.0 label Dec 1, 2018
@bwelling bwelling mentioned this pull request Mar 24, 2020
@rthalley
Copy link
Owner

rthalley commented Apr 3, 2020

rrsets were optimized in a slightly different way

@rthalley rthalley closed this Apr 3, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants