Dgraph v1.0.12
Pre-release
Pre-release
Note: This release requires you to export and re-import data prior to upgrading or rolling back. The underlying data format has been changed.
Added
- Support gzip compression for gRPC and HTTP requests. (#2843)
- Restore is available from a full binary backup. This is an enterprise feature licensed under the Dgraph Community License.
- Strict schema mode via
--mutations
flag. By default--mutations=allow
is set to allow all mutations;--mutations=disallow
disables all mutations;--mutations=strict
allows mutations only for predicates which are defined in the schema. Fixes #2277. - Add
dgraph increment
tool for debugging and testing. The increment tool queries for the specified predicate (default:counter.val
), increments its integer counter value, and mutates the result back to Dgraph. Useful for testing end-to-end txns to verify cluster health. (#2955) - Support best-effort queries. This would relax the requirement of linearizible reads. For best-effort queries, Alpha would request timestamps from memory instead of making an outbound request to Zero. (#3071)
Changed
- Use the new Stream API from Badger instead of Dgraph's Stream framework. (#2852)
- Discard earlier versions of posting lists. (#2859)
- Make HTTP JSON response encoding more efficient by operating on a bytes buffer
directly. (ae1d9f3) - Optimize and refactor facet filtering. (#2829)
- Show badger.Item meta information in
dgraph debug
output. - Add new option to
dgraph debug
tool to get a histogram of key and value sizes. (#2844) - Add new option to
dgraph debug
tool to get info from a particular read timestamp. - Refactor rebuild index logic. (#2851, #2866)
- For gRPC clients, schema queries are returned in the Json field. The Schema proto field is deprecated.
- Simplify design and make tablet moves robust. (#2800)
- Switch all node IDs to hex in logs (e.g., ID 0xa instead of ID 10), so they are consistent with Raft logs.
- Refactor reindexing code to only reindex specific tokenizers. (#2948)
- Introduce group checksums. (#2964, #3085)
- Return aborted error if commit ts is 0.
- Reduce number of "ClusterInfoOnly" requests to Zero by making VerifyUid wait for membership information. (#2974)
- Simplify Raft WAL storage caching. (#3102)
- Build release binary with Go version 1.11.5.
Removed
- Remove LRU cache from Alpha for big wins in query latency reduction (5-10x) and mutation throughput (live loading 1.7x faster). Setting
--lru_mb
is still required but will not have any effect since the cache is removed. The flag will be used later version when LRU cache is introduced within Badger and configurable from Dgraph. - Remove
--nomutations
flag. Its functionality has moved into strict schema mode with the--mutations
flag (see Added section).
Fixed
- Use json.Marshal for strings and blobs. Fixes #2662.
- Let eq use string "uid" as value. Fixes #2827.
- Skip empty posting lists in
has
function. - Fix Rollup to pick max update commit ts.
- Fix a race condition when processing concurrent queries. Fixes #2849.
- Show an error when running multiple mutation blocks. Fixes #2815.
- Bring in optimizations and bug fixes over from Badger.
- Bulk Loader for multi-group (sharded data) clusters writes out per-group
schema with only the predicates owned by the group instead of all predicates
in the cluster. This fixes an issue where queries made to one group may not
return data served by other groups. (#3065) - Remove the assert failure in raftwal/storage.go.