Support selecting wildcards in node queries#993
Open
shangyian wants to merge 2229 commits intoDataJunction:mainfrom
Open
Support selecting wildcards in node queries#993shangyian wants to merge 2229 commits intoDataJunction:mainfrom
shangyian wants to merge 2229 commits intoDataJunction:mainfrom
Conversation
…alembic Fix alembic migration for missing table attribute
… causes issues as our database client not support async, so every database call introduces blocking calls to the event loop, eventually resulting in the workers timing out.
Remove the mixture of async endpoints with a sync db connection
…n-0.0.1a41 Bump DataJunction version to 0.0.1a41
…ble dimensions for each node
…lumns first in the columns list. Switch default in graph view to five nodes
Additional Dimensions Info in the UI
…n-0.0.1a42 Bump DataJunction version to 0.0.1a42
…e validate the node query to get the list of columns) rather than text input.
Improve UI for primary key selection
…ke the metric's upstream node, its agg expression, and the required dimensions
…ggregate expression as input, which clarifies what we mean by a metric query. Also adds in some styling changes to the react-select dropdowns for both multi and single select. - Modify the metrics page to display the upstream node and aggregate expression separately - Refactor for better organization of form fields and fix tests
Alter metrics UI to use upstream + aggregate expression
Required dimensions, node tab links, node name/namespace validation,
…n-0.0.1a43 Bump DataJunction version to 0.0.1a43
…ence flow around draft nodes is less than ideal
Switch to 'published' as the default in the node creation UI
Add endpoint for copying nodes
…ionlink Fix an issue where removing dimension links was invalidating cubes incorrectly and taking a long time
Add loading stage to various parts of the UI
Add the ability to `update_if_exists` to `create_X` methods
Sort dimensions by order of usage when displaying them in the link dimensions popover
Add a node dependencies tab that displays the node graph in list form
FIX Remove fields from Source's UpdateNode that aren't actually update-able
…order Fix cube elements ordering bug
…on-0.0.1a51 Bump DataJunction version to 0.0.1a51
…hint parsing code from Java to Python
… HintContext and HintStatementContext
ba853a0 to
d51de7c
Compare
d51de7c to
0734396
Compare
Member
|
@shangyian what happened here? Was there a major issue or just a missed PR? I see that we can create nodes with |
Collaborator
Author
|
@agorajek yeah, unfortunately I couldn't get one of the unit tests to pass (there was some non-deterministic issue that was hard to track down). I'll take another stab at it soon. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR adds support for writing
SELECT *in node queries.During the
Wildcardcompile stage, it expands outSELECT *to all available columns on the table references. This may include DJ node columns, CTE columns, or subquery columns. These expanded columns are saved to a node revision's associatedcolumns, but in the saved query, we keep the wildcard syntax (i.e., we always preserve what the user wrote).During node updates, we also update these columns based on the parent nodes' columns, if any has changed.
Test Plan
make checkpassesmake testshows 100% unit test coverageDeployment Plan