[SERVER-40019] Change UUIDCatalog::iterator operator== and _repositionIfNeeded Created: 07/Mar/19  Updated: 29/Oct/23  Resolved: 18/Mar/19

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 4.1.10

Type: Bug Priority: Major - P3
Reporter: Divjot Arora (Inactive) Assignee: Divjot Arora (Inactive)
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
Backwards Compatibility: Fully Compatible
Operating System: ALL
Sprint: Storage NYC 2019-03-11, Storage NYC 2019-03-25
Participants:
Linked BF Score: 10
Story Points: 2

 Description   

TheĀ _mapIter == _uuidCatalog->_orderedCollections.end() comparison in UUIDCatalog::iterator::operator== fails on Windows DEBUG builds if _mapIter is invalidated. Change the meaning on iterator equality for UUIDCatalog::iterator to prevent this.

The _repositionIfNeeded method also has a bug: it returns false if _mapIter is now at the end of the map. This should return true because the iterator has actually been repositioned.



 Comments   
Comment by Githook User [ 18/Mar/19 ]

Author:

{'email': 'divjot.arora@10gen.com', 'name': 'Divjot Arora', 'username': 'divjotarora'}

Message: SERVER-40019 Fix UUIDCatalog::iterator _repositionIfNeeded and operator==
Branch: master
https://github.com/mongodb/mongo/commit/39cd4943c968f63d42d0b81909110f7b5161645b

Generated at Thu Feb 08 04:53:48 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.