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

When deploying properties with a NuGet file in Artifactory HA mode the indexer is not working

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: High
    • Resolution: Fixed
    • Affects Version/s: 4.11.1
    • Fix Version/s: 4.12.0
    • Component/s: NuGet
    • Labels:
      None

      Description

      If you deploy manually the NuGet package and attaching properties during the deployment, the indexer is not working and the properties are not being calculated. Steps to reproduce:

      1. Run Arti 4.9.0
      2. Create nuget repo
      3. Upgrade to 4.11.1
      4. Run curl -uadmin:password -T jQuery.2.1.3.nupkg "http://localhost:8081/artifactory/nuget-local/jQuery.2.1.3.nupkg;build.name=test;build.number=12"

      The artifact is being deployed with only build.name and build.number properties. The other properties that need to be calculated from the NuGet indexer are missing and in the artifactory.log there is the following error:

      2016-08-22 06:21:53,431 [http-nio-8081-exec-6] [INFO ] (o.a.e.UploadServiceImpl:457) - Deploy to 'nuget-local:jQuery.2.1.3.nupkg' Content-Length: 224111
      2016-08-22 06:21:53,453 [art-exec-235] [INFO ] (o.j.r.n.NuGetWorkContext:68) - Indexing NuGet metadata for repo 'nuget-local' on path 'jQuery.2.1.3.nupkg'
      2016-08-22 06:21:53,463 [art-exec-235] [WARN ] (o.a.s.f.l.SessionLockEntry:116) - Mutable item 'nuget-local:jQuery.2.1.3.nupkg' has local modifications that will be discarded.
      2016-08-22 06:21:53,464 [art-exec-235] [ERROR] (o.a.s.a.AsyncAdvice :195) - Could not execute async method: 'public abstract void org.artifactory.addon.NuGetAddon.extractNuPkgInfo(org.artifactory.fs.FileInfo,org.artifactory.common.MutableStatusHolder,boolean)'.
      com.hazelcast.nio.serialization.HazelcastSerializationException: java.io.NotSerializableException: org.artifactory.storage.db.fs.entity.NodeProperty
       at com.hazelcast.internal.serialization.impl.SerializationUtil.handleException(SerializationUtil.java:61) ~[hazelcast-3.6.1.jar:3.6.1]
       at com.hazelcast.internal.serialization.impl.AbstractSerializationService.toBytes(AbstractSerializationService.java:141) ~[hazelcast-3.6.1.jar:3.6.1]
       at com.hazelcast.internal.serialization.impl.AbstractSerializationService.toData(AbstractSerializationService.java:116) ~[hazelcast-3.6.1.jar:3.6.1]
       at com.hazelcast.internal.serialization.impl.AbstractSerializationService.toData(AbstractSerializationService.java:104) ~[hazelcast-3.6.1.jar:3.6.1]
       at com.hazelcast.spi.impl.NodeEngineImpl.toData(NodeEngineImpl.java:229) ~[hazelcast-3.6.1.jar:3.6.1]
       at com.hazelcast.topic.impl.TopicProxy.publish(TopicProxy.java:33) ~[hazelcast-3.6.1.jar:3.6.1]
       at org.artifactory.addon.ha.cluster.HazelcastServiceImpl.sendMessage(HazelcastServiceImpl.java:224) ~[artifactory-addon-ha-4.11.1.jar:na]
       at org.artifactory.addon.ha.HaAddonImpl.notify(HaAddonImpl.java:367) ~[artifactory-addon-ha-4.11.1.jar:na]
       at org.artifactory.addon.nuget.NuGetAddonImpl.addNuPkgToRepoCache(NuGetAddonImpl.java:266) ~[artifactory-addon-nuget-4.11.1.jar:na]
       at org.artifactory.addon.nuget.NuGetAddonImpl.extractNuPkgInfo(NuGetAddonImpl.java:86) ~[artifactory-addon-nuget-4.11.1.jar:na]
       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_77]
       at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_77]
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_77]
       at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_77]
       at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317) ~[spring-aop-4.1.5.RELEASE.jar:4.1.5.RELEASE]
       at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190) ~[spring-aop-4.1.5.RELEASE.jar:4.1.5.RELEASE]
       at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) ~[spring-aop-4.1.5.RELEASE.jar:4.1.5.RELEASE]
       at org.artifactory.schedule.aop.TraceableMethodInvocation.proceed(TraceableMethodInvocation.java:58) ~[artifactory-core-4.11.1.jar:na]
       at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99) ~[spring-tx-4.1.5.RELEASE.jar:4.1.5.RELEASE]
       at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281) ~[spring-tx-4.1.5.RELEASE.jar:4.1.5.RELEASE]
       at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96) ~[spring-tx-4.1.5.RELEASE.jar:4.1.5.RELEASE]
       at org.artifactory.storage.fs.lock.aop.LockingAdvice.invoke(LockingAdvice.java:76) ~[artifactory-storage-common-4.11.1.jar:na]
       at org.artifactory.schedule.aop.AsyncAdvice.doInvoke(AsyncAdvice.java:266) ~[artifactory-core-4.11.1.jar:na]
       at org.artifactory.schedule.aop.CompoundInvocation.proceed(CompoundInvocation.java:58) ~[artifactory-core-4.11.1.jar:na]
       at org.artifactory.schedule.aop.AsyncAdvice.lambda$0(AsyncAdvice.java:190) ~[artifactory-core-4.11.1.jar:na]
       at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[na:1.8.0_77]
       at org.artifactory.schedule.ArtifactoryConcurrentExecutor$RunnableWrapper.run(ArtifactoryConcurrentExecutor.java:104) ~[artifactory-storage-common-4.11.1.jar:na]
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_77]
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ~[na:1.8.0_77]
       at java.lang.Thread.run(Thread.java:745) ~[na:1.8.0_77]
      Caused by: java.io.NotSerializableException: org.artifactory.storage.db.fs.entity.NodeProperty
       at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1184) ~[na:1.8.0_77]
       at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:348) ~[na:1.8.0_77]
       at com.google.common.collect.LinkedHashMultimap.writeObject(LinkedHashMultimap.java:549) ~[guava-18.0.jar:na]
       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_77]
       at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_77]
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_77]
       at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_77]
       at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1028) ~[na:1.8.0_77]
       at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1496) ~[na:1.8.0_77]
       at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) ~[na:1.8.0_77]
       at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) ~[na:1.8.0_77]
       at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548) ~[na:1.8.0_77]
       at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509) ~[na:1.8.0_77]
       at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) ~[na:1.8.0_77]
       at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) ~[na:1.8.0_77]
       at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548) ~[na:1.8.0_77]
       at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509) ~[na:1.8.0_77]
       at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) ~[na:1.8.0_77]
       at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) ~[na:1.8.0_77]
       at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:348) ~[na:1.8.0_77]
       at com.hazelcast.internal.serialization.impl.JavaDefaultSerializers$JavaSerializer.write(JavaDefaultSerializers.java:242) ~[hazelcast-3.6.1.jar:3.6.1]
       at com.hazelcast.internal.serialization.impl.StreamSerializerAdapter.write(StreamSerializerAdapter.java:41) ~[hazelcast-3.6.1.jar:3.6.1]
       at com.hazelcast.internal.serialization.impl.AbstractSerializationService.toBytes(AbstractSerializationService.java:138) ~[hazelcast-3.6.1.jar:3.6.1]
       ... 28 common frames omitted
      
      

        Attachments

          Activity

            People

            • Assignee:
              gidis Gidi Shabat
              Reporter:
              alexeiv Alexei Vainshtein
              Assigned QA:
              Mor Iluz (Inactive)
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: