• Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: Critical Critical
    • ldap-plugin
    • None
    • Jenkins 2.479.1, Docker 26.1.4, Ubuntu Linux 22.04.4 LTS (kernel 5.15.0-112-generic), Eclipse Adoptium OpenJDK 64-Bit Server VM 17.0.13+11

      We upgraded our lab docker host with the latest LTS (2.479.1) from the prior version (2.462.3). On start, the server says "Jenkins is fully up and running" and is immediately followed by a string of exceptions in what looks like the ldap-plugin.

      One example from my OpenTelemetry traces:

      ```

      body: Caught unhandled exception with ID 3ac60ba0-9860-4592-85d1-89a4aefd4842
      container.id: 967a58704a06337aa70b957f001356bc391c90a2573795d887617880ae8591c9
      exception.message: 'void org.springframework.util.Assert.isTrue(boolean)'
      exception.stacktrace: java.lang.NoSuchMethodError: 'void org.springframework.util.Assert.isTrue(boolean)' at PluginClassLoader for ldap//org.springframework.ldap.support.LdapUtils$CollectingAttributeValueCallbackHandler.handleAttributeValue(LdapUtils.java:343) at PluginClassLoader for ldap//org.springframework.ldap.support.LdapUtils.handleAttributeValue(LdapUtils.java:321) at PluginClassLoader for ldap//org.springframework.ldap.support.LdapUtils.iterateAttributeValues(LdapUtils.java:305) at PluginClassLoader for ldap//org.springframework.ldap.support.LdapUtils.collectAttributeValues(LdapUtils.java:287) at PluginClassLoader for ldap//org.springframework.ldap.core.DirContextAdapter.collectAttributeValuesAsList(DirContextAdapter.java:787) at PluginClassLoader for ldap//org.springframework.ldap.core.DirContextAdapter.getObjectAttributes(DirContextAdapter.java:776) at PluginClassLoader for ldap//org.springframework.security.ldap.SpringSecurityLdapTemplate.extractStringAttributeValues(SpringSecurityLdapTemplate.java:224) at PluginClassLoader for ldap//org.springframework.security.ldap.SpringSecurityLdapTemplate.lambda$searchForMultipleAttributeValues$2(SpringSecurityLdapTemplate.java:187) at PluginClassLoader for ldap//org.springframework.ldap.core.ContextMapperCallbackHandler.getObjectFromNameClassPair(ContextMapperCallbackHandler.java:69) at PluginClassLoader for ldap//org.springframework.ldap.core.CollectingNameClassPairCallbackHandler.handleNameClassPair(CollectingNameClassPairCallbackHandler.java:50) at PluginClassLoader for ldap//org.springframework.ldap.core.LdapTemplate.search(LdapTemplate.java:371) at PluginClassLoader for ldap//org.springframework.ldap.core.LdapTemplate.search(LdapTemplate.java:332) at PluginClassLoader for ldap//org.springframework.ldap.core.LdapTemplate.search(LdapTemplate.java:633) at PluginClassLoader for ldap//org.springframework.ldap.core.LdapTemplate.search(LdapTemplate.java:574) at PluginClassLoader for ldap//org.springframework.security.ldap.SpringSecurityLdapTemplate.searchForMultipleAttributeValues(SpringSecurityLdapTemplate.java:197) at PluginClassLoader for ldap//org.springframework.security.ldap.userdetails.DefaultLdapAuthoritiesPopulator.getGroupMembershipRoles(DefaultLdapAuthoritiesPopulator.java:223) at PluginClassLoader for ldap//hudson.security.LDAPSecurityRealm$AuthoritiesPopulatorImpl.getGroupMembershipRoles(LDAPSecurityRealm.java:1427) at PluginClassLoader for ldap//org.springframework.security.ldap.userdetails.DefaultLdapAuthoritiesPopulator.getGrantedAuthorities(DefaultLdapAuthoritiesPopulator.java:202) at PluginClassLoader for ldap//jenkins.security.plugins.ldap.FromGroupSearchLDAPGroupMembershipStrategy.getGrantedAuthorities(FromGroupSearchLDAPGroupMembershipStrategy.java:81) at PluginClassLoader for ldap//hudson.security.LDAPSecurityRealm$LDAPUserDetailsService.loadUserByUsername(LDAPSecurityRealm.java:1311) at PluginClassLoader for ldap//hudson.security.LDAPSecurityRealm$DelegateLDAPUserDetailsService.loadUserByUsername(LDAPSecurityRealm.java:1232) at jenkins.security.ImpersonatingUserDetailsService2.loadUserByUsername(ImpersonatingUserDetailsService2.java:29) at hudson.security.TokenBasedRememberMeServices2.processAutoLoginCookie(TokenBasedRememberMeServices2.java:195) at org.springframework.security.web.authentication.rememberme.AbstractRememberMeServices.autoLogin(AbstractRememberMeServices.java:135) at org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:113) at org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:101) at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:227) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:221) at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99) at jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:98) at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:117) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:63) at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99) at hudson.security.ChainedServletFilter2.doFilter(ChainedServletFilter2.java:111) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:173) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638) at org.kohsuke.stapler.UncaughtExceptionFilter.doFilter(UncaughtExceptionFilter.java:26) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638) at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:86) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638) at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:31) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638) at jenkins.security.SuspiciousRequestFilter.doFilter(SuspiciousRequestFilter.java:38) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler.doHandle(ServletHandler.java:526) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.handle(ScopedHandler.java:127) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.security.SecurityHandler.handle(SecurityHandler.java:574) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.HandlerWrapper.handle(HandlerWrapper.java:124) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.nextHandle(ScopedHandler.java:197) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.SessionHandler.doHandle(SessionHandler.java:609) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.nextHandle(ScopedHandler.java:195) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ContextHandler.doHandle(ContextHandler.java:1035) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.nextScope(ScopedHandler.java:164) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler.doScope(ServletHandler.java:483) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.nextScope(ScopedHandler.java:162) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.SessionHandler.doScope(SessionHandler.java:586) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.nextScope(ScopedHandler.java:162) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ContextHandler.doScope(ContextHandler.java:956) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.handle(ScopedHandler.java:125) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ContextHandler.handle(ContextHandler.java:1694) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.HttpChannel$RequestDispatchable.dispatch(HttpChannel.java:1576) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.HttpChannel.dispatch(HttpChannel.java:738) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.HttpChannel.handle(HttpChannel.java:511) at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ContextHandler$CoreContextHandler$CoreToNestedHandler.handle(ContextHandler.java:2862) at Jenkins Main ClassLoader//org.eclipse.jetty.server.handler.ContextHandler.handle(ContextHandler.java:1060) at Jenkins Main ClassLoader//org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:597) at Jenkins Main ClassLoader//org.eclipse.jetty.server.Server.handle(Server.java:181) at Jenkins Main ClassLoader//org.eclipse.jetty.server.internal.HttpChannelState$HandlerInvoker.run(HttpChannelState.java:661) at Jenkins Main ClassLoader//org.eclipse.jetty.server.internal.HttpConnection.onFillable(HttpConnection.java:406) at Jenkins Main ClassLoader//org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:322) at Jenkins Main ClassLoader//org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:99) at Jenkins Main ClassLoader//org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53) at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.runTask(AdaptiveExecutionStrategy.java:478) at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.consumeTask(AdaptiveExecutionStrategy.java:441) at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.tryProduce(AdaptiveExecutionStrategy.java:293) at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.run(AdaptiveExecutionStrategy.java:201) at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:311) at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:979) at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.doRunJob(QueuedThreadPool.java:1209) at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1164) at java.base/java.lang.Thread.run(Unknown Source)
      exception.type: java.lang.NoSuchMethodError
      flags: 0
      host.arch: amd64
      host.name: 967a58704a06
      jenkins.opentelemetry.plugin.version: 3.1419.v3b_27ca_911066
      jenkins.url: https://lab-docker-01.dirtt.local/
      jenkins.version: 2.479.1
      library.name: hudson.init.impl.InstallUncaughtExceptionHandler
      meta.signal_type: log
      os.description: Linux 5.15.0-112-generic
      os.type: linux
      process.runtime.description: Eclipse Adoptium OpenJDK 64-Bit Server VM 17.0.13+11
      process.runtime.name: OpenJDK Runtime Environment
      process.runtime.version: 17.0.13+11
      service.instance.id: 92d13c61d33fa4989b40bb0a5f5e5164
      service.name: lab-docker-01
      service.namespace: jenkins
      service.version: 2.479.1
      severity: warn
      severity_code: 13
      severity_text: WARNING
      telemetry.sdk.language: java
      telemetry.sdk.name: opentelemetry
      telemetry.sdk.version: 1.40.0
      thread.id: 89

      ```

       

      I am probably going to switch to internal security and rebuild my ldap configuration

          [JENKINS-74787] Upgrade to 2.479.1 breaks LDAP

          Mark Waite added a comment -

          The upgrade guide for the release warns that it requires an upgraded LDAP plugin. It says:

          Users of the LDAP plugin must upgrade it to version 733.vd3700c27b_043 in tandem with upgrading Jenkins core

          Mark Waite added a comment - The upgrade guide for the release warns that it requires an upgraded LDAP plugin. It says: Users of the LDAP plugin must upgrade it to version 733.vd3700c27b_043 in tandem with upgrading Jenkins core

          Basil Crow added a comment -

          Duplicates JENKINS-73745.

          Basil Crow added a comment - Duplicates JENKINS-73745 .

          Ken Rachynski added a comment -

          Oh dang. I haven't had to read that guide in a long time and have our processes automated. Will add that to the project readme that builds our custom controller so that we're not caught unaware in the future.

          Thanks!

          Ken Rachynski added a comment - Oh dang. I haven't had to read that guide in a long time and have our processes automated. Will add that to the project readme that builds our custom controller so that we're not caught unaware in the future. Thanks!

            Unassigned Unassigned
            krachynski Ken Rachynski
            Votes:
            1 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: