Uploaded image for project: 'Infinispan'
  1. Infinispan
  2. ISPN-8410

BoundedOffHeapDataContainer can crash JVM

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 9.2.0.Beta1
    • 9.1.1.Final, 9.2.0.Alpha1
    • Core
    • None

    Description

      I have written a test that uses progressively larger values in order to test for fragmentation in the native heap, but it crashes the JVM:

      siginfo: si_signo: 11 (SIGSEGV), si_code: 1 (SEGV_MAPERR), si_addr: 0x0000000000000008
      
      Stack: [0x00007f8456172000,0x00007f8456273000],  sp=0x00007f84562709a0,  free space=1018k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      J 3123 C1 org.infinispan.container.offheap.BoundedOffHeapDataContainer.entryRemoved(J)V (357 bytes) @ 0x00007f84b9673b23 [0x00007f84b96729a0+0x1183]
      J 3122 C1 org.infinispan.container.offheap.OffHeapDataContainer.performRemove(JLjava/lang/Object;)Lorg/infinispan/container/entries/InternalCacheEntry; (124 bytes) @ 0x00007f84b9780fb4 [0x00007f84b97807c0+0x7f4]
      J 3116 C1 org.infinispan.container.offheap.BoundedOffHeapDataContainer.ensureSize()V (401 bytes) @ 0x00007f84b97483bc [0x00007f84b9746a80+0x193c]
      J 3095 C1 org.infinispan.container.offheap.BoundedOffHeapDataContainer.put(Ljava/lang/Object;Ljava/lang/Object;Lorg/infinispan/metadata/Metadata;)V (14 bytes) @ 0x00007f84b9267f8c [0x00007f84b9267ca0+0x2ec]
      J 3091 C2 org.infinispan.statetransfer.CommitManager.commit(Lorg/infinispan/container/entries/CacheEntry;Lorg/infinispan/context/Flag;ZLorg/infinispan/context/InvocationContext;)V (146 bytes) @ 0x00007f84b9248aac [0x00007f84b9248260+0x84c]
      J 2655 C1 org.infinispan.interceptors.locking.ClusteringDependentLogic$LocalLogic.commitSingleEntry(Lorg/infinispan/container/entries/CacheEntry;Lorg/infinispan/commands/FlagAffectedCommand;Lorg/infinispan/context/InvocationContext;Lorg/infinispan/context/Flag;Z)V (129 bytes) @ 0x00007f84b9830d54 [0x00007f84b9830420+0x934]
      J 2628 C1 org.infinispan.interceptors.locking.ClusteringDependentLogic$AbstractClusteringDependentLogic.commitEntry(Lorg/infinispan/container/entries/CacheEntry;Lorg/infinispan/commands/FlagAffectedCommand;Lorg/infinispan/context/InvocationContext;Lorg/infinispan/context/Flag;Z)V (36 bytes) @ 0x00007f84b9821cfc [0x00007f84b98219a0+0x35c]
      J 2626 C1 org.infinispan.interceptors.impl.EntryWrappingInterceptor.commitEntryIfNeeded(Lorg/infinispan/context/InvocationContext;Lorg/infinispan/commands/FlagAffectedCommand;Lorg/infinispan/container/entries/CacheEntry;Lorg/infinispan/context/Flag;)Z (53 bytes) @ 0x00007f84b9822e64 [0x00007f84b9822580+0x8e4]
      J 3038 C1 org.infinispan.interceptors.impl.EntryWrappingInterceptor.commitContextEntries(Lorg/infinispan/context/InvocationContext;Lorg/infinispan/commands/FlagAffectedCommand;)V (167 bytes) @ 0x00007f84b91970ac [0x00007f84b9195d00+0x13ac]
      J 3033 C2 org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextThenAccept(Lorg/infinispan/context/InvocationContext;Lorg/infinispan/commands/VisitableCommand;Lorg/infinispan/interceptors/InvocationSuccessAction;)Ljava/lang/Object; (81 bytes) @ 0x00007f84b99a1cec [0x00007f84b99a17c0+0x52c]
      J 3084 C2 org.infinispan.interceptors.impl.EntryWrappingInterceptor.visitPutKeyValueCommand(Lorg/infinispan/context/InvocationContext;Lorg/infinispan/commands/write/PutKeyValueCommand;)Ljava/lang/Object; (13 bytes) @ 0x00007f84b9111c78 [0x00007f84b9111bc0+0xb8]
      J 2979 C2 org.infinispan.interceptors.locking.AbstractLockingInterceptor.visitPutKeyValueCommand(Lorg/infinispan/context/InvocationContext;Lorg/infinispan/commands/write/PutKeyValueCommand;)Ljava/lang/Object; (24 bytes) @ 0x00007f84b99c06b4 [0x00007f84b99bf1a0+0x1514]
      J 3026 C2 org.infinispan.interceptors.impl.CacheMgmtInterceptor.visitPutKeyValueCommand(Lorg/infinispan/context/InvocationContext;Lorg/infinispan/commands/write/PutKeyValueCommand;)Ljava/lang/Object; (7 bytes) @ 0x00007f84b913567c [0x00007f84b9135620+0x5c]
      J 3064 C2 org.infinispan.cache.impl.EncoderCache.put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; (27 bytes) @ 0x00007f84b9a3baf4 [0x00007f84b9a3b4a0+0x654]
      j  org.infinispan.container.offheap.OffHeapBoundedSingleNodeStressTest.lambda$testLotsOfWrites$0(Ljava/util/Map;)Ljava/lang/Void;+21
      j  org.infinispan.container.offheap.OffHeapBoundedSingleNodeStressTest$$Lambda$172.call()Ljava/lang/Object;+8
      

      Attachments

        Issue Links

          Activity

            People

              dberinde@redhat.com Dan Berindei (Inactive)
              dberinde@redhat.com Dan Berindei (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: