rust-v0.16.4
The v0.16.4 version of the deltalake
crate contains one notable and important fix: an upgrade to the dynamodb_lock crate to v0.6.1.
That release changes the expected of the format for leaseDuration
in DynamoDb from String
to Number
, which is a long-overlooked bug in the lock code which prevented stale locks from being reaped automatically using DynamoDb's TTL attribute
Pre-existing locks should be properly respected by this newer version of dynamodb_lock however the consequences of a lock not being respected can result in data corruption of Delta tables. It is therefore recommended that when upgrading:
- All writers using a given DynamoDb table for locking are stopped
- DynamoDb is inspected and stale locks are cleared.
- TTL is enabled on the table on the leaseDuration attribute (adjust if the application uses a different attribute name for lease duration).
- Writers are restarted.