| Previous | Next |
| DB_S_NOTSINGLETON | DB_S_PROPERTIESCHANGED |
DB_S_LOCKUPGRADED
OLE DB provider upgraded the requested lock
DB_S_LOCKUPGRADED is HRESULT 265944 (0x00040ED8) from Microsoft OLE DB. The documented description is “Lock was upgraded from the value specified.” The high-order severity bit is clear, so this is a success result, but it carries more information than plain S_OK.
The provider granted a stronger lock than the consumer requested.
Where the result is encountered
- This result can appear in row locking in updateable rowsets; record the producing interface and method.
- This result can appear in providers mapping unsupported lock modes; record the producing interface and method.
- It can appear in transactions where write intent requires stronger protection; record the producing interface and method.
State to verify
The central question is whether the stronger lock’s blocking and concurrency consequences are acceptable for the transaction.
Diagnostic sequence
- Capture the raw HRESULT
0x00040ED8immediately after the returning method and record whether the caller usedSUCCEEDED,FAILED, equality testing, or exception translation. - Verify the method-specific state: the stronger lock’s blocking and concurrency consequences are acceptable for the transaction.
Evidence to preserve
- Preserve requested and actual lock modes.
- Preserve row or object identity.
- Preserve transaction isolation level.
- Preserve blocking sessions.
- Preserve duration until release.
Correct handling, retry, and recovery
Continue only if stronger locking is acceptable, minimize transaction duration, and expose the effective mode in diagnostics. Do not assume the original concurrency level.
Difference from nearby HRESULT values
DB_S_CANTRELEASE says a lock cannot be downgraded before transaction end; it reports that acquisition itself became stronger.
Practical validation scenario
A provider upgrades an intended shared lock to an update lock. The application completes the update quickly and records the effective lock so performance analysis explains later blocking.
Developer and administrator guidance
References
Looking for a different code? Search another status or error code.