Explore: Init with mixed DS if there's no root DS in the URL and queries have multiple datasources #80068
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.
What is this feature?
Select mixed datasource when accessing Explore with a URL that has not root level datasource defined but multiple queries with different datasources.
Although is not technically possible to generate such URLs from explore itself, this should be the correct behaviour if URLs are tampered with/generated externally.
Previously, if opening Explore with such a URL, the root level DS was set to the first query's DS and all other queries discarded, with this change the "mixed" ds is correctly inferred and no query is is discarded (as long as they have a valid datasource)
Why do we need this feature?
More robust URL parsing and state initialization in Explore.l
Who is this feature for?
Explore users
Which issue(s) does this PR fix?:
Fixes #69689
Special notes for your reviewer:
Please check that:
How to test this
Given how unique ids are generated for datasources i can't provide premade links, however this should be quite easy to test: