Uploaded image for project: 'Artifactory Binary Repository'
  1. Artifactory Binary Repository
  2. RTFACT-23781

Replication events can run into StringIndexOutOfBoundsException

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Done
    • Priority: 4 - Normal
    • Resolution: Done
    • Affects Version/s: 7.9.0
    • Fix Version/s: 7.10.5
    • Component/s: None
    • Labels:
      None
    • Severity:
      Medium

      Description

      2020-10-27T15:16:14.434Z [jfrt ] [ERROR] [344dad174c874cdd] [actionSynchronizationUtils:174] [tp-nio-8081-exec-880] - TransactionSynchronization.afterCompletion threw exception
      java.lang.StringIndexOutOfBoundsException: String index out of range: 69
              at java.base/java.lang.StringLatin1.charAt(StringLatin1.java:47)
              at java.base/java.lang.String.charAt(String.java:693)
              at java.base/java.util.regex.Pattern$BmpCharProperty.match(Pattern.java:3963)
              at java.base/java.util.regex.Pattern$CharPropertyGreedy.match(Pattern.java:4306)
              at java.base/java.util.regex.Pattern$Branch.match(Pattern.java:4749)
              at java.base/java.util.regex.Pattern$GroupHead.match(Pattern.java:4804)
              at java.base/java.util.regex.Matcher.match(Matcher.java:1756)
              at java.base/java.util.regex.Matcher.matches(Matcher.java:713)
              at org.artifactory.addon.docker.rest.v2.repo.expirable.DockerTagsIndexChecker.isLocalGenerated(DockerTagsIndexChecker.java:53)
              at org.artifactory.repo.cache.expirable.CacheExpiryImpl.lambda$isMatchAnyLocalGenerated$2(CacheExpiryImpl.java:133)
              at java.base/java.util.stream.MatchOps$1MatchSink.accept(MatchOps.java:90)
              at java.base/java.util.stream.ReferencePipeline$11$1.accept(ReferencePipeline.java:442)
              at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
              at java.base/java.util.HashMap$KeySpliterator.tryAdvance(HashMap.java:1624)
              at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:127)
              at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:502)
              at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:488)
              at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
              at java.base/java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:230)
              at java.base/java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:196)
              at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
              at java.base/java.util.stream.ReferencePipeline.anyMatch(ReferencePipeline.java:528)
              at org.artifactory.repo.cache.expirable.CacheExpiryImpl.isMatchAnyLocalGenerated(CacheExpiryImpl.java:133)
              at org.artifactory.repo.cache.expirable.CacheExpiryImpl.isLocalGenerated(CacheExpiryImpl.java:118)
              at jdk.internal.reflect.GeneratedMethodAccessor268.invoke(Unknown Source)
              at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
              at java.base/java.lang.reflect.Method.invoke(Method.java:566)
              at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:343)
              at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:205)
              at com.sun.proxy.$Proxy316.isLocalGenerated(Unknown Source)
              at org.artifactory.addon.replication.core.EventReplicationSessionResource.lambda$offerValidLocalReplicationEvents$0(EventReplicationSessionResource.java:62)
              at java.base/java.util.ArrayList.forEach(ArrayList.java:1540)
              at org.artifactory.addon.replication.core.EventReplicationSessionResource.offerValidLocalReplicationEvents(EventReplicationSessionResource.java:54)
              at org.artifactory.addon.replication.core.EventReplicationSessionResource.afterCompletion(EventReplicationSessionResource.java:41)
              at org.artifactory.storage.tx.SessionResourceManagerImpl.afterCompletion(SessionResourceManagerImpl.java:67)
              at org.artifactory.storage.db.fs.session.SqlStorageSession.afterCompletion(SqlStorageSession.java:134)
              at org.artifactory.storage.db.spring.SessionSynchronization.afterCompletion(SessionSynchronization.java:94)
              at org.springframework.transaction.support.TransactionSynchronizationUtils.invokeAfterCompletion(TransactionSynchronizationUtils.java:171)
              at org.springframework.transaction.support.AbstractPlatformTransactionManager.invokeAfterCompletion(AbstractPlatformTransactionManager.java:992)
              at org.springframework.transaction.support.AbstractPlatformTransactionManager.triggerAfterCompletion(AbstractPlatformTransactionManager.java:967)
              at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:788)
              at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:714)
              at org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:534)
              at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:305)
              at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:98)
              at org.artifactory.storage.fs.lock.aop.LockingAdvice.invoke(LockingAdvice.java:76)
              at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
              at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:212)
              at com.sun.proxy.$Proxy253.addProperty(Unknown Source)
              at org.artifactory.addon.properties.PropertiesAddonImpl.saveProperties(PropertiesAddonImpl.java:203)
              at org.artifactory.addon.properties.PropertiesAddonImpl.savePathProperties(PropertiesAddonImpl.java:218)
              at org.artifactory.rest.resource.artifact.ArtifactResource.savePathProperties(ArtifactResource.java:186)
              at jdk.internal.reflect.GeneratedMethodAccessor663.invoke(Unknown Source)
              at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
              at java.base/java.lang.reflect.Method.invoke(Method.java:566)
              at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:76)
              at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:148)
              at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:191)
              at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:200)
              at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:103)
              at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:493)
              at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:415)
              at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:104)
              at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:277)
              at org.glassfish.jersey.internal.Errors$1.call(Errors.java:272)
              at org.glassfish.jersey.internal.Errors$1.call(Errors.java:268)
              at org.glassfish.jersey.internal.Errors.process(Errors.java:316)
              at org.glassfish.jersey.internal.Errors.process(Errors.java:298)
              at org.glassfish.jersey.internal.Errors.process(Errors.java:268)
              at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:289)
              at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:256)
              at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:703)
              at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:416)
              at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:370)
              at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:389)
              at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:342)
              at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:229)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
              at org.artifactory.webapp.servlet.RepoFilter.execute(RepoFilter.java:201)
              at org.artifactory.webapp.servlet.RepoFilter.doFilter(RepoFilter.java:103)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
              at org.artifactory.webapp.servlet.AccessFilter.useAuthenticationAndContinue(AccessFilter.java:421)
              at org.artifactory.webapp.servlet.AccessFilter.authenticateAndExecute(AccessFilter.java:306)
              at org.artifactory.webapp.servlet.AccessFilter.doFilterInternal(AccessFilter.java:177)
              at org.artifactory.webapp.servlet.AccessFilter.doFilter(AccessFilter.java:127)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
              at org.artifactory.webapp.servlet.RequestFilter.doFilter(RequestFilter.java:82)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
              at org.artifactory.webapp.servlet.ArtifactoryCsrfFilter.doFilter(ArtifactoryCsrfFilter.java:96)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
              at org.springframework.session.web.http.SessionRepositoryFilter.doFilterInternal(SessionRepositoryFilter.java:164)
              at org.springframework.session.web.http.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:80)
              at org.artifactory.webapp.servlet.SessionFilter.doFilter(SessionFilter.java:68)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
              at org.artifactory.webapp.servlet.ArtifactoryTracingFilter.doFilter(ArtifactoryTracingFilter.java:32)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
              at org.artifactory.webapp.servlet.ArtifactoryFilter.doFilter(ArtifactoryFilter.java:137)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
              at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
              at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
              at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:543)
              at org.apache.catalina.valves.rewrite.RewriteValve.invoke(RewriteValve.java:305)
              at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
              at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)

        Attachments

          Activity

            People

            Assignee:
            hezic Hezi Cohen
            Reporter:
            shayb Shay Bagants
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Sync Status

                Connection: RTFACT Sync
                RTMID-23781 -
                SYNCHRONIZED
                • Last Sync Date: