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

Fix: Failed to serialize #8

Merged
merged 1 commit into from Jan 6, 2015
Merged

Conversation

sue445
Copy link
Contributor

@sue445 sue445 commented Dec 30, 2014

(英語で説明できるかどうか怪しかったので日本語で失礼します)

Jenkinsグローバル設定やジョブ設定をファイルに保存する時に高確率でシリアライズエラーになる(一度起きるとサーバを再起動しないと解消しない)バグを修正しています。

スタックトレース
https://gist.github.com/sue445/9dedd61faab63a87c880

設定保存時にJenkinsがインスタンス変数をシリアライズしてファイルに書きだそうとしてるのですが、プラグインの設定とは関係ないインスタンス( ジョブ実行時に作られる buildlistener )をシリアライズしようとしてエラーになってた模様です。

自分のJenkinsで数日間試用してみてエラーが再発しなくなったのを確認したのでPRを投げます。

本来ならシリアライズすべきでないものはインスタンス変数に持たせないのが正解だと思うのですが、インスタンス変数で持たせるのをやめると buildlistener を引数で持ち回すことになり冗長になるので transient をつけてシリアライズ対象外にしています。

vexus2 added a commit that referenced this pull request Jan 6, 2015
@vexus2 vexus2 merged commit ca178d6 into vexus2:master Jan 6, 2015
@sue445 sue445 deleted the feature/transient branch January 6, 2015 04:58
@sue445
Copy link
Contributor Author

sue445 commented Jan 6, 2015

😄

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants