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

Improved ObjectId parsing and ToString() performance #257

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

pieceofsummer
Copy link

While writing an ObjectId-like class for another project (where I needed a time-based identifier, but didn't want to bring dependency on a whole MongoDB.Bson package just for ObjectId), I was curious about performance of my implementation compared to the reference one.

My test was like serializing a million of identifiers (as strings), and then parsing them back. Here are my results:

ObjectId.ToString() ObjectId.Parse()
MongoDB.Bson (v2.3.0) 3475ms 897ms
My (humble) implementation 87ms 81ms

So this probably looks like a valid reason to make a pull request and improve things a little :)

I'm not sure if it affects other cases where ObjectId is serialized, like performance of database responses' deserialization. But shouldn't hurt at least.

@damieng damieng closed this Feb 7, 2024
@damieng damieng reopened this Feb 7, 2024
@damieng damieng requested a review from a team as a code owner February 7, 2024 13:38
@damieng damieng requested review from adelinowona and removed request for a team and adelinowona February 7, 2024 13:38
@damieng
Copy link
Member

damieng commented Feb 7, 2024

Please ignore the previous comments/closure, was meant for a different PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants