-
Type: Improvement
-
Resolution: Won't Fix
-
Priority: Blocker - P1
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Environment:MongoDB 3.6 and 32-bit PHP runtime
A user in mongodb/mongo-php-driver#847 reported an exception calling Server::getInfo() on a 32-bit platform because the isMaster response included a 64-bit integer with an out-of-range value.
As a diagnostic function, it would probably be helpful if we avoided such exceptions and instead downgraded 64-bit integers to strings. Server::getInfo() makes no promises about providing the exact isMaster response and there isn't a concern with data loss due to round-tripping document data (the reason we throw such exceptions), so I think it would be permissible to perform "lossy" decoding here.
Assuming this requires a new BSON decoding mode/flag, we might also consider it for other instances where BSON decoding is invoked during a debug function.
- related to
-
PHPC-1211 Create Int64 class to wrap 64-bit integers on 32-bit platforms
- Closed
- links to