Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Explain Request - Simple (TEXT) #361

Closed
shahzadlone opened this issue Apr 19, 2022 · 0 comments · Fixed by #385
Closed

Explain Request - Simple (TEXT) #361

shahzadlone opened this issue Apr 19, 2022 · 0 comments · Fixed by #385
Assignees
Labels
area/query Related to the query component feature New feature or request
Milestone

Comments

@shahzadlone
Copy link
Member

Sub Task of #35

Spec: https://source.getoutline.com/doc/explain-queries-jtaGX0L995

@shahzadlone shahzadlone added this to the DefraDB v0.3 milestone Apr 19, 2022
@shahzadlone shahzadlone self-assigned this Apr 19, 2022
@shahzadlone shahzadlone changed the title Explain Query - Simple - TEXT output Explain Query - Simple - (TEXT) Apr 19, 2022
@shahzadlone shahzadlone modified the milestones: DefraDB v0.3, DefraDB v0.4 Apr 19, 2022
@shahzadlone shahzadlone changed the title Explain Query - Simple - (TEXT) Explain Query - Simple (TEXT) Apr 19, 2022
@shahzadlone shahzadlone added feature New feature or request area/query Related to the query component labels Apr 19, 2022
@shahzadlone shahzadlone changed the title Explain Query - Simple (TEXT) Explain Request - Simple (TEXT) Apr 26, 2022
@shahzadlone shahzadlone linked a pull request Apr 30, 2022 that will close this issue
shahzadlone added a commit that referenced this issue Jun 1, 2022
- RELATED ISSUES:
Resolves #325,
Closes #361, Closes #362 and also Closes #363 (Closing the `TEXT` structured ones because we have decided to only go with JSON approach to avoid the wonky looking client side formatting).
Fixes #486 in commit [d940f7b](d940f7b)

- DESCRIPTION:
This PR lays all the ground work needed to have the opt-ability for planner nodes to subscribe to the explain interface if they would like to be exposed to the explaining of the plan graph.

Even though top-level plan **node** name will be explained after this PR for all explainable nodes, this PR doesn't implement all the explain attributes for all explainable nodes. Here are the planNodes whose attributes can be explained after this PR:
1) `selectNode` (attributes completed)
2) `selectTopNode` (attributes completed / has no attributes)
3) `createNode` (attributes completed)
4) `deleteNode` (attributes completed)
5) `scanNode` (some attributes completed)

 Request:
 ```
query @Explain {
  user {
    _key
    age
    name
  }
}
```

 Response:
 ```
{
  "data": [
    {
      "explain": {
        "selectTopNode": {
          "selectNode": {
            "filter": null,
            "scanNode": {
              "collectionID": "1",
              "collectionName": "user",
              "filter": null
            }
          }
        }
      }
    }
  ]
}
```
shahzadlone added a commit to shahzadlone/defradb that referenced this issue Feb 23, 2024
- RELATED ISSUES:
Resolves sourcenetwork#325,
Closes sourcenetwork#361, Closes sourcenetwork#362 and also Closes sourcenetwork#363 (Closing the `TEXT` structured ones because we have decided to only go with JSON approach to avoid the wonky looking client side formatting).
Fixes sourcenetwork#486 in commit [d940f7b](sourcenetwork@d940f7b)

- DESCRIPTION:
This PR lays all the ground work needed to have the opt-ability for planner nodes to subscribe to the explain interface if they would like to be exposed to the explaining of the plan graph.

Even though top-level plan **node** name will be explained after this PR for all explainable nodes, this PR doesn't implement all the explain attributes for all explainable nodes. Here are the planNodes whose attributes can be explained after this PR:
1) `selectNode` (attributes completed)
2) `selectTopNode` (attributes completed / has no attributes)
3) `createNode` (attributes completed)
4) `deleteNode` (attributes completed)
5) `scanNode` (some attributes completed)

 Request:
 ```
query @Explain {
  user {
    _key
    age
    name
  }
}
```

 Response:
 ```
{
  "data": [
    {
      "explain": {
        "selectTopNode": {
          "selectNode": {
            "filter": null,
            "scanNode": {
              "collectionID": "1",
              "collectionName": "user",
              "filter": null
            }
          }
        }
      }
    }
  ]
}
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/query Related to the query component feature New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant