Move multi-stage-query module out of extension#18394
Conversation
|
Thanks for this change! This would really help while making a lot of changes in MSQ. I am taking a look at this now. Regarding the codeQL failures, most of these seem to be false alerts from tests, which can be silenced in the check, but I do see some of them (like |
adarshsanjeev
left a comment
There was a problem hiding this comment.
Seems okay, aside from the checkstyle issues.
|
Thanks a lot for the review, @adarshsanjeev ! Given that the check failures are existing, I am going ahead with the merge of this PR as I want this commit to be just about the migration. The checks can be addressed in a follow up if needed. |
| @@ -193,9 +193,18 @@ public void initializeExtensionFilesToLoad() | |||
| if (toLoad == null) { | |||
| extensionsToLoad = rootExtensionsDir.listFiles(); | |||
| } else { | |||
| final LinkedHashSet<String> validExtensionsToLoad = new LinkedHashSet<>(toLoad); | |||
| if (validExtensionsToLoad.remove("druid-multi-stage-query")) { | |||
There was a problem hiding this comment.
Generally it feels a bit awkward having this since configs which are set are not being honored but I guess this might be the cleanest unclean way to support upgrading clusters without manual intervention.
There was a problem hiding this comment.
Yeah, didn't quite like it myself. That's why the initial commits didn't have this change.
But as you said, this is the simplest path forward.
We can probably remove this after a few Druid releases, since we have started giving out the warning message.
|
Thanks for the review, @cryptoe ! |
Description
Druid MSQ engine offers a very convenient method of performing SQL-based batch ingestion, export, etc.
Given the importance and heavy adoption of MSQ, this patch converts MSQ into a core capability of Druid
rather than an extension, as was always intended.
Changes
multi-stage-querymodule out fromextensions-coreCli*classes of applicable servicescommon.runtime.propertiesfiles{@link}to{@code}in javadocs ofPeonProcessingBufferProvider,IndexerProcessingBufferProviderandIndexerResourcePermissionMapper.LiveCatalogResolverfromdruid-catalogtomulti-stage-query. This class is used inMSQInsertTest.Pending
Release note
druid-multi-stage-queryfromdruid.extensions.loadListincommon.runtime.properties.Upgrade notes
While upgrading, the extension
druid-multi-stage-queryshould be removed fromdruid.extensions.loadList.Future Druid version would fail to start as they would not be able to locate this extension.
For the time being, this extension would just be ignored.
This PR has: