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

KAFKA-14466: Move ClassloaderAwareRemoteStorageManager to storage module #13013

Merged
merged 3 commits into from Dec 19, 2022

Conversation

satishd
Copy link
Member

@satishd satishd commented Dec 18, 2022

Committer Checklist (excluded from commit message)

  • Verify design and implementation
  • Verify test coverage and CI build status
  • Verify documentation (including upgrade notes)

@satishd satishd marked this pull request as ready for review December 18, 2022 02:01
@satishd
Copy link
Member Author

satishd commented Dec 18, 2022

@junrao Please review when you get a chance.

…and exception type as suggested in the review.
@satishd
Copy link
Member Author

satishd commented Dec 19, 2022

Thanks @ijuma for your review. Addressed them with the latest commit.

* @param <E> Exception type to be thrown
*/
@FunctionalInterface
public interface ClassLoaderAction<T, E extends Exception> {
Copy link
Contributor

@ijuma ijuma Dec 19, 2022

Choose a reason for hiding this comment

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

I hadn't realised this is used by multiple classes. Since it is, maybe we can move this to the internals package and call it simply StorageAction or something like that. I can then use it within one of the index classes too.

Copy link
Member Author

Choose a reason for hiding this comment

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

I set the name as RemoteStorageAction as it was meant for any remote storage actions. I though you wanted this to be classloader specific in your earlier comment. I am fine with renaming it to StorageAction so that it can be reused for any storage specific operations.

Copy link
Contributor

Choose a reason for hiding this comment

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

Yeah, my original suggestion assumed it would be used within one class. I didn't realize we had multiple "ClassLoaderAware" classes. Once it's a top level interface, it seems better to keep it general. Thanks.

package org.apache.kafka.server.log.remote.storage;

/**
* This interface is used to execute any remote storage/metadata related operation.
Copy link
Contributor

Choose a reason for hiding this comment

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

Let's update this comment to make this general to any storage action.

…fka.server.log.internals package in storage module
@satishd
Copy link
Member Author

satishd commented Dec 19, 2022

Thanks @ijuma for your review. Addressed them with the latest commit.

@ijuma
Copy link
Contributor

ijuma commented Dec 19, 2022

Thanks. I'll take a look soon.

Copy link
Contributor

@ijuma ijuma left a comment

Choose a reason for hiding this comment

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

LGTM, thanks.

@ijuma
Copy link
Contributor

ijuma commented Dec 19, 2022

Test failures are unrelated.

@ijuma ijuma merged commit e3cb2de into apache:trunk Dec 19, 2022
@ijuma ijuma changed the title KAFKA-14466 Move ClassloaderAwareRemoteStorageManager to storage module KAFKA-14466: Move ClassloaderAwareRemoteStorageManager to storage module Dec 19, 2022
guozhangwang pushed a commit to guozhangwang/kafka that referenced this pull request Jan 25, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants