-
Notifications
You must be signed in to change notification settings - Fork 597
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
Feature/repairkafka3.7 #707
Conversation
Please explain what is changing here, and if this is a plugin update, you need to update test scenarios too. |
If the new use cases are same here, you should add more versions to support your new implementations for newer versions, and keep compatibility with previous. |
return new ConstructorInterceptPoint[]{ | ||
new ConstructorInterceptPoint() { | ||
@Override | ||
public ElementMatcher<MethodDescription> getConstructorMatcher() { | ||
return takesArgumentWithType(0, CONSTRUCTOR_INTERCEPT_TYPE); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You should not reformat, thr code style file is in the source codes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You should not reformat, thr code style file is in the source codes.
I reset the java file which I reformat
Ok, I'll commit later |
About #708 (comment) I mean the test versions demo codes https://github.com/apache/skywalking-java/tree/main/test/plugin/scenarios/kafka-scenario |
Please pick one for 3.4, 3.5, 3.6 as well. |
3.4, 3.5, 3.6 are same to 3.2.3 |
Logically same. But we should test. |
OK, Should I create modules kafka-3.6.x-scenario and kafka-3.7.x-scenario like kafka-2.3.x-scenario in dir /test? |
Those exist because the test codes are different. If you just need to change dependency versions, you don't need to do that. |
And please fix CIs. |
… method's name from pollForFetches to poll
… method's name from pollForFetches to poll
… method's name from pollForFetches to poll
You should verify all locally rather than costing too much on CI. |
|
@@ -19,4 +19,3 @@ The plugin of JDK HttpURLConnection depended on `sun.net.*`. When using Java 9+, | |||
|
|||
For more information | |||
1. [JEP 403: Strongly Encapsulate JDK Internals](https://openjdk.org/jeps/403) | |||
2. [A peek into Java 17: Encapsulating the Java runtime internals](https://blogs.oracle.com/javamagazine/post/a-peek-into-java-17-continuing-the-drive-to-encapsulate-the-java-runtime-internals) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think you made a mistake to remove this line?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think you made a mistake to remove this line?
No, the CI thiks this line is a deadlink, though it can be access in browser
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The blog is there. What is the deadlink check saying?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You should not remove the docs, just because a CI took says otherwise.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You should not remove the docs, just because a CI took says otherwise.
OK, I will rollback it, thank you!
I think you did not update docs accordingly, Plugin-list.md and Supported-list.md |
new ConstructorInterceptPoint() { | ||
@Override | ||
public ElementMatcher<MethodDescription> getConstructorMatcher() { | ||
return takesArgumentWithType(0, CONSTRUCTOR_INTERCEPT_TYPE); | ||
} | ||
|
||
@Override | ||
public String getConstructorInterceptor() { | ||
return CONSUMER_CONFIG_CONSTRUCTOR_INTERCEPTOR_CLASS; | ||
} | ||
}, | ||
new ConstructorInterceptPoint() { | ||
@Override | ||
public ElementMatcher<MethodDescription> getConstructorMatcher() { | ||
return takesArgumentWithType(0, CONSTRUCTOR_INTERCEPT_MAP_TYPE); | ||
} | ||
|
||
@Override | ||
public String getConstructorInterceptor() { | ||
return MAP_CONSTRUCTOR_INTERCEPTOR_CLASS; | ||
} | ||
}, | ||
@Override | ||
public String getConstructorInterceptor() { | ||
return CONSUMER_CONFIG_CONSTRUCTOR_INTERCEPTOR_CLASS; | ||
} | ||
}, | ||
new ConstructorInterceptPoint() { | ||
@Override | ||
public ElementMatcher<MethodDescription> getConstructorMatcher() { | ||
return takesArgumentWithType(0, CONSTRUCTOR_INTERCEPT_MAP_TYPE); | ||
} | ||
|
||
@Override | ||
public String getConstructorInterceptor() { | ||
return MAP_CONSTRUCTOR_INTERCEPTOR_CLASS; | ||
} | ||
}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please revert re-format.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please revert re-format.
I have already recerted it, this class dosen't change, I have already rollback it to the original version
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have already recerted it, this class dosen't change, I have already rollback it to the original version
No, you didn't. Change is still there.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have already recerted it, this class dosen't change, I have already rollback it to the original version
No, you didn't. Change is still there.
Those changes are compare to the changes which are not correct I commit before...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have already recerted it, this class dosen't change, I have already rollback it to the original version
No, you didn't. Change is still there.
I dont't know why.... I check out the original branch and copy the codes into the class file, but the IDE says that there is no difference.....
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have already recerted it, this class dosen't change, I have already rollback it to the original version
No, you didn't. Change is still there.
Resolved
Map<TopicPartition, List<ConsumerRecord<?, ?>>> rsp = new HashMap<>(); | ||
if (retObj instanceof ConsumerRecords) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why instanceof
? Is there another case to have another parameter? The parent class has Map<TopicPartition, List<ConsumerRecord<?, ?>>>
type as the parameter, but it should not affect this new Kafka37ConsumerInterceptor, right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This class should be removed, I missed it, I'll delete it at next commit
All the CIs were successfully executed but the DeadLink check |
@kezhenxu94 As 403 respond code, should we add this into ignore list? |
new ConstructorInterceptPoint() { | ||
@Override | ||
public ElementMatcher<MethodDescription> getConstructorMatcher() { | ||
return takesArgumentWithType(0, CONSTRUCTOR_INTERCEPT_TYPE); | ||
} | ||
|
||
@Override | ||
public String getConstructorInterceptor() { | ||
return CONSUMER_CONFIG_CONSTRUCTOR_INTERCEPTOR_CLASS; | ||
} | ||
}, | ||
new ConstructorInterceptPoint() { | ||
@Override | ||
public ElementMatcher<MethodDescription> getConstructorMatcher() { | ||
return takesArgumentWithType(0, CONSTRUCTOR_INTERCEPT_MAP_TYPE); | ||
} | ||
|
||
@Override | ||
public String getConstructorInterceptor() { | ||
return MAP_CONSTRUCTOR_INTERCEPTOR_CLASS; | ||
} | ||
}, | ||
@Override | ||
public String getConstructorInterceptor() { | ||
return CONSUMER_CONFIG_CONSTRUCTOR_INTERCEPTOR_CLASS; | ||
} | ||
}, | ||
new ConstructorInterceptPoint() { | ||
@Override | ||
public ElementMatcher<MethodDescription> getConstructorMatcher() { | ||
return takesArgumentWithType(0, CONSTRUCTOR_INTERCEPT_MAP_TYPE); | ||
} | ||
|
||
@Override | ||
public String getConstructorInterceptor() { | ||
return MAP_CONSTRUCTOR_INTERCEPTOR_CLASS; | ||
} | ||
}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have already recerted it, this class dosen't change, I have already rollback it to the original version
No, you didn't. Change is still there.
import org.apache.skywalking.apm.agent.core.plugin.match.ClassMatch; | ||
import static org.apache.skywalking.apm.agent.core.plugin.match.NameMatch.byName; | ||
|
||
/** |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For the comment, I think we can focus on the difference instead of repeating what is already written in the parent class.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For the comment, I think we can focus on the difference instead of repeating what is already written in the parent class.
Yes, the difference is the method named pollForFetchs was removed from KafkaConsumer to another two classes, so the original interceptor can not intercept it. Because of the enhance class is changed, so I create two new classes to repair the uncompatible problem.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, the difference is the method named pollForFetchs was removed from KafkaConsumer to another two classes, so the original interceptor can not intercept it. Because of the enhance class is changed, so I create two new classes to repair the uncompatible problem.
I meant you can modify the comment for this class......
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You are right, I forget to change the comment
One more. changes.md should be updated as well. |
|
CHANGES
log.