Skip to content

Plugin manager rewrite as plugin installers#16082

Closed
skrzypo987 wants to merge 1 commit intotrinodb:masterfrom
skrzypo987:skrzypo/266-plugin-manager-rewrite-as-plugin-installer
Closed

Plugin manager rewrite as plugin installers#16082
skrzypo987 wants to merge 1 commit intotrinodb:masterfrom
skrzypo987:skrzypo/266-plugin-manager-rewrite-as-plugin-installer

Conversation

@skrzypo987
Copy link
Copy Markdown
Member

@skrzypo987 skrzypo987 commented Feb 13, 2023

Description

This PR rewrites the plugin installation process into smaller installers using mechanism from #16060. That way the logic of installing plugins i s moved into classes, where they are actually installed, and only guice bindings link the two together.

Additional context and related issues

Release notes

(x) This is not user-visible or docs only and no release notes are required.
( ) Release notes are required, please propose a release note for me.
( ) Release notes are required, with the following suggested text:

# Section
* Fix some things. ({issue}`issuenumber`)

@cla-bot cla-bot bot added the cla-signed label Feb 13, 2023
@skrzypo987 skrzypo987 requested a review from kokosing February 13, 2023 07:21
@skrzypo987 skrzypo987 changed the title olugin manager rewrite as plugin installers Plugin manager rewrite as plugin installers Feb 13, 2023
@skrzypo987 skrzypo987 requested a review from martint February 13, 2023 07:22
@skrzypo987 skrzypo987 force-pushed the skrzypo/266-plugin-manager-rewrite-as-plugin-installer branch from 25e2180 to c4532af Compare February 13, 2023 12:20
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

does this method has to be public? Can you please make it private? Do you need @VisibleForTests? Same comment for all other classes

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reduced the visibility when applicable.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please define the logger as private static final. Same for other places like that.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's an interface so just Logger log = Logger.get(ResourceGroupManager.class);.
Changed

@skrzypo987 skrzypo987 force-pushed the skrzypo/266-plugin-manager-rewrite-as-plugin-installer branch from c4532af to 5a50036 Compare February 14, 2023 08:37
@skrzypo987
Copy link
Copy Markdown
Member Author

@kokosing AC

@kokosing
Copy link
Copy Markdown
Member

Please rebase

Copy link
Copy Markdown
Contributor

@ksobolew ksobolew left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just wanted to say that I like it

introduced in the previous commit.
The exception being connector factories since they use additional
plugin class loader factory.
@skrzypo987 skrzypo987 force-pushed the skrzypo/266-plugin-manager-rewrite-as-plugin-installer branch from 5a50036 to 9bea149 Compare February 14, 2023 13:40
Copy link
Copy Markdown
Member

@martint martint left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Classes such as ResourceGroupManager, TypeRegistry, GlobalFunctionCatalog, etc., should not have to be aware of plugin infrastructure -- it should be the opposite.

@kokosing
Copy link
Copy Markdown
Member

In such case as I understand you, that means that we should have dedicated plugin installers per such entity. For example ResourceGroupManagerPluginInstaller that would just glue the plugin infrastructure with ResourceGroupManager.

@kokosing kokosing closed this Feb 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

4 participants