[JIRA] [slack-plugin] (JENKINS-34832) Exception when saving multi-branch project

9 views
Skip to first unread message

n3o59hf@gmail.com (JIRA)

unread,
May 14, 2016, 12:48:02 PM5/14/16
to jenkinsc...@googlegroups.com
Elviss Kuštans created an issue
 
Jenkins / Bug JENKINS-34832
Exception when saving multi-branch project
Issue Type: Bug Bug
Assignee: Kurt Madel
Components: slack-plugin
Created: 2016/May/14 4:47 PM
Environment: i7-3770, 32GB ram

Jenkins 2.3
Slack Notification Plugin 2.0.1
Ubuntu 16.04 LTS

uname -a
Linux juno 4.4.0-22-generic #39-Ubuntu SMP Thu May 5 16:53:32 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

javac -version
javac 1.8.0_91

java -version
java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)

Jenkins installed from Jenkins Debian repo.
Accessed via nginx reverse proxy.
No slave nodes.
Priority: Critical Critical
Reporter: Elviss Kuštans

Tested on stable 1.6 and weekly build 2.3.

Project in question does not use any functionality from slack-plugin and there is no post-build task for slack-plugin in this project. Trying to add post-build task results in same exception.

When trying to save changes in 2 months old multi-branch project, exception happens:

{{javax.servlet.ServletException: java.lang.AssertionError: class jenkins.plugins.slack.SlackNotifier$SlackJobProperty is missing its descriptor
at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:796)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
at org.kohsuke.stapler.MetaClass$5.doDispatch(MetaClass.java:233)
at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:649)
at org.kohsuke.stapler.Stapler.service(Stapler.java:238)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669)
at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:135)
at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:126)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:49)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
at jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:93)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:553)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
at org.eclipse.jetty.server.Server.handle(Server.java:499)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)
at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.AssertionError: class jenkins.plugins.slack.SlackNotifier$SlackJobProperty is missing its descriptor
at jenkins.model.Jenkins.getDescriptorOrDie(Jenkins.java:1302)
at hudson.model.JobProperty.getDescriptor(JobProperty.java:105)
at hudson.model.JobProperty.getDescriptor(JobProperty.java:79)
at hudson.util.DescribableList.get(DescribableList.java:127)
at hudson.util.DescribableList.rebuild(DescribableList.java:168)
at hudson.model.Job.doConfigSubmit(Job.java:1218)
at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:795)
at com.github.mjdetullio.jenkins.plugins.multibranch.AbstractMultiBranchProject.submit(AbstractMultiBranchProject.java:539)
at com.cloudbees.hudson.plugins.folder.AbstractFolder.doConfigSubmit(AbstractFolder.java:686)
at com.cloudbees.hudson.plugins.folder.computed.ComputedFolder.doConfigSubmit(ComputedFolder.java:225)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:324)
at org.kohsuke.stapler.interceptor.RequirePOST$Processor.invoke(RequirePOST.java:52)
at org.kohsuke.stapler.PreInvokeInterceptedFunction.invoke(PreInvokeInterceptedFunction.java:26)
at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:167)
at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:100)
at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:124)
at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
... 58 more}}

Config from project (SCM link replaced for privacy):
{{
<?xml version='1.0' encoding='UTF-8'?>
<freestyle-multi-branch-project plugin="multi-branch-...@0.4.2">
<actions/>
<description></description>
<properties>
<com.cloudbees.hudson.plugins.folder.properties.FolderCredentialsProvider_-FolderCredentialsProperty plugin="cloudbee...@5.10">
<domainCredentialsMap class="hudson.util.CopyOnWriteMap$Hash">
<entry>
<com.cloudbees.plugins.credentials.domains.Domain plugin="crede...@1.28">
<specifications/>
</com.cloudbees.plugins.credentials.domains.Domain>
<java.util.concurrent.CopyOnWriteArrayList/>
</entry>
</domainCredentialsMap>
</com.cloudbees.hudson.plugins.folder.properties.FolderCredentialsProvider_-FolderCredentialsProperty>
</properties>
<views>
<branch-list-view>
<owner class="freestyle-multi-branch-project" reference="../../.."/>
<name>All</name>
<filterExecutors>false</filterExecutors>
<filterQueue>false</filterQueue>
<properties class="hudson.model.View$PropertyList"/>
<jobNames>
<comparator class="hudson.util.CaseInsensitiveComparator"/>
</jobNames>
<jobFilters/>
<columns>
<hudson.views.StatusColumn/>
<hudson.views.WeatherColumn/>
<hudson.views.JobColumn/>
<hudson.views.LastSuccessColumn/>
<hudson.views.LastFailureColumn/>
<hudson.views.LastDurationColumn/>
<hudson.views.BuildButtonColumn/>
</columns>
<includeRegex>.*</includeRegex>
<recurse>false</recurse>
</branch-list-view>
</views>
<viewsTabBar class="hudson.views.DefaultViewsTabBar"/>
<primaryView>All</primaryView>
<healthMetrics>
<com.cloudbees.hudson.plugins.folder.health.WorstChildHealthMetric plugin="cloudbee...@5.10"/>
</healthMetrics>
<icon class="com.cloudbees.hudson.plugins.folder.icons.StockFolderIcon" plugin="cloudbee...@5.10"/>
<orphanedItemStrategy class="com.cloudbees.hudson.plugins.folder.computed.DefaultOrphanedItemStrategy" plugin="cloudbee...@5.10">
<pruneDeadBranches>true</pruneDeadBranches>
<daysToKeep>0</daysToKeep>
<numToKeep>25</numToKeep>
</orphanedItemStrategy>
<triggers>
<hudson.triggers.TimerTrigger>
<spec>H/24 * * * *</spec>
</hudson.triggers.TimerTrigger>
</triggers>
<disabled>false</disabled>
<disabledSubProjects/>
<allowAnonymousSync>false</allowAnonymousSync>
<suppressTriggerNewBranchBuild>false</suppressTriggerNewBranchBuild>
<scmSource class="jenkins.plugins.git.GitSCMSource" plugin="g...@2.4.4">
<id>dc02f5cb-ebd5-4f16-bbe7-c4877862cb52</id>
<remote>GIT_REPOSITORY_REMOVED</remote>
<credentialsId>b09f49f3-cc0a-49ad-88b7-bde670992ea6</credentialsId>
<includes>*</includes>
<excludes></excludes>
<ignoreOnPushNotifications>false</ignoreOnPushNotifications>
</scmSource>
}}

template/config.xml with identifying info removed:

{{
<?xml version='1.0' encoding='UTF-8'?>
<project>
<keepDependencies>false</keepDependencies>
<properties>
<hudson.security.AuthorizationMatrixProperty>
<permission>com.cloudbees.plugins.credentials.CredentialsProvider.Update:user1</permission>
<permission>hudson.model.Run.Delete:user1</permission>
<permission>hudson.model.Item.Workspace:user1</permission>
<permission>com.cloudbees.plugins.credentials.CredentialsProvider.Delete:user1</permission>
<permission>com.cloudbees.plugins.credentials.CredentialsProvider.ManageDomains:user1</permission>
<permission>hudson.model.Item.Configure:user1</permission>
<permission>hudson.model.Item.Cancel:user1</permission>
<permission>hudson.model.Item.Delete:user1</permission>
<permission>hudson.model.Item.Read:user1</permission>
<permission>com.cloudbees.plugins.credentials.CredentialsProvider.View:user1</permission>
<permission>com.cloudbees.plugins.credentials.CredentialsProvider.Create:user1</permission>
<permission>hudson.model.Item.Build:user1</permission>
<permission>hudson.model.Item.Move:user1</permission>
<permission>hudson.model.Item.Discover:user1</permission>
<permission>hudson.model.Item.ViewStatus:user1</permission>
<permission>hudson.model.Run.Update:user1</permission>
</hudson.security.AuthorizationMatrixProperty>
<jenkins.plugins.slack.SlackNotifier_-SlackJobProperty plugin="sl...@2.0.1">
<teamDomain></teamDomain>
<token></token>
<room></room>
<startNotification>false</startNotification>
<notifySuccess>false</notifySuccess>
<notifyAborted>false</notifyAborted>
<notifyNotBuilt>false</notifyNotBuilt>
<notifyUnstable>false</notifyUnstable>
<notifyFailure>false</notifyFailure>
<notifyBackToNormal>false</notifyBackToNormal>
<notifyRepeatedFailure>false</notifyRepeatedFailure>
<includeTestSummary>false</includeTestSummary>
<showCommitList>false</showCommitList>
<includeCustomMessage>false</includeCustomMessage>
<customMessage></customMessage>
</jenkins.plugins.slack.SlackNotifier_-SlackJobProperty>
</properties>
<scm class="hudson.scm.NullSCM"/>
<canRoam>true</canRoam>
<disabled>true</disabled>
<blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding>
<blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding>
<triggers>
<hudson.triggers.SCMTrigger>
<spec>H/5 * * * *</spec>
<ignorePostCommitHooks>false</ignorePostCommitHooks>
</hudson.triggers.SCMTrigger>
</triggers>
<concurrentBuild>false</concurrentBuild>
<builders>
<hudson.plugins.gradle.Gradle plugin="gra...@1.24">
<description></description>
<switches></switches>
<tasks>app:assembleDebug</tasks>
<rootBuildScriptDir></rootBuildScriptDir>
<buildFile></buildFile>
<gradleName>(Default)</gradleName>
<useWrapper>true</useWrapper>
<makeExecutable>true</makeExecutable>
<fromRootBuildScriptDir>true</fromRootBuildScriptDir>
<useWorkspaceAsHome>false</useWorkspaceAsHome>
</hudson.plugins.gradle.Gradle>
</builders>
<publishers>
<hudson.tasks.ArtifactArchiver>
<artifacts>app/build/outputs/apk/*.apk</artifacts>
<allowEmptyArchive>false</allowEmptyArchive>
<onlyIfSuccessful>false</onlyIfSuccessful>
<fingerprint>false</fingerprint>
<defaultExcludes>true</defaultExcludes>
<caseSensitive>true</caseSensitive>
</hudson.tasks.ArtifactArchiver>
</publishers>
<buildWrappers/>
}}

Add Comment Add Comment
 
This message was sent by Atlassian JIRA (v6.4.2#64017-sha1:e244265)
Atlassian logo

n3o59hf@gmail.com (JIRA)

unread,
May 14, 2016, 12:50:03 PM5/14/16
to jenkinsc...@googlegroups.com
Elviss Kuštans updated an issue
Change By: Elviss Kuštans
Tested on stable 1.6 and weekly build 2.3.

Project in question does not use any functionality from slack-plugin and there is no post-build task for slack-plugin in this project. Trying to add post-build task results in same exception.

When trying to save changes in 2 months old multi-branch project, exception happens:



{ { code:javaStackTrace}

{code
} }



Config from project (SCM link replaced for privacy):
{ { code:xml}
{code } }

template/config.xml with identifying info removed:

{ { code:xml}
{code } }

n3o59hf@gmail.com (JIRA)

unread,
May 14, 2016, 12:51:02 PM5/14/16
to jenkinsc...@googlegroups.com
Elviss Kuštans updated an issue
Tested on stable 1.6 and weekly build 2.3.

Project in question does not use any functionality from slack-plugin and there is no post-build task for slack-plugin in this project. Trying to add post-build task results in same exception.

When trying to save changes in 2 months old multi-branch project, exception happens:



{code: javaStackTrace none }

yoann.dubreuil@gmail.com (JIRA)

unread,
Nov 3, 2016, 10:11:04 AM11/3/16
to jenkinsc...@googlegroups.com
Yoann Dubreuil commented on Bug JENKINS-34832
 
Re: Exception when saving multi-branch project

Multibranch Freestyle plugin was refactored to use Branch API plugin, so I guess that starting with 0.5.1, it's not an issue anymore. Could you try on that version?

This message was sent by Atlassian JIRA (v7.1.7#71011-sha1:2526d7c)
Atlassian logo

timjacomb1@gmail.com (JIRA)

unread,
Nov 30, 2018, 5:24:03 AM11/30/18
to jenkinsc...@googlegroups.com
Tim Jacomb closed an issue as Fixed
 

wasn't retested in a long time, closing old issues

Change By: Tim Jacomb
Status: Open Closed
Resolution: Fixed
This message was sent by Atlassian Jira (v7.11.2#711002-sha1:fdc329d)
Reply all
Reply to author
Forward
0 new messages