mongoose versioning - __v is 1 after saving

I'm writing an app using node, express and mongoose. When I use object.save to save (upsert) my object in mongodb, object.save returns the object after receiving the updates in mongo. This returned object has __v: 1. When I check the object in mongodb, its __v remains 0, which is what is expected.

To have my object with correct __v, I do a model.findById just after saving, which returns the object with correct __v, which is 0. Then I return this object to client (html page).

Has somebody experienced this issue? Why is this happening? Am I missing something here?

I'm using (unstable) mongoose version 4 (not in production, just development).