final class org.apache.lucene.index.DocumentsWriterDeleteQueue implements org.apache.lucene.util.Accountable, java.io.Closeable
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: org.apache.lucene.index.DocumentsWriterDeleteQueue
super_class: java.lang.Object
{
private volatile org.apache.lucene.index.DocumentsWriterDeleteQueue$Node<?> tail;
descriptor: Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
Signature: Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node<*>;
private volatile boolean closed;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private final org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice globalSlice;
descriptor: Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.apache.lucene.index.BufferedUpdates globalBufferedUpdates;
descriptor: Lorg/apache/lucene/index/BufferedUpdates;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final java.util.concurrent.locks.ReentrantLock globalBufferLock;
descriptor: Ljava/util/concurrent/locks/ReentrantLock;
flags: (0x0010) ACC_FINAL
final long generation;
descriptor: J
flags: (0x0010) ACC_FINAL
private final java.util.concurrent.atomic.AtomicLong nextSeqNo;
descriptor: Ljava/util/concurrent/atomic/AtomicLong;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.apache.lucene.util.InfoStream infoStream;
descriptor: Lorg/apache/lucene/util/InfoStream;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private volatile long maxSeqNo;
descriptor: J
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private final long startSeqNo;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.function.LongSupplier previousMaxSeqId;
descriptor: Ljava/util/function/LongSupplier;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private boolean advanced;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.apache.lucene.index.DocumentsWriterDeleteQueue.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(org.apache.lucene.util.InfoStream);
descriptor: (Lorg/apache/lucene/util/InfoStream;)V
flags: (0x0000)
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
lconst_0
lconst_1
invokedynamic getAsLong()Ljava/util/function/LongSupplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()J
org/apache/lucene/index/DocumentsWriterDeleteQueue.lambda$0()J (6)
()J
invokespecial org.apache.lucene.index.DocumentsWriterDeleteQueue.<init>:(Lorg/apache/lucene/util/InfoStream;JJLjava/util/function/LongSupplier;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
0 2 1 infoStream Lorg/apache/lucene/util/InfoStream;
MethodParameters:
Name Flags
infoStream
private void <init>(org.apache.lucene.util.InfoStream, long, long, java.util.function.LongSupplier);
descriptor: (Lorg/apache/lucene/util/InfoStream;JJLjava/util/function/LongSupplier;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 4 start local 6 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_0
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue.closed:Z
2: aload 0
new java.util.concurrent.locks.ReentrantLock
dup
invokespecial java.util.concurrent.locks.ReentrantLock.<init>:()V
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
3: aload 0
ldc 9223372036854775807
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue.maxSeqNo:J
4: aload 0
aload 1
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue.infoStream:Lorg/apache/lucene/util/InfoStream;
5: aload 0
new org.apache.lucene.index.BufferedUpdates
dup
ldc "global"
invokespecial org.apache.lucene.index.BufferedUpdates.<init>:(Ljava/lang/String;)V
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferedUpdates:Lorg/apache/lucene/index/BufferedUpdates;
6: aload 0
lload 2
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue.generation:J
7: aload 0
new java.util.concurrent.atomic.AtomicLong
dup
lload 4
invokespecial java.util.concurrent.atomic.AtomicLong.<init>:(J)V
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue.nextSeqNo:Ljava/util/concurrent/atomic/AtomicLong;
8: aload 0
lload 4
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue.startSeqNo:J
9: aload 0
aload 6
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue.previousMaxSeqId:Ljava/util/function/LongSupplier;
10: aload 6
invokeinterface java.util.function.LongSupplier.getAsLong:()J
lstore 7
start local 7 11: getstatic org.apache.lucene.index.DocumentsWriterDeleteQueue.$assertionsDisabled:Z
ifne 12
lload 7
lload 4
lcmp
ifle 12
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "illegal max sequence ID: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
lload 7
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc " start was: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
lload 4
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
12: StackMap locals: org.apache.lucene.index.DocumentsWriterDeleteQueue org.apache.lucene.util.InfoStream long long java.util.function.LongSupplier long
StackMap stack:
aload 0
new org.apache.lucene.index.DocumentsWriterDeleteQueue$Node
dup
aconst_null
invokespecial org.apache.lucene.index.DocumentsWriterDeleteQueue$Node.<init>:(Ljava/lang/Object;)V
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue.tail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
13: aload 0
new org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice
dup
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.tail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
invokespecial org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.<init>:(Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;)V
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalSlice:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;
14: return
end local 7 end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
0 15 1 infoStream Lorg/apache/lucene/util/InfoStream;
0 15 2 generation J
0 15 4 startSeqNo J
0 15 6 previousMaxSeqId Ljava/util/function/LongSupplier;
11 15 7 value J
MethodParameters:
Name Flags
infoStream
generation
startSeqNo
previousMaxSeqId
long addDelete(org.apache.lucene.search.Query[]);
descriptor: ([Lorg/apache/lucene/search/Query;)J
flags: (0x0080) ACC_VARARGS
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
new org.apache.lucene.index.DocumentsWriterDeleteQueue$QueryArrayNode
dup
aload 1
invokespecial org.apache.lucene.index.DocumentsWriterDeleteQueue$QueryArrayNode.<init>:([Lorg/apache/lucene/search/Query;)V
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.add:(Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;)J
lstore 2
start local 2 1: aload 0
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.tryApplyGlobalSlice:()V
2: lload 2
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
0 3 1 queries [Lorg/apache/lucene/search/Query;
1 3 2 seqNo J
MethodParameters:
Name Flags
queries
long addDelete(org.apache.lucene.index.Term[]);
descriptor: ([Lorg/apache/lucene/index/Term;)J
flags: (0x0080) ACC_VARARGS
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
new org.apache.lucene.index.DocumentsWriterDeleteQueue$TermArrayNode
dup
aload 1
invokespecial org.apache.lucene.index.DocumentsWriterDeleteQueue$TermArrayNode.<init>:([Lorg/apache/lucene/index/Term;)V
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.add:(Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;)J
lstore 2
start local 2 1: aload 0
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.tryApplyGlobalSlice:()V
2: lload 2
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
0 3 1 terms [Lorg/apache/lucene/index/Term;
1 3 2 seqNo J
MethodParameters:
Name Flags
terms
long addDocValuesUpdates(org.apache.lucene.index.DocValuesUpdate[]);
descriptor: ([Lorg/apache/lucene/index/DocValuesUpdate;)J
flags: (0x0080) ACC_VARARGS
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
new org.apache.lucene.index.DocumentsWriterDeleteQueue$DocValuesUpdatesNode
dup
aload 1
invokespecial org.apache.lucene.index.DocumentsWriterDeleteQueue$DocValuesUpdatesNode.<init>:([Lorg/apache/lucene/index/DocValuesUpdate;)V
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.add:(Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;)J
lstore 2
start local 2 1: aload 0
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.tryApplyGlobalSlice:()V
2: lload 2
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
0 3 1 updates [Lorg/apache/lucene/index/DocValuesUpdate;
1 3 2 seqNo J
MethodParameters:
Name Flags
updates
static org.apache.lucene.index.DocumentsWriterDeleteQueue$Node<org.apache.lucene.index.Term> newNode(org.apache.lucene.index.Term);
descriptor: (Lorg/apache/lucene/index/Term;)Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new org.apache.lucene.index.DocumentsWriterDeleteQueue$TermNode
dup
aload 0
invokespecial org.apache.lucene.index.DocumentsWriterDeleteQueue$TermNode.<init>:(Lorg/apache/lucene/index/Term;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 term Lorg/apache/lucene/index/Term;
Signature: (Lorg/apache/lucene/index/Term;)Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node<Lorg/apache/lucene/index/Term;>;
MethodParameters:
Name Flags
term
static org.apache.lucene.index.DocumentsWriterDeleteQueue$Node<org.apache.lucene.index.DocValuesUpdate[]> newNode(org.apache.lucene.index.DocValuesUpdate[]);
descriptor: ([Lorg/apache/lucene/index/DocValuesUpdate;)Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
flags: (0x0088) ACC_STATIC, ACC_VARARGS
Code:
stack=3, locals=1, args_size=1
start local 0 0: new org.apache.lucene.index.DocumentsWriterDeleteQueue$DocValuesUpdatesNode
dup
aload 0
invokespecial org.apache.lucene.index.DocumentsWriterDeleteQueue$DocValuesUpdatesNode.<init>:([Lorg/apache/lucene/index/DocValuesUpdate;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 updates [Lorg/apache/lucene/index/DocValuesUpdate;
Signature: ([Lorg/apache/lucene/index/DocValuesUpdate;)Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node<[Lorg/apache/lucene/index/DocValuesUpdate;>;
MethodParameters:
Name Flags
updates
long add(org.apache.lucene.index.DocumentsWriterDeleteQueue$Node<?>, org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice);
descriptor: (Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;)J
flags: (0x0000)
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.add:(Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;)J
lstore 3
start local 3 1: aload 2
aload 1
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.sliceTail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
2: getstatic org.apache.lucene.index.DocumentsWriterDeleteQueue.$assertionsDisabled:Z
ifne 3
aload 2
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.sliceHead:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
aload 2
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.sliceTail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
if_acmpne 3
new java.lang.AssertionError
dup
ldc "slice head and tail must differ after add"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
3: StackMap locals: long
StackMap stack:
aload 0
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.tryApplyGlobalSlice:()V
4: lload 3
lreturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
0 5 1 deleteNode Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node<*>;
0 5 2 slice Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;
1 5 3 seqNo J
Signature: (Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node<*>;Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;)J
MethodParameters:
Name Flags
deleteNode
slice
synchronized long add(org.apache.lucene.index.DocumentsWriterDeleteQueue$Node<?>);
descriptor: (Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;)J
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.ensureOpen:()V
1: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.tail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
aload 1
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue$Node.next:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
2: aload 0
aload 1
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue.tail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
3: aload 0
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.getNextSequenceNumber:()J
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
0 4 1 newNode Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node<*>;
Signature: (Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node<*>;)J
MethodParameters:
Name Flags
newNode
boolean anyChanges();
descriptor: ()Z
flags: (0x0000)
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.lock:()V
1: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferedUpdates:Lorg/apache/lucene/index/BufferedUpdates;
invokevirtual org.apache.lucene.index.BufferedUpdates.any:()Z
ifne 2
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalSlice:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.isEmpty:()Z
ifeq 2
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalSlice:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.sliceTail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.tail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
if_acmpne 2
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.tail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue$Node.next:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
ifnonnull 2
iconst_0
goto 3
StackMap locals:
StackMap stack:
2: iconst_1
StackMap locals:
StackMap stack: int
3: istore 2
4: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
5: iload 2
ireturn
6: StackMap locals:
StackMap stack: java.lang.Throwable
astore 1
7: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
8: aload 1
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
Exception table:
from to target type
1 4 6 any
void tryApplyGlobalSlice();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.tryLock:()Z
ifeq 9
1: aload 0
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.ensureOpen:()V
2: aload 0
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalSlice:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.updateSliceNoSeqNo:(Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;)Z
ifeq 8
3: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalSlice:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferedUpdates:Lorg/apache/lucene/index/BufferedUpdates;
getstatic org.apache.lucene.index.BufferedUpdates.MAX_INT:Ljava/lang/Integer;
invokevirtual java.lang.Integer.intValue:()I
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.apply:(Lorg/apache/lucene/index/BufferedUpdates;I)V
4: goto 8
StackMap locals:
StackMap stack: java.lang.Throwable
5: astore 1
6: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
7: aload 1
athrow
8: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
9: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
Exception table:
from to target type
2 5 5 any
org.apache.lucene.index.FrozenBufferedUpdates freezeGlobalBuffer(org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice);
descriptor: (Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;)Lorg/apache/lucene/index/FrozenBufferedUpdates;
flags: (0x0000)
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.lock:()V
1: aload 0
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.ensureOpen:()V
2: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.tail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
astore 2
start local 2 3: aload 1
ifnull 5
4: aload 1
aload 2
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.sliceTail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
5: StackMap locals: org.apache.lucene.index.DocumentsWriterDeleteQueue$Node
StackMap stack:
aload 0
aload 2
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.freezeGlobalBufferInternal:(Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;)Lorg/apache/lucene/index/FrozenBufferedUpdates;
astore 4
6: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
7: aload 4
areturn
end local 2 8: StackMap locals: org.apache.lucene.index.DocumentsWriterDeleteQueue org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice
StackMap stack: java.lang.Throwable
astore 3
9: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
10: aload 3
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
0 11 1 callerSlice Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;
3 8 2 currentTail Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node<*>;
Exception table:
from to target type
1 6 8 any
MethodParameters:
Name Flags
callerSlice
org.apache.lucene.index.FrozenBufferedUpdates maybeFreezeGlobalBuffer();
descriptor: ()Lorg/apache/lucene/index/FrozenBufferedUpdates;
flags: (0x0000)
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.lock:()V
1: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.closed:Z
ifne 5
2: aload 0
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.tail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.freezeGlobalBufferInternal:(Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;)Lorg/apache/lucene/index/FrozenBufferedUpdates;
astore 2
3: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
4: aload 2
areturn
5: StackMap locals:
StackMap stack:
getstatic org.apache.lucene.index.DocumentsWriterDeleteQueue.$assertionsDisabled:Z
ifne 6
aload 0
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.anyChanges:()Z
ifeq 6
new java.lang.AssertionError
dup
ldc "we are closed but have changes"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
6: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
7: aconst_null
areturn
8: StackMap locals:
StackMap stack: java.lang.Throwable
astore 1
9: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
10: aload 1
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
Exception table:
from to target type
1 3 8 any
5 6 8 any
private org.apache.lucene.index.FrozenBufferedUpdates freezeGlobalBufferInternal(org.apache.lucene.index.DocumentsWriterDeleteQueue$Node<?>);
descriptor: (Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;)Lorg/apache/lucene/index/FrozenBufferedUpdates;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: getstatic org.apache.lucene.index.DocumentsWriterDeleteQueue.$assertionsDisabled:Z
ifne 1
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.isHeldByCurrentThread:()Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalSlice:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.sliceTail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
aload 1
if_acmpeq 4
2: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalSlice:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;
aload 1
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.sliceTail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
3: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalSlice:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferedUpdates:Lorg/apache/lucene/index/BufferedUpdates;
getstatic org.apache.lucene.index.BufferedUpdates.MAX_INT:Ljava/lang/Integer;
invokevirtual java.lang.Integer.intValue:()I
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.apply:(Lorg/apache/lucene/index/BufferedUpdates;I)V
4: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferedUpdates:Lorg/apache/lucene/index/BufferedUpdates;
invokevirtual org.apache.lucene.index.BufferedUpdates.any:()Z
ifeq 8
5: new org.apache.lucene.index.FrozenBufferedUpdates
dup
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.infoStream:Lorg/apache/lucene/util/InfoStream;
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferedUpdates:Lorg/apache/lucene/index/BufferedUpdates;
aconst_null
invokespecial org.apache.lucene.index.FrozenBufferedUpdates.<init>:(Lorg/apache/lucene/util/InfoStream;Lorg/apache/lucene/index/BufferedUpdates;Lorg/apache/lucene/index/SegmentCommitInfo;)V
astore 2
start local 2 6: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferedUpdates:Lorg/apache/lucene/index/BufferedUpdates;
invokevirtual org.apache.lucene.index.BufferedUpdates.clear:()V
7: aload 2
areturn
end local 2 8: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
0 9 1 currentTail Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node<*>;
6 8 2 packet Lorg/apache/lucene/index/FrozenBufferedUpdates;
Signature: (Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node<*>;)Lorg/apache/lucene/index/FrozenBufferedUpdates;
MethodParameters:
Name Flags
currentTail final
org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice newSlice();
descriptor: ()Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: new org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice
dup
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.tail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
invokespecial org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.<init>:(Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
synchronized long updateSlice(org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice);
descriptor: (Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;)J
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.ensureOpen:()V
1: aload 0
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.getNextSequenceNumber:()J
lstore 2
start local 2 2: aload 1
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.sliceTail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.tail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
if_acmpeq 5
3: aload 1
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.tail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.sliceTail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
4: lload 2
lneg
lstore 2
5: StackMap locals: long
StackMap stack:
lload 2
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
0 6 1 slice Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;
2 6 2 seqNo J
MethodParameters:
Name Flags
slice
boolean updateSliceNoSeqNo(org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice);
descriptor: (Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;)Z
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.sliceTail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.tail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
if_acmpeq 3
1: aload 1
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.tail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.sliceTail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
2: iconst_1
ireturn
3: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
0 4 1 slice Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;
MethodParameters:
Name Flags
slice
private void ensureOpen();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.closed:Z
ifeq 2
1: new org.apache.lucene.store.AlreadyClosedException
dup
new java.lang.StringBuilder
dup
ldc "This "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " is already closed"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.apache.lucene.store.AlreadyClosedException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
public boolean isOpen();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.closed:Z
ifeq 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
public synchronized void close();
descriptor: ()V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=5, locals=4, args_size=1
start local 0 0: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.lock:()V
1: aload 0
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.anyChanges:()Z
ifeq 3
2: new java.lang.IllegalStateException
dup
ldc "Can't close queue unless all changes are applied"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue.closed:Z
4: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.nextSeqNo:Ljava/util/concurrent/atomic/AtomicLong;
invokevirtual java.util.concurrent.atomic.AtomicLong.get:()J
lstore 1
start local 1 5: getstatic org.apache.lucene.index.DocumentsWriterDeleteQueue.$assertionsDisabled:Z
ifne 6
lload 1
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.maxSeqNo:J
lcmp
ifle 6
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "maxSeqNo must be greater or equal to "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
lload 1
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc " but was "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.maxSeqNo:J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
6: StackMap locals: long
StackMap stack:
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.nextSeqNo:Ljava/util/concurrent/atomic/AtomicLong;
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.maxSeqNo:J
lconst_1
ladd
invokevirtual java.util.concurrent.atomic.AtomicLong.set:(J)V
end local 1 7: goto 11
StackMap locals: org.apache.lucene.index.DocumentsWriterDeleteQueue
StackMap stack: java.lang.Throwable
8: astore 3
9: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
10: aload 3
athrow
11: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
12: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
5 7 1 seqNo J
Exception table:
from to target type
1 8 8 any
public int numGlobalTermDeletes();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferedUpdates:Lorg/apache/lucene/index/BufferedUpdates;
getfield org.apache.lucene.index.BufferedUpdates.numTermDeletes:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
void clear();
descriptor: ()V
flags: (0x0000)
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.lock:()V
1: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.tail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
astore 1
start local 1 2: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalSlice:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalSlice:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;
aload 1
dup_x1
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.sliceTail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.sliceHead:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
3: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferedUpdates:Lorg/apache/lucene/index/BufferedUpdates;
invokevirtual org.apache.lucene.index.BufferedUpdates.clear:()V
end local 1 4: goto 8
StackMap locals:
StackMap stack: java.lang.Throwable
5: astore 2
6: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
7: aload 2
athrow
8: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
9: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
2 4 1 currentTail Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node<*>;
Exception table:
from to target type
1 5 5 any
private boolean forceApplyGlobalSlice();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.lock:()V
1: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.tail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
astore 1
start local 1 2: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalSlice:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.sliceTail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
aload 1
if_acmpeq 5
3: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalSlice:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;
aload 1
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.sliceTail:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node;
4: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalSlice:Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$DeleteSlice;
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferedUpdates:Lorg/apache/lucene/index/BufferedUpdates;
getstatic org.apache.lucene.index.BufferedUpdates.MAX_INT:Ljava/lang/Integer;
invokevirtual java.lang.Integer.intValue:()I
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.apply:(Lorg/apache/lucene/index/BufferedUpdates;I)V
5: StackMap locals: org.apache.lucene.index.DocumentsWriterDeleteQueue$Node
StackMap stack:
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferedUpdates:Lorg/apache/lucene/index/BufferedUpdates;
invokevirtual org.apache.lucene.index.BufferedUpdates.any:()Z
istore 3
6: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
7: iload 3
ireturn
8: StackMap locals:
StackMap stack: java.lang.Throwable
astore 2
9: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
10: aload 2
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
2 11 1 currentTail Lorg/apache/lucene/index/DocumentsWriterDeleteQueue$Node<*>;
Exception table:
from to target type
2 6 8 any
public int getBufferedUpdatesTermsSize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=1
start local 0 0: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.lock:()V
1: aload 0
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.forceApplyGlobalSlice:()Z
pop
2: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferedUpdates:Lorg/apache/lucene/index/BufferedUpdates;
getfield org.apache.lucene.index.BufferedUpdates.deleteTerms:Ljava/util/Map;
invokeinterface java.util.Map.size:()I
istore 2
3: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
4: iload 2
ireturn
5: StackMap locals:
StackMap stack: java.lang.Throwable
astore 1
6: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
7: aload 1
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
Exception table:
from to target type
1 3 5 any
public long ramBytesUsed();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.globalBufferedUpdates:Lorg/apache/lucene/index/BufferedUpdates;
invokevirtual org.apache.lucene.index.BufferedUpdates.ramBytesUsed:()J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "DWDQ: [ generation: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.generation:J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc " ]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
public long getNextSequenceNumber();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.nextSeqNo:Ljava/util/concurrent/atomic/AtomicLong;
invokevirtual java.util.concurrent.atomic.AtomicLong.getAndIncrement:()J
lstore 1
start local 1 1: getstatic org.apache.lucene.index.DocumentsWriterDeleteQueue.$assertionsDisabled:Z
ifne 2
lload 1
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.maxSeqNo:J
lcmp
ifle 2
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "seqNo="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
lload 1
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc " vs maxSeqNo="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.maxSeqNo:J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: StackMap locals: long
StackMap stack:
lload 1
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
1 3 1 seqNo J
long getLastSequenceNumber();
descriptor: ()J
flags: (0x0000)
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.nextSeqNo:Ljava/util/concurrent/atomic/AtomicLong;
invokevirtual java.util.concurrent.atomic.AtomicLong.get:()J
lconst_1
lsub
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
void skipSequenceNumbers(long);
descriptor: (J)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.nextSeqNo:Ljava/util/concurrent/atomic/AtomicLong;
lload 1
invokevirtual java.util.concurrent.atomic.AtomicLong.addAndGet:(J)J
pop2
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
0 2 1 jump J
MethodParameters:
Name Flags
jump
long getMaxCompletedSeqNo();
descriptor: ()J
flags: (0x0000)
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.startSeqNo:J
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.nextSeqNo:Ljava/util/concurrent/atomic/AtomicLong;
invokevirtual java.util.concurrent.atomic.AtomicLong.get:()J
lcmp
ifge 2
1: aload 0
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.getLastSequenceNumber:()J
lreturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.previousMaxSeqId:Ljava/util/function/LongSupplier;
invokeinterface java.util.function.LongSupplier.getAsLong:()J
lstore 1
start local 1 3: getstatic org.apache.lucene.index.DocumentsWriterDeleteQueue.$assertionsDisabled:Z
ifne 4
lload 1
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.startSeqNo:J
lcmp
iflt 4
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "illegal max sequence ID: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
lload 1
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc " start was: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.startSeqNo:J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
4: StackMap locals: long
StackMap stack:
lload 1
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
3 5 1 value J
private static java.util.function.LongSupplier getPrevMaxSeqIdSupplier(java.util.concurrent.atomic.AtomicLong);
descriptor: (Ljava/util/concurrent/atomic/AtomicLong;)Ljava/util/function/LongSupplier;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokedynamic getAsLong(Ljava/util/concurrent/atomic/AtomicLong;)Ljava/util/function/LongSupplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()J
org/apache/lucene/index/DocumentsWriterDeleteQueue.lambda$1(Ljava/util/concurrent/atomic/AtomicLong;)J (6)
()J
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 nextSeqNo Ljava/util/concurrent/atomic/AtomicLong;
MethodParameters:
Name Flags
nextSeqNo
synchronized org.apache.lucene.index.DocumentsWriterDeleteQueue advanceQueue(int);
descriptor: (I)Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=9, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.advanced:Z
ifeq 2
1: new java.lang.IllegalStateException
dup
ldc "queue was already advanced"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue.advanced:Z
3: aload 0
invokevirtual org.apache.lucene.index.DocumentsWriterDeleteQueue.getLastSequenceNumber:()J
iload 1
i2l
ladd
lconst_1
ladd
lstore 2
start local 2 4: aload 0
lload 2
putfield org.apache.lucene.index.DocumentsWriterDeleteQueue.maxSeqNo:J
5: new org.apache.lucene.index.DocumentsWriterDeleteQueue
dup
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.infoStream:Lorg/apache/lucene/util/InfoStream;
aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.generation:J
lconst_1
ladd
lload 2
lconst_1
ladd
6: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.nextSeqNo:Ljava/util/concurrent/atomic/AtomicLong;
invokestatic org.apache.lucene.index.DocumentsWriterDeleteQueue.getPrevMaxSeqIdSupplier:(Ljava/util/concurrent/atomic/AtomicLong;)Ljava/util/function/LongSupplier;
7: invokespecial org.apache.lucene.index.DocumentsWriterDeleteQueue.<init>:(Lorg/apache/lucene/util/InfoStream;JJLjava/util/function/LongSupplier;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
0 8 1 maxNumPendingOps I
4 8 2 seqNo J
MethodParameters:
Name Flags
maxNumPendingOps
long getMaxSeqNo();
descriptor: ()J
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.maxSeqNo:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
boolean isAdvanced();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.lucene.index.DocumentsWriterDeleteQueue.advanced:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/lucene/index/DocumentsWriterDeleteQueue;
private static long lambda$0();
descriptor: ()J
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=0, args_size=0
0: lconst_0
lreturn
LocalVariableTable:
Start End Slot Name Signature
private static long lambda$1(java.util.concurrent.atomic.AtomicLong);
descriptor: (Ljava/util/concurrent/atomic/AtomicLong;)J
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=1, args_size=1
0: aload 0
invokevirtual java.util.concurrent.atomic.AtomicLong.get:()J
lconst_1
lsub
lreturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "DocumentsWriterDeleteQueue.java"
NestMembers:
org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice org.apache.lucene.index.DocumentsWriterDeleteQueue$DocValuesUpdatesNode org.apache.lucene.index.DocumentsWriterDeleteQueue$Node org.apache.lucene.index.DocumentsWriterDeleteQueue$QueryArrayNode org.apache.lucene.index.DocumentsWriterDeleteQueue$TermArrayNode org.apache.lucene.index.DocumentsWriterDeleteQueue$TermNode
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
DeleteSlice = org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice of org.apache.lucene.index.DocumentsWriterDeleteQueue
private final DocValuesUpdatesNode = org.apache.lucene.index.DocumentsWriterDeleteQueue$DocValuesUpdatesNode of org.apache.lucene.index.DocumentsWriterDeleteQueue
Node = org.apache.lucene.index.DocumentsWriterDeleteQueue$Node of org.apache.lucene.index.DocumentsWriterDeleteQueue
private final QueryArrayNode = org.apache.lucene.index.DocumentsWriterDeleteQueue$QueryArrayNode of org.apache.lucene.index.DocumentsWriterDeleteQueue
private final TermArrayNode = org.apache.lucene.index.DocumentsWriterDeleteQueue$TermArrayNode of org.apache.lucene.index.DocumentsWriterDeleteQueue
private final TermNode = org.apache.lucene.index.DocumentsWriterDeleteQueue$TermNode of org.apache.lucene.index.DocumentsWriterDeleteQueue