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

Replacing MimicException with the older ProxyException #141

Merged
merged 3 commits into from
Feb 12, 2017

Conversation

jglick
Copy link
Member

@jglick jglick commented Jan 13, 2017

ProxyException dates back to 2007 in 2515c1c. Yet for some reason @kohsuke added the nearly identical MimicException in 2012 in d084f50. There is no reason to have both, especially when #136 improved the former.

The capability is unnecessary since ProxyException predates the introduction of capabilities themselves, in b310dd5 in 2009.

Possibly MimicException could be simply deleted, not just deprecated, though it is not obvious to me whether it might be serialized somewhere on disk.

@reviewbybees esp. @oleg-nenashev

@ghost
Copy link

ghost commented Jan 13, 2017

This pull request originates from a CloudBees employee. At CloudBees, we require that all pull requests be reviewed by other CloudBees employees before we seek to have the change accepted. If you want to learn more about our process please see this explanation.

@jglick
Copy link
Member Author

jglick commented Jan 18, 2017

Hmm, seems like there are still test failures that I need to look at.

@jglick
Copy link
Member Author

jglick commented Jan 18, 2017

Nope, tests just seem really flaky.

@jglick jglick mentioned this pull request Jan 18, 2017
@oleg-nenashev
Copy link
Member

Retriggering the PR builder after #142

Copy link
Member

@oleg-nenashev oleg-nenashev left a comment

Choose a reason for hiding this comment

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

Looks good to me. Would be great to get a comment from @kohsuke regarding the purpose of the MimicException.

From what I see it impacts the MimicException masking logic, which is not equivalent fto ProxyException behavior from what I see

@@ -55,6 +55,8 @@ public boolean supportsPipeThrottling() {
return (mask& MASK_PIPE_THROTTLING)!=0;
}

/** @deprecated no longer used */
@Deprecated
Copy link
Member

Choose a reason for hiding this comment

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

One may still use the Mimic exception if he writes code in the hudson.remoting package. Not sure if it's sane enough BTW. I agree with such comment in Javadoc anyway

@jglick
Copy link
Member Author

jglick commented Jan 31, 2017

the MimicException masking logic, which is not equivalent to ProxyException behavior

How so?

@oleg-nenashev
Copy link
Member

Yes, I'd say that there is no real impact 🐝

@oleg-nenashev
Copy link
Member

@reviewbybees done

@oleg-nenashev
Copy link
Member

@jglick IMHO it is not a backporting candidate. Do you agree?

@jglick
Copy link
Member Author

jglick commented Feb 10, 2017

Agreed.

@oleg-nenashev oleg-nenashev merged commit 34338f8 into jenkinsci:master Feb 12, 2017
oleg-nenashev added a commit that referenced this pull request Feb 12, 2017
@jglick jglick deleted the MimicException branch February 13, 2017 14:03
oleg-nenashev added a commit to oleg-nenashev/jenkins that referenced this pull request Feb 17, 2017
https://github.com/jenkinsci/remoting/edit/master/CHANGELOG.md

Fixed issues:

* [JENKINS-40710](https://issues.jenkins-ci.org/browse/JENKINS-40710) - Match headers case-insensitively in `JnlpAgentEndpointResolver` in order to be compliant with HTTP2 lower-case headers. ([PR jenkinsci#139](jenkinsci/remoting#139), [PR jenkinsci#140](jenkinsci/remoting#140))
* [JENKINS-41513](https://issues.jenkins-ci.org/browse/JENKINS-41513) - Prevent `NullPointerException` in `JnlpAgentEndpointResolver` when receiving a header with `null` name. ([PR jenkinsci#140](jenkinsci/remoting#140))
* [JENKINS-41852](https://issues.jenkins-ci.org/browse/JENKINS-41852) - Fix exported object pinning logic to prevent release due to the integer overflow. ([PR jenkinsci#148](jenkinsci/remoting#148))

Improvements:

* [JENKINS-41730](https://issues.jenkins-ci.org/browse/JENKINS-41730) - Add the new `org.jenkinsci.remoting.engine.JnlpAgentEndpointResolver.ignoreJenkinsAgentProtocolsHeader` property, which allows specifying a custom list of supported protocols instead of the one returned by the Jenkins master. ([PR jenkinsci#146](jenkinsci/remoting#146))
* Print the Filesystem Jar Cache directory location in the error message when this cache directory is not writable. ([PR jenkinsci#143](jenkinsci/remoting#143))
* Replace `MimicException` with the older `ProxyException` when serializing non-serializable exceptions thrown by the remote code. ([PR jenkinsci#141](jenkinsci/remoting#141))
* Use OID of the `ClassLoaderProxy` in error message when the proxy cannot be located in the export table. ([PR jenkinsci#147](jenkinsci/remoting#147))
olivergondza pushed a commit to jenkinsci/jenkins that referenced this pull request Mar 13, 2017
https://github.com/jenkinsci/remoting/edit/master/CHANGELOG.md

Fixed issues:

* [JENKINS-40710](https://issues.jenkins-ci.org/browse/JENKINS-40710) - Match headers case-insensitively in `JnlpAgentEndpointResolver` in order to be compliant with HTTP2 lower-case headers. ([PR #139](jenkinsci/remoting#139), [PR #140](jenkinsci/remoting#140))
* [JENKINS-41513](https://issues.jenkins-ci.org/browse/JENKINS-41513) - Prevent `NullPointerException` in `JnlpAgentEndpointResolver` when receiving a header with `null` name. ([PR #140](jenkinsci/remoting#140))
* [JENKINS-41852](https://issues.jenkins-ci.org/browse/JENKINS-41852) - Fix exported object pinning logic to prevent release due to the integer overflow. ([PR #148](jenkinsci/remoting#148))

Improvements:

* [JENKINS-41730](https://issues.jenkins-ci.org/browse/JENKINS-41730) - Add the new `org.jenkinsci.remoting.engine.JnlpAgentEndpointResolver.ignoreJenkinsAgentProtocolsHeader` property, which allows specifying a custom list of supported protocols instead of the one returned by the Jenkins master. ([PR #146](jenkinsci/remoting#146))
* Print the Filesystem Jar Cache directory location in the error message when this cache directory is not writable. ([PR #143](jenkinsci/remoting#143))
* Replace `MimicException` with the older `ProxyException` when serializing non-serializable exceptions thrown by the remote code. ([PR #141](jenkinsci/remoting#141))
* Use OID of the `ClassLoaderProxy` in error message when the proxy cannot be located in the export table. ([PR #147](jenkinsci/remoting#147))

(cherry picked from commit 815da8a)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants