4.7.4
11/07/2025
- Allow licenses to be partially unlimited
- Improve transaction timeout tracking:
- Transactions have a timeout property that can be individually adjusted for known long transactions
- Transaction timeout (default) is configurable
- Transactions record the
startedFromresource name and method for better error reporting - Transactions will commit instead of aborting when they timeout, so processes can continue with minimal disruption
- Improve TypeScript type accuracy for resource interfaces and pub/sub bits
- Fix JSResource to wait for resources to be imported before considering the component loaded
- Improve JSResource error handling
- Ensure authorize is consistently disabled on appropriate REST methods
- Audit log improvements:
- When conflict/CRDT resolutions are performed, always save an audit log entry to ensure all blobs have a reference for eventual cleanup
- Ensure that audit entries are not referenced if not being recorded
- Ensure a new version when resolving a cache entry that replaces an existing one
- Improve logging:
- Operations API reply errors at info level
- Reduce operation request error logging level
- Add final cleanup log message for orphan cleanup completion
- Blob cleanup optimizations to reduce system load
- Fix camelCase conversion issues in variable references
- Do not connect to nodes with a database connection if the database is marked as sharded and it is not in the same shard
- Don't relocate records if the location is determined by id
- Fix Docker container restart behavior