Dgraph Community Call on Aug 13, 2020

Hi Dgraph Community,

At Dgraph, we really care about our community. We are proud to announce our first ever Dgraph community call on 2020-08-13T17:30:00Z. I’ll be leading the call, along with @dmai (Community Lead), @ibrahim (Badger maintainer) and other team members.

Dgraph’s Savvy Shuri release (20.07.0) is out and we are excited to share all the new features with you. This call is also a great place to bring your questions and comments about using Dgraph for your project.

Our goal is to make this call as interactive as possible, please register here and take some time to post your questions on this thread ahead of time.

Agenda

  • Introduce new features in 20.07.0 Savvy Shuri release (10-15 mins)
  • Questions from the community. Please post your questions in this topic. (45 mins)

Recording

Q&A List:

I don’t have a question, more of a request.

I am a noob in Auth, so please demonstrate Authentication & Authorization.

P.S. If possible, maybe with Firebase Auth as well.

I would like to see some real use-case of dgraph combined with GraphQL.
Use-case which involves some Logic beyond the autogenerated CRUD operation. Some examples are:

  • Connectors (graphql spec)
  • Integration with Middleware like Apollo and the implementation of custom queries and fields
  • Filter by nested node using Middleware like Apollo

Can you guys record the meeting, and upload it to Youtube? I’d love to be around, but not 100% sure I can make it. :pensive:

  1. What is the timeline for integration with kafka? In the meantime what are the best practices for streaming data into dgraph?
  2. Is it possible to use the dgraph4j client to cancel a request after it’s been sent to the server? I’ve used the dgraph client with an interceptor and triggered a cancel that way, but I’m wondering if that actually cancels the query being run on the alpha.
  3. I’ve noticed that earlier versions of dgraph (e.g., v1.1.1) have significantly better performance with certain kinds of queries (eg, those with Type filters) than newer versions. What is the status of the Query Planner?
  1. Features and improvements planned for subscriptions
  2. Feature parity between GraphQL± and GraphQL, timeline for it
  3. Examples with authentication and boilerplate with real-life scenarions/basic features

ETA for implementing count on the graphql endpoint taking into consideration auth rules. I can count all using a DQL custom field but then that does not take into consideration any auth rules.

ETA for any kind of @math support in graphql Not requested yet, but a feature in DQL not in graphql mentioned in GraphQL+- -> Spec Compliant GraphQL

ETA on Cascade does not work with pagination

ETA on Does @withSubscription not work yet with @auth rules?

ETA on fixing Grandchild is not attached to Child when using addType

Idea about integrating Slash with Apollo Studio related to Integrating with Apollo Studio - #5 by michaelcompton

How to best collaborate using Slash involving Share a back-end with multiple users and Collaboration on Schema in Slash - #2 by abhijit-kar and Schema backups and versioning - #2 by abhijit-kar

Any talk about the Upcoming Implement custom JS resolvers in GraphQL

Any other upcoming plans on performance increases to increase speed and reduce memory usage. I understand these two don’t go together too well and are usually inversely related. Not saying it is horrible right now, but Memory requirements are through the roof compared to other non graph DBs.

Answering some questions here

This would be part of 20.07.1 release that goes out this month.

I can’t give you a clear ETA on this yet, but we’ll try to get it done in time for the 20.11.0 release.

A PR is up with the fix. It needs a bit more testing and should be ready to merge early next week.

We haven’t started working on this yet but will prioritize it. @vvbalaji

From the docs about Authorization at https://graphql.dgraph.io/doc/authorization/

Dgraph GraphQL deals with authorization, but is completely flexible about how your app does authentication. You could authenticate your users with a cloud service like OneGraph or Auth0, use some social sign in options, or write bespoke code. The connection between Dgraph and your authentication mechanism is a signed JWT - you tell Dgraph, for example, the public key of the JWT signer and Dgraph trusts JWTs signed by the corresponding private key.

Here is an end to end example where we show you can authenticate a user using Auth0 and use the JWT obtained there to do Authorization within Dgraph. https://graphql.dgraph.io/tutorials/todo-app-tutorial/todo-auth0-jwt/

Yep I saw the documentation.

However I don’t want to use AuthO so I didn’t follow along. Maybe I’ll do it later if I don’t have a choice.

I put my request here, hoping to see a live demo. Maybe get some pointers on Firebase auth.

P.S. Even though I am good at following through documentation, with videos it’s much faster to orient myself and get a birds eye view of a concept faster!

Hi Dgraph Team, one question on GraphQL+ ; What are the current capabilities/future directions around control-flows, looping, turing completeness for the query language?

Kind of a meta question: I see that GitHub issues were retired recently and I’m curious to know what your experience with that has been. Pros? Cons?

Here’s the discussion around the facets format change: Facets format in mutation requests and query responses - #8 by ppp225