Releases: hypermodeinc/dgraph
Releases · hypermodeinc/dgraph
Dgraph v22.0.0-RC1.20221003
Note
v22.0.0
release is based ofv21.03.2
release.
https://discuss.dgraph.io/t/dgraph-v22-0-0-rc1-20221003-release-candidate/17839
Warning
We are discontinuing support forv21.12.0
.
This will be a breaking change for anyone moving fromv21.12.0
tov.22.0.0
.
Fixed
- GraphQL
- EDgraph
- fix(query): Prevent multiple entries for same predicate in mutations (#8332)
- Posting
- fix(rollups): Fix splits in roll-up (#8297)
- Bug
- fix(bug): use copy of loop variable in Go routines (#8163)
- Security
-
CVE Fixes (387 total)
CVE Fixes (387 total)
- CVE-2019-0210
- CVE-2019-0205
- CVE-2021-43565
- CVE-2022-27664
- CVE-2021-38561
- CVE-2021-44716
- CVE-2021-33194
- CVE-2022-27191
- CVE-2020-29652
- CVE-2018-16886
- CVE-2022-21698
- CVE-2022-37434
- CVE-2020-16156
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2022-37434
- CVE-2020-16156
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2022-37434
- CVE-2020-16156
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2022-37434
- CVE-2020-16156
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2022-37434
- CVE-2020-16156
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2022-37434
- CVE-2020-16156
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2022-37434
- CVE-2020-16156
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2022-37434
- CVE-2020-16156
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2022-37434
- CVE-2020-16156
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2022-37434
- CVE-2020-16156
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2022-37434
- CVE-2020-16156
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2021-37750
- CVE-2021-36222
- CVE-2020-35525
- CVE-2020-35527
- CVE-2021-20223
- CVE-2020-9794
- CVE-2022-29526
- CVE-2021-31525
- CVE-2019-11254
- CVE-2022-3219
- CVE-2019-16167
- CVE-2013-4235
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2013-4235
- CVE-2021-3671
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2017-11164
- CVE-2022-1587
- CVE-2022-1586
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2021-43618
- CVE-2016-20013
- CVE-2021-3671
- CVE-2016-2781
- CVE-2019-16167
- CVE-2013-4235
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2013-4235
- CVE-2021-3671
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2017-11164
- CVE-2022-1587
- CVE-2022-1586
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2021-43618
- CVE-2016-20013
- CVE-2021-3671
- CVE-2022-3219
- CVE-2016-2781
- CVE-2022-3219
- CVE-2022-1587
- CVE-2022-1586
- CVE-2019-16167
- CVE-2013-4235
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2013-4235
- CVE-2021-3671
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2017-11164
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2021-43618
- CVE-2016-20013
- CVE-2021-3671
- CVE-2016-2781
- CVE-2019-16167
- CVE-2013-4235
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2013-4235
- CVE-2021-3671
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2017-11164
- CVE-2022-1587
- CVE-2022-1586
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2021-43618
- CVE-2016-20013
- CVE-2021-3671
- CVE-2022-3219
- CVE-2016-2781
- CVE-2019-16167
- CVE-2013-4235
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2013-4235
- CVE-2021-3671
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2017-11164
- CVE-2022-1587
- CVE-2022-1586
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2021-43618
- CVE-2016-20013
- CVE-2021-3671
- CVE-2016-2781
- CVE-2019-16167
- CVE-2013-4235
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2013-4235
- CVE-2021-3671
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2017-11164
- CVE-2022-1587
- CVE-2022-1586
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2021-43618
- CVE-2016-20013
- CVE-2021-3671
- CVE-2016-2781
- CVE-2019-16167
- CVE-2013-4235
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2013-4235
- CVE-2021-3671
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2017-11164
- CVE-2022-1587
- CVE-2022-1586
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2021-43618
- CVE-2016-20013
- CVE-2021-3671
- CVE-2016-2781
- CVE-2019-16167
- CVE-2013-4235
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2013-4235
- CVE-2021-3671
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2017-11164
- CVE-2022-1587
- CVE-2022-1586
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2021-43618
- CVE-2016-20013
- CVE-2021-3671
- CVE-2016-2781
- CVE-2019-16167
- CVE-2013-4235
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2013-4235
- CVE-2021-3671
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2017-11164
- CVE-2022-1587
- CVE-2022-1586
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2021-43618
- CVE-2016-20013
- CVE-2021-3671
- CVE-2016-2781
- CVE-2019-16167
- CVE-2013-4235
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2013-4235
- CVE-2021-3671
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2017-11164
- CVE-2022-1587
- CVE-2022-1586
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2021-43618
- CVE-2016-20013
- CVE-2021-3671
- CVE-2016-2781
- CVE-2019-16167
- CVE-2013-4235
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2013-4235
- CVE-2021-3671
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2017-11164
- CVE-2022-1587
- CVE-2022-1586
- CVE-2022-29458
- CVE-2021-39537
- CVE-2022-29458
- CVE-2021-39537
- CVE-2021-3671
- CVE-2021-43618
- CVE-2016-20013
- CVE-2021-3671
- CVE-2016-2781
- CVE-2020-9991
- CVE-2020-9849
-
GHSA Fixes (5 total)
GHSA Fixes (5 total)
-
fix(sec): fixing HIGH CVEs (#8289)
-
fix(sec): CVE High Vulnerability (#8277)
-
fix(sec): Fixing CVE-2021-31525 (#8274)
-
fix(sec): CVE-2019-11254 (#8270)
-
Changed
- CI Test Infrastructure
- Configured to run with Github Actions
- Stability Improvements to test harness
- Enabled [Unit/Integration Tests](http...
Dgraph v21.12.0 - Zion (DISCONTINUED)
Changed
- [BREAKING] feat(sroar): Bring sroar to Dgraph (#7840)
- [BREAKING] Return error for illegal math operations. (#7631)
- [BREAKING] feat: bring dgraph-lambda to dgraph, alpha launches lambda server (#7973)
- [BREAKING] fix json marshal unmarshal for namespace > 127 (#7810)
- [BREAKING] fix(usability): make force-namespace flag compulsory in live loader for galaxy user (#7731)
- [BREAKING] perf(Transactions): Run transactions concurrently (#7694)
- [BREAKING] feat(flags): expand badger to accept all valid options (#7677)
- [BREAKING] fix(commit): make txn context more robust (#7659)
- [BREAKING] Opt(Restore): Optimize Restore's new map-reduce based design (#7666)
- [BREAKING] fix(metrics): Rename Badger metrics. (#7507)
- [BREAKING] Make backup-restore an open source feature (#8067)
Added
-
GraphQL
- Feat(GRAPHQL): adds
@default
directive for setting default field values at create and update (#8017) - Feat(GRAPHQL): Support auth with custom DQL (#7775)
- Feat(GRAPHQL): This PR allows updatable and nullable
@id
fields. (#7736) - Feat(GRAPHQL): Disallow DQL schema changes for predicates used in GraphQL schema (DGRAPH-3245) (#7742)
- Feat(GRAPHQL): This PR allows
@id
field in interface to be unique across all the implementing types. (#7710) - Feat(GRAPHQL): Add language tag support in GraphQL (#7663)
- Feat(GRAPHQL): Zero HTTP endpoints are now available at GraphQL admin (GRAPHQL-1118) (#6649)
- Feat(GRAPHQL): Webhooks on add/update/delete mutations (GRAPHQL-1045) (#7494)
- Feat(GRAPHQL): Allow Multipe JWKUrls for auth. (#7528)
- Feat(GRAPHQL): Add support for passing OAuth Bearer token as authorization JWT (#7490)
- Feat(GRAPHQL): adds
-
Core Dgraph
- Feat(metrics): Add Badger metrics. (#8034)
- Feat(magicNumber): Introduce magic number (#8032)
- Feat(lambda): allow access to access jwt in lambda (#8023)
- Feat(rdf-response): Support RDF response via http query request (#8004)
- Feat(sroar): Use rank() API from sroar and some cleanup (#8002)
- Feat(lambda): store lambda scripts within the dgraph (#7955)
- Feat(query): handle extend keyword for Queries and Mutations (#7916)
- Feat(Backup): Add native google cloud storage backup support (#7829)
- Feat(Backup): Add native support for backup to Azure. (#7843)
- Feat(cloud): add shared-instance flag in limit superflag in alpha (#7770)
- Feat(Dgraph): Add task queue implementation (#7716)
- Feat(DQL):
@groupby
on scalar fields and count duplicate (#7746) - Feat(Query): Add random keyword in DQL (#7693)
- Feat(tool): Neo4j CSV to RDF Converter (#7545)
- Feat(query): Add mechanism to have a limit on number of pending queries (#7603)
- Feat(flag): remove unused badger.max-retries option from bulk command (#7591)
- Feat(sentry): clusterID flag added for alpha sentry reports (gql-services) (#7580)
- Feat(cmd/debuginfo) add new metrics to be collected (#7439)
- Feat(flags): use Vault for ACL secrets (#7492)
- Feat(Apollo): Add support for
@provides
and@requires
directive. (#7503) - Feat(restore): Introduce incremental restore (#7942) (#7971)
- Feat(schema): do schema versioning and make backup non-blocking for indexing (#7852)
- Feat(zero bulk): adding bulk call for alpha to inform zero about the tablets (#8100)
- Feat(cdc): Add superflag to enable TLS without CA or certs. (#8097)
-
Enterprise Features
- Feat(Multi-tenancy): Add namespaces field to state (#7808)
- Feat(multi-tenancy): make drop data namespace aware (#7789) (#7795)
- Feat(cdc): Add support for SCRAM SASL mechanism (#7765)
- Feat(acl): allow access to all the predicates using wildcard (#7991)
- Feat(cdc): Add superflag to enable TLS without CA or certs. (#7946)
Fixed
-
GraphQL
- Fix(GRAPHQL): add validation of null values with correct order of graphql rule validation (#8007) (#8008)
- Fix(GRAPHQL): fix type assertion failure in graphql if resolver is not defined (#8003)
- Fix(GRAPHQL): fixing graphql schema update when the data is restored (#7970)
- Fix(GRAPHQL): Nested Auth Rules not working properly. (#7915)
- Fix(GRAPHQL): optimize eq filter queries (#7895)
- Fix(GRAPHQL): Fix duplicate XID error in case of interface XIDs (#7776)
- Fix(GRAPHQL): Pass on HTTP request headers for subscriptions (#7806)
- Fix(GRAPHQL): Make mutation rewriting tests more robust (#7768)
- Fix(GRAPHQL): Fix error message of lambdaOnMutate directive (#7751)
- Fix(GRAPHQL): fix auth query rewriting with ID filter (#7740)
- Fix(GRAPHQL): Add filter in DQL query in case of reverse predicate (#7728)
- Fix(GRAPHQL): Fix GraphQL encoding in case of empty list (#7726)
- Fix(GRAPHQL): fix
@cascade
with Pagination for@auth
queries. (#7695) - Fix(GRAPHQL): Fix Execution Trace for Add and Update Mutations (#7656)
- Fix(GRAPHQL): Log query along with the panic (#7638)
- Fix(GRAPHQL): Add error handling for unrecognized args to generate directive. (#7612)
- Fix(GRAPHQL): Fix panic when no schema exists for a new namespace (#7630)
- Fix(GRAPHQL): fixed output coercing for admin fields. (#7617)
- Fix(GRAPHQL): fix lambda querying a lambda field in case of no data. (#7610)
- Fix(GRAPHQL): Add extra checks for deleting UpdateTypeInput (#7595)
- Fix(GRAPHQL): remove support of
@id
directive on Float (#7583) - Fix(GRAPHQL): Fix mutation with Int Xid variables. (#7565)
- Fix(GRAPHQL): Fix custom(dql: ...) with __typename (GRAPHQL-1098) (#7569)
- Fix(GRAPHQL): Change variable name generation for interface auth rules (#7559)
- Fix(GRAPHQL): Apollo federation now works with lambda (GRAPHQL-1084) (#7558)
- Fix(GRAPHQL): fix empty remove in update mutation patch, that remove all the data for nodes in filter. (#7563)
- Fix(GRAPHQL): fix order of entities query result (#7542)
- Fix(GRAPHQL): Change variable name generation from Type to Type_ (#7556)
- Fix(GRAPHQL): fix duplicate xid error for multiple xid fields. (#7546)
- Fix(GRAPHQL): Added support for exact index on field having
@id
directive. (#7534) (#7551) - Fix(GRAPHQL): fix query rewriting for multiple order on nested field. (#7523)
- Fix(GRAPHQL) fix empty
type Query
with single extended type definition in the schema. (#7517)
-
Core Dgraph
- Fix(sort): Only filter out nodes with positive offsets. (#8077)
- Fix(fragment): merge the nested fragments fields (#8075)
- Fix(lambda): upgrade lambda dependencies to fix vulnerabilities (#8074)
- Fix(magic): fix the magic version in bulk loader etc (#8070)
- Fix(split): enable split of posting list with single plist (#8062)
- Fix(restore): Do not retry restore proposal (#8058)
- Fix(txn): Fix data races in transaction code (#8060)
- Fix(shutdown): wait for pending queries to process on alpha shutdown (#8057)
- Fix(restore-test): Make offline restore use separate map directory for each group (#8047)
- Fix(lambda-logs): extract namespace from body.namespace (#8043)
- Fix(lambda): make lambda active only after successful start (#8036)
- Fix(probe): do not contend for lock in lazy load (#8037)
- Fix(lambda): shutdown node processes when alpha gets killed (#8027)
- Fix(snapshot): Fix snapshot calculation after restore (#8024)
- Fix(badger): Upgrade badger to fix deadlock (#8025)
- Fix(bulk): quote the schema correctly in bulk loader (#8019)
- Fix(sbs): handle response error gracefully (#8018)
- Fix(admin): make config changes to pass through gog middlewares (#8014)
- Fix(lambda): fix race condition in lambda server spin up (#8013)
- Fix(proposals): Incremental proposal key for zero proposals (#8005)
- Fix(lambda): monitor lambda server, fix performance issue, remove lambda logs from extensions (#8006)
- Fix(live): quote the xid when doing upsert (#7983)
- Fix(sroar): Bring latest sroar to master (#7977)
- Fix(query): Do not execute filters if there are no source uids (#7962) (#7969)
- Fix(snapshot): update last snapshot time across members (#7968)
- Fix(pool): use write lock when getting health info (#7963)
- Fix(JoinCluster): Avoid retrying JoinCluster indefinitely (#7961)
- Fix(rollups): Write rolled-up keys at ts+1 (#7957) (#7959)
- Fix(conn): JoinCluster loop should use latest conn (#7950)
- Fix(restore): Set kv version to restoreTs for rolled up keys and schema keys (#7930) (#7935)
- Fix(backup): Fix full backup request (#7932)
- Fix(cmd/debug): Print banned namespaces correctly. (#7929)
- Reconnect via a redial in case of disconnection. (#7918)
- Fix(metrics): Expose dgraph_num_backups_failed_total metric view. (#7900)
- Fix(sroar): Fix TestAuthWithCustomDQL failure because of roaring bitmaps (#7902)
- Fix(DQL): revert changes related to cascade pagination with sort (#7885)
- Fix(restore): append galaxy namespace to type name (#7880)
- Fix(Backup): use validReadTs from manifest for backward compatibility (#7601) (#7863)
- fix the predicate move (#7862)
- Fix(restore): consider the banned namespaces while bumping (#7839)
- Fix(restore): update the schema and type from 2103 (#7838)
- Fix(updatemanifest): update the version of manifest after update (#7828)
- Fix(backup): handle manifest version logic, update manifest version to 2105 (#7825)
- Fix(schema-update): Start opIndexing only when index creation is required. (#7845)
- Fix(admin): remove exportedFiles field (#7835)
- Fix(restore): reset the kv.StreamId before sending to stream writer (#7833)
- Fix(auth): preserve the status code while returning error (#7832)
- bug fix to permit audit streaming to stdout writer(#7803)
- Fix(lease): don't do rate limiting when not limit is not specified (#7787) (#7801)
- Fix(restore): Bump uid and namespace after restore (#7790)
- Fix(txn): ensure that txn hash is set (#7782)
- Fix(export-backup): Fix double free in export backup (#7780)...
Dgraph v21.09.0-rc2
Dgraph v21.03.2 (Resilient Rocket-2)
Fixed
-
GraphQL
- Handle extend keyword for Queries and Mutations (#7923)
-
Core Dgraph
- fix(Raft): Detect network partition when streaming (#7908)
- fix(Raft): Reconnect via a redial in case of disconnection. (#7921)
- fix(conn): JoinCluster loop should use latest conn (#7952)
- fix(pool): use write lock when getting health info (#7967)
- fix(acl): The Acl cache should be updated on restart and restore. (#7964)
- fix(acl): filter out the results based on type (#7981)
- fix(backup): Fix full backup request (#7934)
- fix(live): quote the xid when doing upsert (#7999)
- fix(export): Write temporary files for export to the t directory. (#7998)
Changed
- protobuf: upgrade golang/protobuf library v1.4.1 -> v1.5.2 (#7949)
- chore(raft): Log packets message less frequently. (#7913)
Added
Dgraph v21.03.1 (Resilient Rocket-1)
Fixed
-
GraphQL
- fix(GraphQL): fix @cascade with Pagination for @auth queries (#7695)
- Fix(GraphQL): Fix GraphQL encoding in case of empty list (#7726) (#7730)
- Fix(GraphQL): Add filter in DQL query in case of reverse predicate (#7728) (#7733)
- Fix(graphql): Fix error message of lambdaOnMutate directive (#7751) (#7754)
-
Core Dgraph
- fix(vault): Hide ACL flags when not required (#7701)
- fix(Chunker): don't delete node with empty facet in mutation (#7737) (#7745)
- fix(bulk): throw the error instead of crashing (#7722) (#7749)
- fix(raftwal): take snapshot after restore (#7719) (#7750)
- fix(bulk): upsert guardian/groot for all existing namespaces (#7759) (#7769)
- fix(txn): ensure that txn hash is set (#7782) (#7784)
- bug fix to permit audit streaming to stdout writer(#7803) (#7804)
- fix(drop): attach galaxy namespace to drop attr done on 20.11 backup (#7827)
- fix: Prevent proposal from being dropped accidentally (#7741) (#7811)
- fix(schema-update): Start opIndexing only when index creation is required. (#7845) (#7847)
- fix(export): Fix facet export of reference type postings to JSON format (#7744) (#7756)
- fix(lease): don't do rate limiting when not limit is not specified (#7787)
- fix(lease): prevent ID lease overflow (#7802)
- fix(auth): preserve the status code while returning error (#7832) (#7834)
- fix(ee): GetKeys should return an error (#7713) (#7797)
- fix(admin): remove exportedFiles field (#7835) (#7836)
- fix(restore): append galaxy namespace to type name (#7881)
- fix(DQL): revert changes related to cascade pagination with sort (#7885) (#7888)
- fix(metrics): Expose dgraph_num_backups_failed_total metric view. (#7900) (#7904)
Changed
- opt(GraphQL): filter existence queries on GraphQL side instead of using @filter(type) (#7757) (#7760)
Added
Dgraph v21.03.0 - Resilient Rocket
Changed
- [BREAKING] Feat(flags): expand badger to accept all valid options (#7677)
- [BREAKING] Feat(Dgraph): Read-Only replicas (#7272)
- [BREAKING] Consolidate multiple flags into Superflags (#7436) (#7337) (#7560) (#7652) (#7675)
- [BREAKING] Feat(zero): Make zero lease out namespace IDs (#7341)
- [BREAKING] Fix(commit): make txn context more robust (#7659)
- [BREAKING] Fix(Query): Return error for illegal math operations. (#7631)
- [BREAKING] Rename Badger metrics. (#7507)
- [BREAKING] Fix(Backups): new badger Superflag, NumGoroutines option solves OOM crashes (#7387)
- [BREAKING] Remove restore tracker as its not necessary (#7148)
- [BREAKING] Chore(GraphQL): Remove
dgraph.graphql.p_sha256hash
predicate and merge it intodgraph.graphql.p_query
(#7451) - [BREAKING] Introducing Multi-Tenancy in dgraph (#7293) (#7400) (#7397) (#7399) (#7377) (#7414) (#7418)
Added
-
GraphQL
- Feat(GraphQL): Zero HTTP endpoints are now available at GraphQL admin (GraphQL-1118) (#6649) (#7670)
- Feat(GraphQL): Webhooks on add/update/delete mutations (GraphQL-1045) (#7494) (#7616)
- Feat(GraphQL): Allow Multiple JWKUrls for auth. (#7528) (#7581)
- Feat(GraphQL): allow string --> Int64 hardcoded coercing (#7584)
- Feat(Apollo): Add support for
@provides
and@requires
directive. (#7503) - Feat(GraphQL): Handle upsert with multiple XIDs in case one of the XIDs does not exist (#7472)
- Feat(GraphQL): Delete redundant reference to inverse object (#7469)
- Feat(GraphQL): upgarde GraphQL-transport-ws module (#7441)
- Feat(GraphQL): This PR allow multiple
@id
fields in a type. (#7235) - Feat(GraphQL): Add support for GraphQL Upsert Mutations (#7433)
- Feat(GraphQL): This PR adds subscriptions to custom DQL. (#7385)
- Feat(GraphQL): Make XID node referencing invariant of order in which XIDs are referenced in Mutation Rewriting (#7448)
- Feat(GraphQL): Dgraph.Authorization should with irrespective of number of spaces after # (#7410)
- Feat(GraphQL): adding auth token support for regexp, in and arrays (#7039)
- Feat(GraphQL): Extend Support of IN filter to all the scalar data types (#7340)
- Feat(GraphQL): Add
@include
and@skip
to the Directives (#7314) - Feat(GraphQL): add support for has filter with list of arguments. (#7406)
- Feat(GraphQL): Add support for has filter on list of fields. (#7363)
- Feat(GraphQL): Allow standard claims into auth variables (#7381)
- Perf(GraphQL): Generate GraphQL query response by optimized JSON encoding (GraphQL-730) (#7371)
- Feat(GraphQL): Extend Support For Apollo Federation (#7275)
- Feat(GraphQL): Support using custom DQL with
@groupby
(#7476) - Feat(GraphQL): Add support for passing OAuth Bearer token as authorization JWT (#7490)
-
Core Dgraph
- Feat(query): Add mechanism to have a limit on number of pending queries (#7603)
- Perf(bulk): Reuse allocator (#7360)
- Perf(compression): Use gzip with BestSpeed in export and backup (#7643) (#7683)
- Feat(flags): Add query timeout as a limit config (#7599)
- Opt(reindex): do not try building indices when inserting a new predicate (#7109)
- Perf(txn): de-duplicate the context keys and predicates (#7478)
- Feat(flags): use Vault for ACL secrets (#7492)
- Feat(bulk): Add /jemalloc HTTP endpoint. (#7165)
- Feat(metrics): Add Dgraph txn metrics (commits and discards). (#7339)
- Feat(Bulk Loader + Live Loader): Supporting Loading files via s3/minio (#7359)
- Feat(metrics): Add Raft leadership metrics. (#7338)
- Use Badger's value log threshold of 1MB (#7415)
- Feat(Monitoring): Adding Monitoring for Disk Space and Number of Backups (#7404)
- Perf: simple simdjson solution with 30% speed increase (#7316)
-
Enterprise Features
- Perf(Backup): Improve backup Performance (#7601)
- Make backup API asynchronous
- Perf(backups): Reduce latency of list backups (#7435)
- Feat(acl): allow setting a password at the time of creation of namespace (#7446)
- Feat(enterprise): audit logs for alpha and zero (#7295)
- Feat(enterpise): Change data capture (CDC) integration with kafka (#7395)
- Perf(dgraph) - Use badger sinceTs in backups (#7392)
- Perf(backup): Reorganize the output of lsbackup command (#7354)
Fixed
-
GraphQL
- Fix(GraphQL): Fix Execution Trace for Add and Update Mutations (#7656)
- Fix(GraphQL): Add error handling for unrecognized args to generate directive. (#7612)
- Fix(GraphQL): Fix panic when no schema exists for a new namespace (#7630)
- Fix(GraphQL): Fixed output coercing for admin fields. (#7617)
- Fix(GraphQL): Fix lambda querying a lambda field in case of no data. (#7610)
- Fix(GraphQL): Undo the breaking change and tag it as deprecated. (#7602)
- Fix(GraphQL): Add extra checks for deleting UpdateTypeInput (#7595)
- Fix(persistent): make persistent query namespace aware (#7570)
- Fix(GraphQL): remove support of
@id
directive on Float (#7583) - Fix(GraphQL): Fix mutation with Int Xid variables. (#7565) (#7588)
- Fix(GraphQL): Fix error message when dgraph and GraphQL schema differ.
- Fix(GraphQL): Fix custom(dql: ...) with
__typename
(GraphQL-1098) (#7569) - Fix(GraphQL): Change variable name generation for interface auth rules (#7559)
- Fix(GraphQL): Apollo federation now works with lambda (GraphQL-1084) (#7558)
- Fix(GraphQL): Fix empty remove in update mutation patch, that remove all the data for nodes in filter. (#7563)
- Fix(GraphQL): Fix order of entities query result (#7542)
- Fix(GraphQL): Change variable name generation from
Type<Num>
toType_<Num>
(#7556) - Fix(GraphQL): Fix duplicate xid error for multiple xid fields. (#7546)
- Fix(GraphQL): Fix query rewriting for multiple order on nested field. (#7523)
- Fix(GraphQL) Fix empty
type Query
with single extended type definition in the schema. (#7517) - Fix(GraphQL): Added support for parameterized cascade with variables. (#7477)
- Fix(GraphQL): Fix fragment expansion in auth queries (GraphQL-1030) (#7467)
- Fix(GraphQL): Refactor Mutation Rewriter for Add and Update Mutations (#7409)
- Fix(GraphQL): Fix
@auth
rules evaluation in case of null variables in custom claims. (#7380) - Fix(GraphQL): Fix interface query with auth rules. (#7401)
- Fix(GraphQL): Added error for case when multiple filter functions are used in filter. (#7368)
- Fix(subscriptions): Fix subscription to use the kv with the max version (#7349)
- Fix(GraphQL):This PR Fix a panic when we pass a single ID as a integer and expected type is
[ID]
.We now coerce that to type array of string. (#7325) - Fix(GraphQL): This PR Fix multi cors and multi schema nodes issue by selecting one of the latest added nodes, and add dgraph type to cors. (#7270)
- Fix(GraphQL): This PR allow to use
__typename
in mutation. (#7285) - Fix(GraphQL): Fix auth-token propagation for HTTP endpoints resolved through GraphQL (GraphQL-946) (#7245)
- Fix(GraphQL): This PR addd input coercion from single object to list and Fix panic when we pass single ID in filter as a string. (#7133)
- Fix(GraphQL): adding support for
@id
with type other than strings (#7019) - Fix(GraphQL): Fix panic caused by incorrect input coercion of scalar to list (#7405)
-
Core Dgraph
- Fix(flag): Fix bulk loader flag and remove flag parsing from critical path (#7679)
- Fix(query): Fix pagination with match functions (#7668)
- Fix(postingList): Acquire lock before reading the cached posting list (#7632)
- Fix(zero): add a ratelimiter to limit the uid lease per namespace (#7568)
- Fixing type inversion in ludicrous mode (#7614)
- Fix(/commit): protect the commit endpoint via acl (#7608)
- Fix(login): Fix login based on refresh token logic (#7637)
- Fix(Query): Fix cascade pagination with 0 offset. (#7636)
- Fix(telemetry): Track enterprise Feature usage (#7495)
- Fix(dql): Fix error message in case of wrong argument to val() (#7543)
- Fix(export): Fix namespace parameter in export (#7524)
- Fix(live): Fix usage of force-namespace parameter in export (#7526)
- Fix(Configs): Allow hierarchical notation in JSON/YAML configs (#7498)
- Fix upsert mutations (#7515)
- Fix(admin-endpoints): Error out if the request is rejected by the server (#7511)
- Fix(Dgraph): Throttle number of files to open while schema update (#7480)
- Fix(metrics): Expose Badger LSM and vlog size bytes. (#7488)
- Fix(schema): log error instead of panic if schema not found for predicate (#7502)
- Fix(moveTablet): make move tablet namespace aware (#7468)
- Fix(dgraph): Do not return reverse edges from expandEdges (#7461)
- Fix(Query): Fix cascade with pagination (#7440)
- Fix(Mutation): Deeply-nested uid facets (#7455)
- Fix(live): Fix live loader to load with force namespace (#7445)
- Fix(sort): Fix multi-sort with nils (#7432)
- Fix(GC): Reduce DiscardRatio from 0.9 to 0.7 (#7412)
- Fix(jsonpb): use gogo/jsonpb for unmarshalling string (#7382)
- Fix: Calling Discard only adds to
txn_discards
metric, nottxn_aborts
. (#7365) - Fix(Dgraph): check for deleteBelowTs in pIterator.valid (#7288)
- Fix(dgraph): Add X-Dgraph-AuthToken to list of access control allowed headers
- Fix(sort): Make sort consistent for indexed and without indexed predicates (#7241)
- Fix(ludicrous): Fix logical race in concurrent execution of mutations (#7269)
- Fix(restore): Handle MaxUid=0 appropriately (#7258)
- Fix(indexing): use encrypted tmpDBs for index building if encryption is enabled (#6828)
- Fix(bulk): save schemaMap after map phase (#7188)
- Fix(DQL): Fix Aggregate Functions on empty data (#7176)
- Fixing unique proposal key error (#7218)
- Fix(Chunker): JSON parsing Performance (#7171)
- Fix(bulk): Fix memory held by b+ tree in reduce phase (#7161)
- Fix(bulk): Fixing bulk loader when encryption + mt...
Dgraph v20.11.3 - (Tenacious T’Challa - 3)
Fixed
-
GraphQL
- Fix(GRAPHQL): fix query rewriting for multiple order on nested field (#7523) (#7536)
- Fix(GRAPHQL): Added support for exact index on field having @id directive (#7534) (#7550)
- Fix(GraphQL): Add extra checks for deleting UpdateTypeInput (#7595) (#7600)
- Fix(GRAPHQL): Undo the breaking change and tag it as deprecated. (#7607)
- Fix(GraphQL): Log query along with the panic (#7638) (#7645)
- Fix(GraphQL): Fix Execution Trace for Add and Update Mutations (#7656) (#7658)
-
Core Dgraph
- Fix(schema): log error instead of panic if schema not found for predicate (#7502) (#7509)
- Chore(cmd/debuginfo) add new metrics to be collected (#7439) (#7562)
- Fix(vlog): Use Badger's value log threshold of 1MB (#7415) (#7474)
- Chore(bulk): Improve perf of bulk loader with Reuse allocator and assinging tags to allocator (#7360) (#7547)
- Fix(query): Fix pagination with match functions (#7668) (#7672)
Dgraph v20.11.2 - (Tenacious T’Challa - 2)
Fixed
-
GraphQL
- Fix(Mutation): Deeply-nested uid facets (#7457)
- Fix(GraphQL): Fix panic caused by incorrect input coercion of scalar to list (#7405) (#7428)
- Fix(GraphQL): Refactor Mutation Rewriter for Add and Update Mutations (#7409) (#7413)
- Fix(GraphQL): fix
@auth
rules evaluation in case of null values. (#7411) - Fix(GraphQL): fix interface query with auth rules (#7408)
- Fix(GraphQL): Added error for case when multiple filter functions are used in filter. (#7368) (#7384)
-
Core Dgraph
-
Enterprise Features
Dgraph v20.11.1 - (Tenacious T’Challa - 1)
Fixed
-
GraphQL
- [BREAKING] Fix(GRAPHQL): Don't generate get query on interface if it doesn't have field of type ID and
also disallow get query on field of type@id
in inerface. ThegetInterface
query can be replaced byqueryInterface
type queries. (#7158) (#7305) - Fix(subscriptions): fix subscription to use the kv with the max version (#7349) (#7355)
- Fix(GraphQl): fix a panic when we pass a single ID as a integer and expected type is
[ID]
.We
now coerce that to type array of string. (#7325) (#7353) - Fix(GRAPHQL): update gqlparser release to v2.1.4 (#7347) (#7352)
- Fix(GraphQL): Fix graphql flaky tests which were caused by receiving extra schema updates
(#7329) (#7348) - Fix(GraphQL): This PR addd input coercion from single object to list and fix panic when we
pass single ID in filter as a string. (#7133) (#7306) - Fix(GraphQL): This PR fix multi cors and multi schema nodes issue by selecting one of the
latest added nodes, and add dgraph type to cors. (#7270) (#7302) - Fix(GraphQL): This PR allow to use __typename in mutation. (#7285) (#7303)
- Fix(GraphQL): Fix auth-token propagation for HTTP endpoints resolved through GraphQL (GRAPHQL
-946) (#7245) (#7251)
- [BREAKING] Fix(GRAPHQL): Don't generate get query on interface if it doesn't have field of type ID and
-
Core Dgraph
- Fix(bulk): save schemaMap after map phase (#7188) (#7351)
- Fix(Dgraph): check for deleteBelowTs in pIterator.valid (#7288) (#7350)
- Fix(indexing): use encrypted tmpDBs for index building if encryption is enabled (#6828) (#7343)
- Fix(bulk): Fix memory held by b+ tree in reduce phase (#7161) (#7333)
- Feat(bulk): Add /jemalloc HTTP endpoint. (#7165) (#7331)
- Fix(sort): Make sort consistent for indexed and without indexed predicates (#7241) (#7323)
- Fix(dgraph): Add X-Dgraph-AuthToken to list of access control allowed headers (#7311)
- Fix(ludicrous): Fix logical race in concurrent execution of mutations (#7269) (#7309)
- Fix(ludicrous): Fix data race in executor (#7203) (#7307)
- Opt(rollup): change the way rollups are done (#7253) (#7277)
- Fix(indexing): use --tmp directory for building indexes (#7289) (#7300)
- Fix(dgraph): Fix dgraph crash on windows (#7261) (#7299)
- Fix(dgraph): making jemalloc to work with dgraph on macos (#7247) (#7282)
- Fix(dgraph): Fixing multiple race conditions (#7278)
- Fixing unique proposal key error (#7218) (#7281)
- Fix(raft): Unmarshal zero snapshot into pb.ZeroSnaphot (#7244)
- Fix(bulk): fixing bulk loader when encryption + mtls is enabled (#7154) (#7155)
-
Enterprise Features
Dgraph v20.07.3 (Savvy Shuri-3)
Changed
- Chore(bulk): Change default compression to zstd:3. (#6995)
- Build(dockerfile): Set GODEBUG=madvdontneed=1. (#6955)
- Updating badger version 3f846b3. (#7212)
Added:
- Update kubernetes links to match 20.07 config files (#7049)
- Fix(dgraph): giving users the option to control tls versions (#6820)
- Feat(dgraph): making all internal communications with tls configured (#6876)
- Feat(dgraph): enabling TLS config in http zero ([#6691) (#6867)
Fixed:
- GraphQL
- Fix(GraphQL): don't update cacheMb if not specified by user (#7103)
- Fix: added comment docstring for ExportInput format (#6991)
- Fix(GraphQL): fixes issue of multiple responses in a subscription for an update. (#6868)
- Fix ErrIndexingInProgress if schema update fails (#6583)
- Fix(GraphQL): fix panic error when we give null value in filter connectives. (#6707)
- Fix(GraphQL): reduces polling duration of subscriptions. (#6661)
- Fix(GraphQL): add enable schema cleaning in GraphQL and reduce schema update time. (#6725)
- Fix(GraphQL): fixes flaky test for subscriptions. (#6065)
- Fix(DQL): ignore ordering of indexes in schema with eq function (DGRAPH-2601) (#6996)
- Fix(worker): fix eq filter for non-index predicates. (#6986)
- Fix(Alpha): Immediately take a snapshot if we don't have one (#6458)
- Fix(Dgraph): Type names in exported schema are surrounded by brackets. (#6679)
- Fix(ludicrous mode): Handle deletes correctly (#6773)
- Fix(worker): Avoid panic in handleUidPostings (#6607)
- Fix(gqlParser): Handle strings with only whitespace in parseID (#6615)
- Fix(Ludicrous): Upserts on list type in Dgraph (#6796)
- Enterprise features