Changed
- GraphQL
- Return error list while validating GraphQL schema. (#5576)
- Send CID for sentry events. (#5625)
- Alpha: Enable bloom filter caching (#5552)
- Add support for multiple uids in uid_in function (#5292)
- Tag sentry events with additional version details. (#5726)
- Sentry opt out banner. (#5727)
- Replace shutdownCh and wait groups to a y.Closer for shutting down Alpha. (#5560)
- Update badger to commit [e7b6e76f96e8]. (#5537)
- Update Badger (#5661, #6034)
- Fix assert in background compression and encryption. (dgraph-io/badger#1366)
- GC: Consider size of value while rewriting (dgraph-io/badger#1357)
- Restore: Account for value size as well (dgraph-io/badger#1358)
- Tests: Do not leave behind state goroutines (dgraph-io/badger#1349)
- Support disabling conflict detection (dgraph-io/badger#1344)
- Compaction: Expired keys and delete markers are never purged (dgraph-io/badger#1354)
- Fix build on golang tip (dgraph-io/badger#1355)
- StreamWriter: Close head writer (dgraph-io/badger#1347)
- Iterator: Always add key to txn.reads (dgraph-io/badger#1328)
- Add immudb to the project list (dgraph-io/badger#1341)
- DefaultOptions: Set KeepL0InMemory to false (dgraph-io/badger#1345)
- Enterprise features
- /health endpoint now shows Enterprise Features available. Fixes #5234. (#5293)
- GraphQL Changes for /health endpoint's Enterprise features info. Fixes #5234. (#5308)
- Use encryption in temp badger, fix compilation on 32-bit. (#4963)
- Only process restore request in the current alpha if it's the leader. (#5657)
- Vault: Support kv v1 and decode base64 key. (#5725)
- Breaking changes
Added
- GraphQL
- Add Graphql-TouchedUids header in HTTP response. (#5572)
- Introduce
@cascade
in GraphQL. Fixes #4789. (#5511) - Add authentication feature and http admin endpoints. Fixes #4758. (#5162)
- Support existing gqlschema nodes without xid. (#5457)
- Add custom logic feature. (#5004)
- Add extensions to query response. (#5157)
- Allow query of deleted nodes. (#5949)
- Allow more control over custom logic header names. (#5809)
- Adds Apollo tracing to GraphQL extensions. (#5855)
- Turn on subscriptions and adds directive to control subscription generation. (#5856)
- Add introspection headers to custom logic. (#5858)
- GraphQL health now reported by /probe/graphql. (#5875)
- Validate audience in authorization JWT and change
Dgraph.Authorization
format. (#5980)
- Upgrade tool for 20.07. (#5830)
- Async restore operations. (#5704)
- Add LogRequest variable to GraphQL config input. (#5197)
- Allow backup ID to be passed to restore endpoint. (#5208)
- Added support for application/graphQL to graphQL endpoints. (#5125)
- Add support for xidmap in bulkloader. Fixes #4917. (#5090)
- Add GraphQL admin endpoint to list backups. (#5307)
- Enterprise features
- GraphQL schema get/update, Dgraph schema query/alter and /login are now admin operations. (#5833)
- Backup can take S3 credentials from IAM. (#5387)
- Online restore. (#5095)
- Retry restore proposals. (#5765)
- Add support for encrypted backups in online restores. (#5226)
- Breaking changes
- [BREAKING] Vault Integration. (#5402)
Fixed
- GraphQL
- Validate JWT Claims and test JWT expiry. (#6050)
- Validate subscriptions in Operation function. (#5983)
- Nested auth queries no longer search through all possible records. (#5950)
- Apply auth rules on type having
@dgraph
directive. (#5863) - Custom Claim will be parsed as JSON if it is encoded as a string. (#5862)
- Dgraph directive with reverse edge should work smoothly with interfaces. Fixed #5744. (#5982)
- Fix case where Dgraph type was not generated for GraphQL interface. Fixes #5311. (#5828)
- Fix panic error when there is no
@withSubscription
directive on any type. (#5921) - Fix OOM issue in graphql mutation rewriting. (#5854)
- Preserve GraphQL schema after drop_data. (#5840)
- Maintain Master's backward compatibility for
Dgraph.Authorization
in schema. (#6014) - Remote schema introspection for single remote endpoint. (#5824)
- Requesting only _-typename now returns results. (#5823)
- Typename for types should be filled in query for schema introspection queries. Fixes #5792. (#5891)
- Update GraphQL schema only on Group-1 leader. (#5829)
- Add more validations for coercion of object/scalar and vice versa. (#5534)
- Apply type filter for get query at root level. (#5497)
- Fix mutation on predicate with special characters having dgraph directive. Fixes #5296. (#5526)
- Return better error message if a type only contains ID field. (#5531)
- Coerce value for scalar types correctly. (#5487)
- Minor delete mutation msg fix. (#5316)
- Report all errors during schema update. (#5425)
- Do graphql query/mutation validation in the mock server. (#5362)
- Remove custom directive from internal schema. (#5354)
- Recover from panic within goroutines used for resolving custom fields. (#5329)
- Start collecting and returning errors from remote remote GraphQL endpoints. (#5328)
- Fix response for partial admin queries. (#5317)
- Avoid assigning duplicate RAFT IDs to new nodes. Fixes #5436. (#5571)
- Alpha: Gracefully shutdown ludicrous mode. (#5561)
- Use rampMeter for Executor. (#5503)
- Dont set n.ops map entries to nil. Instead just delete them. (#5551)
- Add check on rebalance interval. (#5544)
- Queries or mutations shouldn't be part of generated Dgraph schema. (#5524)
- Sent restore proposals to all groups asyncronouosly. (#5467)
- Fix long lines in export.go. (#5498)
- Fix warnings about unkeyed literals. (#5492)
- Remove redundant conversions between string and []byte. (#5478)
- Propogate request context while handling queries. (#5418)
- K-Shortest path query fix. Fixes #5426. (#5410)
- Worker: Return nil on error. (#5414)
- Fix warning about issues with the cancel function. (#5397).
- Replace TxnWriter with WriteBatch. (#5007)
- Add a check to throw an error is a nil pointer is passed to unmarshalOrCopy. (#5334)
- Remove noisy logs in tablet move. (#5333)
- Support bulk loader use-case to import unencrypted export and encrypt the result. (#5209)
- Handle Dgraph shutdown gracefully. Fixes #3873. (#5137, #5138)
- If we don't have any schema updates, avoid running the indexing sequence. (#5126)
- Pass read timestamp to getNew. (#5085)
- Indicate dev environment in Sentry events. (#5051)
- Replaced s2 contains point methods with go-geom. (#5023
- Change tablet size calculation to not depend on the right key. Fixes #5408. (#5684)
- Fix alpha start in ludicrous mode. Fixes #5601. (#5912)
- Handle schema updates correctly in ludicrous mode. (#5970)
- Fix Panic because of nil map in groups.go. (#6008)
- update reverse index when updating single UID predicates. Fixes #5732. (#6005), (#6015)
- Fix expand(_all_) queries in ACL. Fixes #5687. (#5993)
- Fix val queries when ACL is enabled. Fixes #5687. (#5995)
- Return error if server is not ready. (#6020)
- Reduce memory consumption of the map. (#5957)
- Cancel the context when opening connection to leader for streaming snapshot. (#6045)
- Breaking changes
- Enterprise:
- Backup: Change groupId from int to uint32. (#5605)
- Backup: Use a sync.Pool to allocate KVs during backup. (#5579)
- Backup: Fix segmentation fault when calling the /admin/backup edpoint. (#6043)
- Restore: Make backupId optional in restore GraphQL interface. (#5685)
- Restore: Move tablets to right group when restoring a backup. (#5682)
- Restore: Only processes backups for the alpha's group. (#5588)
- vault_format support for online restore and gql (#5758)