public class org.h2.engine.Session extends org.h2.engine.SessionWithState implements org.h2.mvstore.tx.TransactionStore$RollbackListener
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.h2.engine.Session
super_class: org.h2.engine.SessionWithState
{
public static final int LOG_WRITTEN;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: -1
private static final java.lang.String SYSTEM_IDENTIFIER_PREFIX;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "_"
private static int nextSerialId;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private final int serialId;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.h2.engine.Database database;
descriptor: Lorg/h2/engine/Database;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private org.h2.engine.ConnectionInfo connectionInfo;
descriptor: Lorg/h2/engine/ConnectionInfo;
flags: (0x0002) ACC_PRIVATE
private final org.h2.engine.User user;
descriptor: Lorg/h2/engine/User;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int id;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.ArrayList<org.h2.table.Table> locks;
descriptor: Ljava/util/ArrayList;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/ArrayList<Lorg/h2/table/Table;>;
private org.h2.engine.UndoLog undoLog;
descriptor: Lorg/h2/engine/UndoLog;
flags: (0x0002) ACC_PRIVATE
private boolean autoCommit;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.util.Random random;
descriptor: Ljava/util/Random;
flags: (0x0002) ACC_PRIVATE
private int lockTimeout;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private org.h2.value.Value lastIdentity;
descriptor: Lorg/h2/value/Value;
flags: (0x0002) ACC_PRIVATE
private org.h2.value.Value lastScopeIdentity;
descriptor: Lorg/h2/value/Value;
flags: (0x0002) ACC_PRIVATE
private org.h2.value.Value lastTriggerIdentity;
descriptor: Lorg/h2/value/Value;
flags: (0x0002) ACC_PRIVATE
private org.h2.engine.GeneratedKeys generatedKeys;
descriptor: Lorg/h2/engine/GeneratedKeys;
flags: (0x0002) ACC_PRIVATE
private int firstUncommittedLog;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int firstUncommittedPos;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private java.util.HashMap<java.lang.String, org.h2.engine.Session$Savepoint> savepoints;
descriptor: Ljava/util/HashMap;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/engine/Session$Savepoint;>;
private java.util.HashMap<java.lang.String, org.h2.table.Table> localTempTables;
descriptor: Ljava/util/HashMap;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/table/Table;>;
private java.util.HashMap<java.lang.String, org.h2.index.Index> localTempTableIndexes;
descriptor: Ljava/util/HashMap;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/index/Index;>;
private java.util.HashMap<java.lang.String, org.h2.constraint.Constraint> localTempTableConstraints;
descriptor: Ljava/util/HashMap;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/constraint/Constraint;>;
private long throttleNs;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private long lastThrottle;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private org.h2.command.Command currentCommand;
descriptor: Lorg/h2/command/Command;
flags: (0x0002) ACC_PRIVATE
private boolean allowLiterals;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.lang.String currentSchemaName;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String[] schemaSearchPath;
descriptor: [Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private org.h2.message.Trace trace;
descriptor: Lorg/h2/message/Trace;
flags: (0x0002) ACC_PRIVATE
private java.util.HashMap<java.lang.String, org.h2.value.Value> removeLobMap;
descriptor: Ljava/util/HashMap;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/value/Value;>;
private int systemIdentifier;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private java.util.HashMap<java.lang.String, org.h2.engine.Procedure> procedures;
descriptor: Ljava/util/HashMap;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/engine/Procedure;>;
private boolean undoLogEnabled;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean redoLogBinary;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean autoCommitAtTransactionEnd;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.lang.String currentTransactionName;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private volatile long cancelAtNs;
descriptor: J
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private final long sessionStart;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private org.h2.value.ValueTimestampTimeZone transactionStart;
descriptor: Lorg/h2/value/ValueTimestampTimeZone;
flags: (0x0002) ACC_PRIVATE
private org.h2.value.ValueTimestampTimeZone currentCommandStart;
descriptor: Lorg/h2/value/ValueTimestampTimeZone;
flags: (0x0002) ACC_PRIVATE
private java.util.HashMap<java.lang.String, org.h2.value.Value> variables;
descriptor: Ljava/util/HashMap;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/value/Value;>;
private java.util.HashSet<org.h2.result.ResultInterface> temporaryResults;
descriptor: Ljava/util/HashSet;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/HashSet<Lorg/h2/result/ResultInterface;>;
private int queryTimeout;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean commitOrRollbackDisabled;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private org.h2.table.Table waitForLock;
descriptor: Lorg/h2/table/Table;
flags: (0x0002) ACC_PRIVATE
private java.lang.Thread waitForLockThread;
descriptor: Ljava/lang/Thread;
flags: (0x0002) ACC_PRIVATE
private int modificationId;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int objectId;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private final int queryCacheSize;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private org.h2.util.SmallLRUCache<java.lang.String, org.h2.command.Command> queryCache;
descriptor: Lorg/h2/util/SmallLRUCache;
flags: (0x0002) ACC_PRIVATE
Signature: Lorg/h2/util/SmallLRUCache<Ljava/lang/String;Lorg/h2/command/Command;>;
private long modificationMetaID;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private org.h2.table.SubQueryInfo subQueryInfo;
descriptor: Lorg/h2/table/SubQueryInfo;
flags: (0x0002) ACC_PRIVATE
private java.util.ArrayDeque<java.lang.String> viewNameStack;
descriptor: Ljava/util/ArrayDeque;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/ArrayDeque<Ljava/lang/String;>;
private int preparingQueryExpression;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private volatile org.h2.util.SmallLRUCache<java.lang.Object, org.h2.index.ViewIndex> viewIndexCache;
descriptor: Lorg/h2/util/SmallLRUCache;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
Signature: Lorg/h2/util/SmallLRUCache<Ljava/lang/Object;Lorg/h2/index/ViewIndex;>;
private java.util.HashMap<java.lang.Object, org.h2.index.ViewIndex> subQueryIndexCache;
descriptor: Ljava/util/HashMap;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/HashMap<Ljava/lang/Object;Lorg/h2/index/ViewIndex;>;
private boolean joinBatchEnabled;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean forceJoinOrder;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean lazyQueryExecution;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private org.h2.util.ColumnNamerConfiguration columnNamerConfiguration;
descriptor: Lorg/h2/util/ColumnNamerConfiguration;
flags: (0x0002) ACC_PRIVATE
private java.util.HashSet<org.h2.table.Table> tablesToAnalyze;
descriptor: Ljava/util/HashSet;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/HashSet<Lorg/h2/table/Table;>;
private java.util.LinkedList<org.h2.engine.Session$TimeoutValue> temporaryResultLobs;
descriptor: Ljava/util/LinkedList;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/LinkedList<Lorg/h2/engine/Session$TimeoutValue;>;
private java.util.ArrayList<org.h2.value.Value> temporaryLobs;
descriptor: Ljava/util/ArrayList;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/ArrayList<Lorg/h2/value/Value;>;
private org.h2.mvstore.tx.Transaction transaction;
descriptor: Lorg/h2/mvstore/tx/Transaction;
flags: (0x0002) ACC_PRIVATE
private final java.util.concurrent.atomic.AtomicReference<org.h2.engine.Session$State> state;
descriptor: Ljava/util/concurrent/atomic/AtomicReference;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/concurrent/atomic/AtomicReference<Lorg/h2/engine/Session$State;>;
private long startStatement;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private java.util.BitSet idsToRelease;
descriptor: Ljava/util/BitSet;
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/h2/engine/Session;
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.h2.engine.Session.$assertionsDisabled:Z
3: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.h2.engine.Database, org.h2.engine.User, int);
descriptor: (Lorg/h2/engine/Database;Lorg/h2/engine/User;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial org.h2.engine.SessionWithState.<init>:()V
1: aload 0
getstatic org.h2.engine.Session.nextSerialId:I
dup
iconst_1
iadd
putstatic org.h2.engine.Session.nextSerialId:I
putfield org.h2.engine.Session.serialId:I
2: aload 0
invokestatic org.h2.util.Utils.newSmallArrayList:()Ljava/util/ArrayList;
putfield org.h2.engine.Session.locks:Ljava/util/ArrayList;
3: aload 0
iconst_1
putfield org.h2.engine.Session.autoCommit:Z
4: aload 0
lconst_0
invokestatic org.h2.value.ValueLong.get:(J)Lorg/h2/value/ValueLong;
putfield org.h2.engine.Session.lastIdentity:Lorg/h2/value/Value;
5: aload 0
lconst_0
invokestatic org.h2.value.ValueLong.get:(J)Lorg/h2/value/ValueLong;
putfield org.h2.engine.Session.lastScopeIdentity:Lorg/h2/value/Value;
6: aload 0
iconst_m1
putfield org.h2.engine.Session.firstUncommittedLog:I
7: aload 0
iconst_m1
putfield org.h2.engine.Session.firstUncommittedPos:I
8: aload 0
iconst_1
putfield org.h2.engine.Session.undoLogEnabled:Z
9: aload 0
iconst_1
putfield org.h2.engine.Session.redoLogBinary:Z
10: aload 0
invokestatic java.lang.System.currentTimeMillis:()J
putfield org.h2.engine.Session.sessionStart:J
11: aload 0
ldc -1
putfield org.h2.engine.Session.modificationMetaID:J
12: aload 0
new java.util.concurrent.atomic.AtomicReference
dup
getstatic org.h2.engine.Session$State.INIT:Lorg/h2/engine/Session$State;
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:(Ljava/lang/Object;)V
putfield org.h2.engine.Session.state:Ljava/util/concurrent/atomic/AtomicReference;
13: aload 0
ldc -1
putfield org.h2.engine.Session.startStatement:J
14: aload 0
aload 1
putfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
15: aload 0
aload 1
invokevirtual org.h2.engine.Database.getSettings:()Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.maxQueryTimeout:I
putfield org.h2.engine.Session.queryTimeout:I
16: aload 0
aload 1
invokevirtual org.h2.engine.Database.getSettings:()Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.queryCacheSize:I
putfield org.h2.engine.Session.queryCacheSize:I
17: aload 0
aload 2
putfield org.h2.engine.Session.user:Lorg/h2/engine/User;
18: aload 0
iload 3
putfield org.h2.engine.Session.id:I
19: aload 0
aload 1
invokevirtual org.h2.engine.Database.getLockTimeout:()I
putfield org.h2.engine.Session.lockTimeout:I
20: aload 1
invokevirtual org.h2.engine.Database.getMainSchema:()Lorg/h2/schema/Schema;
astore 4
start local 4 21: aload 0
aload 4
ifnull 22
aload 4
invokevirtual org.h2.schema.Schema.getName:()Ljava/lang/String;
goto 23
22: StackMap locals: org.h2.engine.Session org.h2.engine.Database org.h2.engine.User int org.h2.schema.Schema
StackMap stack: org.h2.engine.Session
aload 1
ldc "PUBLIC"
invokevirtual org.h2.engine.Database.sysIdentifier:(Ljava/lang/String;)Ljava/lang/String;
23: StackMap locals: org.h2.engine.Session org.h2.engine.Database org.h2.engine.User int org.h2.schema.Schema
StackMap stack: org.h2.engine.Session java.lang.String
putfield org.h2.engine.Session.currentSchemaName:Ljava/lang/String;
24: aload 0
invokestatic org.h2.util.ColumnNamerConfiguration.getDefault:()Lorg/h2/util/ColumnNamerConfiguration;
putfield org.h2.engine.Session.columnNamerConfiguration:Lorg/h2/util/ColumnNamerConfiguration;
25: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lorg/h2/engine/Session;
0 26 1 database Lorg/h2/engine/Database;
0 26 2 user Lorg/h2/engine/User;
0 26 3 id I
21 26 4 mainSchema Lorg/h2/schema/Schema;
MethodParameters:
Name Flags
database
user
id
public void setLazyQueryExecution(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.h2.engine.Session.lazyQueryExecution:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
0 2 1 lazyQueryExecution Z
MethodParameters:
Name Flags
lazyQueryExecution
public boolean isLazyQueryExecution();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.lazyQueryExecution:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public void setForceJoinOrder(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.h2.engine.Session.forceJoinOrder:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
0 2 1 forceJoinOrder Z
MethodParameters:
Name Flags
forceJoinOrder
public boolean isForceJoinOrder();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.forceJoinOrder:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public void setJoinBatchEnabled(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.h2.engine.Session.joinBatchEnabled:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
0 2 1 joinBatchEnabled Z
MethodParameters:
Name Flags
joinBatchEnabled
public boolean isJoinBatchEnabled();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.joinBatchEnabled:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public org.h2.result.Row createRow(org.h2.value.Value[], int);
descriptor: ([Lorg/h2/value/Value;I)Lorg/h2/result/Row;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
aload 1
iload 2
invokevirtual org.h2.engine.Database.createRow:([Lorg/h2/value/Value;I)Lorg/h2/result/Row;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
0 1 1 data [Lorg/h2/value/Value;
0 1 2 memory I
MethodParameters:
Name Flags
data
memory
public void pushSubQueryInfo(int[], org.h2.table.TableFilter[], int, org.h2.result.SortOrder);
descriptor: ([I[Lorg/h2/table/TableFilter;ILorg/h2/result/SortOrder;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
new org.h2.table.SubQueryInfo
dup
aload 0
getfield org.h2.engine.Session.subQueryInfo:Lorg/h2/table/SubQueryInfo;
aload 1
aload 2
iload 3
aload 4
invokespecial org.h2.table.SubQueryInfo.<init>:(Lorg/h2/table/SubQueryInfo;[I[Lorg/h2/table/TableFilter;ILorg/h2/result/SortOrder;)V
putfield org.h2.engine.Session.subQueryInfo:Lorg/h2/table/SubQueryInfo;
1: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
0 2 1 masks [I
0 2 2 filters [Lorg/h2/table/TableFilter;
0 2 3 filter I
0 2 4 sortOrder Lorg/h2/result/SortOrder;
MethodParameters:
Name Flags
masks
filters
filter
sortOrder
public void popSubQueryInfo();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield org.h2.engine.Session.subQueryInfo:Lorg/h2/table/SubQueryInfo;
invokevirtual org.h2.table.SubQueryInfo.getUpper:()Lorg/h2/table/SubQueryInfo;
putfield org.h2.engine.Session.subQueryInfo:Lorg/h2/table/SubQueryInfo;
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
public org.h2.table.SubQueryInfo getSubQueryInfo();
descriptor: ()Lorg/h2/table/SubQueryInfo;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.subQueryInfo:Lorg/h2/table/SubQueryInfo;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public void setParsingCreateView(boolean, java.lang.String);
descriptor: (ZLjava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.h2.engine.Session.viewNameStack:Ljava/util/ArrayDeque;
ifnonnull 2
1: aload 0
new java.util.ArrayDeque
dup
iconst_3
invokespecial java.util.ArrayDeque.<init>:(I)V
putfield org.h2.engine.Session.viewNameStack:Ljava/util/ArrayDeque;
2: StackMap locals:
StackMap stack:
iload 1
ifeq 5
3: aload 0
getfield org.h2.engine.Session.viewNameStack:Ljava/util/ArrayDeque;
aload 2
invokevirtual java.util.ArrayDeque.push:(Ljava/lang/Object;)V
4: goto 7
5: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.viewNameStack:Ljava/util/ArrayDeque;
invokevirtual java.util.ArrayDeque.pop:()Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 6: getstatic org.h2.engine.Session.$assertionsDisabled:Z
ifne 7
aload 2
aload 3
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 7
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
end local 3 7: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/h2/engine/Session;
0 8 1 parsingView Z
0 8 2 viewName Ljava/lang/String;
6 7 3 name Ljava/lang/String;
MethodParameters:
Name Flags
parsingView
viewName
public java.lang.String getParsingCreateViewName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.viewNameStack:Ljava/util/ArrayDeque;
ifnull 1
aload 0
getfield org.h2.engine.Session.viewNameStack:Ljava/util/ArrayDeque;
invokevirtual java.util.ArrayDeque.peek:()Ljava/lang/Object;
checkcast java.lang.String
goto 2
StackMap locals:
StackMap stack:
1: aconst_null
StackMap locals:
StackMap stack: java.lang.String
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
public boolean isParsingCreateView();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.viewNameStack:Ljava/util/ArrayDeque;
ifnull 1
aload 0
getfield org.h2.engine.Session.viewNameStack:Ljava/util/ArrayDeque;
invokevirtual java.util.ArrayDeque.isEmpty:()Z
ifne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
public void optimizeQueryExpression(org.h2.command.dml.Query);
descriptor: (Lorg/h2/command/dml/Query;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.subQueryInfo:Lorg/h2/table/SubQueryInfo;
astore 2
start local 2 1: aload 0
aconst_null
putfield org.h2.engine.Session.subQueryInfo:Lorg/h2/table/SubQueryInfo;
2: aload 0
dup
getfield org.h2.engine.Session.preparingQueryExpression:I
iconst_1
iadd
putfield org.h2.engine.Session.preparingQueryExpression:I
3: aload 1
invokevirtual org.h2.command.dml.Query.prepare:()V
4: goto 9
StackMap locals: org.h2.engine.Session org.h2.command.dml.Query org.h2.table.SubQueryInfo
StackMap stack: java.lang.Throwable
5: astore 3
6: aload 0
aload 2
putfield org.h2.engine.Session.subQueryInfo:Lorg/h2/table/SubQueryInfo;
7: aload 0
dup
getfield org.h2.engine.Session.preparingQueryExpression:I
iconst_1
isub
putfield org.h2.engine.Session.preparingQueryExpression:I
8: aload 3
athrow
9: StackMap locals:
StackMap stack:
aload 0
aload 2
putfield org.h2.engine.Session.subQueryInfo:Lorg/h2/table/SubQueryInfo;
10: aload 0
dup
getfield org.h2.engine.Session.preparingQueryExpression:I
iconst_1
isub
putfield org.h2.engine.Session.preparingQueryExpression:I
11: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/h2/engine/Session;
0 12 1 query Lorg/h2/command/dml/Query;
1 12 2 tmp Lorg/h2/table/SubQueryInfo;
Exception table:
from to target type
3 5 5 any
MethodParameters:
Name Flags
query
public boolean isPreparingQueryExpression();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.h2.engine.Session.$assertionsDisabled:Z
ifne 1
aload 0
getfield org.h2.engine.Session.preparingQueryExpression:I
ifge 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.preparingQueryExpression:I
ifeq 2
iconst_1
ireturn
StackMap locals:
StackMap stack:
2: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
public java.util.ArrayList<java.lang.String> getClusterServers();
descriptor: ()Ljava/util/ArrayList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
Signature: ()Ljava/util/ArrayList<Ljava/lang/String;>;
public boolean setCommitOrRollbackDisabled(boolean);
descriptor: (Z)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.commitOrRollbackDisabled:Z
istore 2
start local 2 1: aload 0
iload 1
putfield org.h2.engine.Session.commitOrRollbackDisabled:Z
2: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
0 3 1 x Z
1 3 2 old Z
MethodParameters:
Name Flags
x
private void initVariables();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.variables:Ljava/util/HashMap;
ifnonnull 2
1: aload 0
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.newStringMap:()Ljava/util/HashMap;
putfield org.h2.engine.Session.variables:Ljava/util/HashMap;
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
public void setVariable(java.lang.String, org.h2.value.Value);
descriptor: (Ljava/lang/String;Lorg/h2/value/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.h2.engine.Session.initVariables:()V
1: aload 0
dup
getfield org.h2.engine.Session.modificationId:I
iconst_1
iadd
putfield org.h2.engine.Session.modificationId:I
2: aload 2
getstatic org.h2.value.ValueNull.INSTANCE:Lorg/h2/value/ValueNull;
if_acmpne 5
3: aload 0
getfield org.h2.engine.Session.variables:Ljava/util/HashMap;
aload 1
invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.value.Value
astore 3
start local 3 4: goto 9
end local 3 5: StackMap locals:
StackMap stack:
aload 2
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
6: iconst_m1
7: invokevirtual org.h2.value.Value.copy:(Lorg/h2/store/DataHandler;I)Lorg/h2/value/Value;
astore 2
8: aload 0
getfield org.h2.engine.Session.variables:Ljava/util/HashMap;
aload 1
aload 2
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.value.Value
astore 3
start local 3 9: StackMap locals: org.h2.value.Value
StackMap stack:
aload 3
ifnull 11
10: aload 3
invokevirtual org.h2.value.Value.remove:()V
11: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/h2/engine/Session;
0 12 1 name Ljava/lang/String;
0 12 2 value Lorg/h2/value/Value;
4 5 3 old Lorg/h2/value/Value;
9 12 3 old Lorg/h2/value/Value;
MethodParameters:
Name Flags
name
value
public org.h2.value.Value getVariable(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/h2/value/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.h2.engine.Session.initVariables:()V
1: aload 0
getfield org.h2.engine.Session.variables:Ljava/util/HashMap;
aload 1
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.value.Value
astore 2
start local 2 2: aload 2
ifnonnull 3
getstatic org.h2.value.ValueNull.INSTANCE:Lorg/h2/value/ValueNull;
goto 4
StackMap locals: org.h2.value.Value
StackMap stack:
3: aload 2
StackMap locals:
StackMap stack: org.h2.value.Value
4: areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/h2/engine/Session;
0 5 1 name Ljava/lang/String;
2 5 2 v Lorg/h2/value/Value;
MethodParameters:
Name Flags
name
public java.lang.String[] getVariableNames();
descriptor: ()[Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.variables:Ljava/util/HashMap;
ifnonnull 2
1: iconst_0
anewarray java.lang.String
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.variables:Ljava/util/HashMap;
invokevirtual java.util.HashMap.keySet:()Ljava/util/Set;
aload 0
getfield org.h2.engine.Session.variables:Ljava/util/HashMap;
invokevirtual java.util.HashMap.size:()I
anewarray java.lang.String
invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.String[]
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
public org.h2.table.Table findLocalTempTable(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/h2/table/Table;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.localTempTables:Ljava/util/HashMap;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.localTempTables:Ljava/util/HashMap;
aload 1
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.table.Table
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
0 3 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public java.util.ArrayList<org.h2.table.Table> getLocalTempTables();
descriptor: ()Ljava/util/ArrayList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.localTempTables:Ljava/util/HashMap;
ifnonnull 2
1: invokestatic org.h2.util.Utils.newSmallArrayList:()Ljava/util/ArrayList;
areturn
2: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
aload 0
getfield org.h2.engine.Session.localTempTables:Ljava/util/HashMap;
invokevirtual java.util.HashMap.values:()Ljava/util/Collection;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
Signature: ()Ljava/util/ArrayList<Lorg/h2/table/Table;>;
public void addLocalTempTable(org.h2.table.Table);
descriptor: (Lorg/h2/table/Table;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.localTempTables:Ljava/util/HashMap;
ifnonnull 2
1: aload 0
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.newStringMap:()Ljava/util/HashMap;
putfield org.h2.engine.Session.localTempTables:Ljava/util/HashMap;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.localTempTables:Ljava/util/HashMap;
aload 1
invokevirtual org.h2.table.Table.getName:()Ljava/lang/String;
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
ifnull 7
3: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 2
start local 2 4: aload 1
aload 2
iconst_0
invokevirtual org.h2.table.Table.getSQL:(Ljava/lang/StringBuilder;Z)Ljava/lang/StringBuilder;
ldc " AS "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
5: aload 1
invokevirtual org.h2.table.Table.getName:()Ljava/lang/String;
iconst_0
invokestatic org.h2.command.Parser.quoteIdentifier:(Ljava/lang/String;Z)Ljava/lang/String;
pop
6: ldc 42101
aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
athrow
end local 2 7: StackMap locals:
StackMap stack:
aload 0
dup
getfield org.h2.engine.Session.modificationId:I
iconst_1
iadd
putfield org.h2.engine.Session.modificationId:I
8: aload 0
getfield org.h2.engine.Session.localTempTables:Ljava/util/HashMap;
aload 1
invokevirtual org.h2.table.Table.getName:()Ljava/lang/String;
aload 1
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
9: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/h2/engine/Session;
0 10 1 table Lorg/h2/table/Table;
4 7 2 builder Ljava/lang/StringBuilder;
MethodParameters:
Name Flags
table
public void removeLocalTempTable(org.h2.table.Table);
descriptor: (Lorg/h2/table/Table;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
aload 0
invokevirtual org.h2.engine.Database.lockMeta:(Lorg/h2/engine/Session;)Z
istore 2
start local 2 1: aload 0
dup
getfield org.h2.engine.Session.modificationId:I
iconst_1
iadd
putfield org.h2.engine.Session.modificationId:I
2: aload 0
getfield org.h2.engine.Session.localTempTables:Ljava/util/HashMap;
ifnull 4
3: aload 0
getfield org.h2.engine.Session.localTempTables:Ljava/util/HashMap;
aload 1
invokevirtual org.h2.table.Table.getName:()Ljava/lang/String;
invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
4: StackMap locals: int
StackMap stack:
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
dup
astore 3
monitorenter
5: aload 1
aload 0
invokevirtual org.h2.table.Table.removeChildrenAndResources:(Lorg/h2/engine/Session;)V
6: aload 3
monitorexit
7: goto 14
StackMap locals: org.h2.engine.Session org.h2.table.Table int org.h2.engine.Database
StackMap stack: java.lang.Throwable
8: aload 3
monitorexit
9: athrow
10: StackMap locals: org.h2.engine.Session org.h2.table.Table int
StackMap stack: java.lang.Throwable
astore 4
11: iload 2
ifne 13
12: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
aload 0
invokevirtual org.h2.engine.Database.unlockMeta:(Lorg/h2/engine/Session;)V
13: StackMap locals: org.h2.engine.Session org.h2.table.Table int top java.lang.Throwable
StackMap stack:
aload 4
athrow
14: StackMap locals: org.h2.engine.Session org.h2.table.Table int
StackMap stack:
iload 2
ifne 16
15: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
aload 0
invokevirtual org.h2.engine.Database.unlockMeta:(Lorg/h2/engine/Session;)V
16: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/h2/engine/Session;
0 17 1 table Lorg/h2/table/Table;
1 17 2 wasLocked Z
Exception table:
from to target type
5 7 8 any
8 9 8 any
1 10 10 any
MethodParameters:
Name Flags
table
public org.h2.index.Index findLocalTempTableIndex(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/h2/index/Index;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.localTempTableIndexes:Ljava/util/HashMap;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.localTempTableIndexes:Ljava/util/HashMap;
aload 1
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.index.Index
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
0 3 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public java.util.HashMap<java.lang.String, org.h2.index.Index> getLocalTempTableIndexes();
descriptor: ()Ljava/util/HashMap;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.localTempTableIndexes:Ljava/util/HashMap;
ifnonnull 2
1: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.localTempTableIndexes:Ljava/util/HashMap;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
Signature: ()Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/index/Index;>;
public void addLocalTempTableIndex(org.h2.index.Index);
descriptor: (Lorg/h2/index/Index;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.localTempTableIndexes:Ljava/util/HashMap;
ifnonnull 2
1: aload 0
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.newStringMap:()Ljava/util/HashMap;
putfield org.h2.engine.Session.localTempTableIndexes:Ljava/util/HashMap;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.localTempTableIndexes:Ljava/util/HashMap;
aload 1
invokeinterface org.h2.index.Index.getName:()Ljava/lang/String;
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
ifnull 4
3: ldc 42111
aload 1
iconst_0
invokeinterface org.h2.index.Index.getSQL:(Z)Ljava/lang/String;
invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.localTempTableIndexes:Ljava/util/HashMap;
aload 1
invokeinterface org.h2.index.Index.getName:()Ljava/lang/String;
aload 1
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/h2/engine/Session;
0 6 1 index Lorg/h2/index/Index;
MethodParameters:
Name Flags
index
public void removeLocalTempTableIndex(org.h2.index.Index);
descriptor: (Lorg/h2/index/Index;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.localTempTableIndexes:Ljava/util/HashMap;
ifnull 8
1: aload 0
getfield org.h2.engine.Session.localTempTableIndexes:Ljava/util/HashMap;
aload 1
invokeinterface org.h2.index.Index.getName:()Ljava/lang/String;
invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
2: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
dup
astore 2
monitorenter
3: aload 1
aload 0
invokeinterface org.h2.index.Index.removeChildrenAndResources:(Lorg/h2/engine/Session;)V
4: aload 2
monitorexit
5: goto 8
StackMap locals: org.h2.engine.Session org.h2.index.Index org.h2.engine.Database
StackMap stack: java.lang.Throwable
6: aload 2
monitorexit
7: athrow
8: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/h2/engine/Session;
0 9 1 index Lorg/h2/index/Index;
Exception table:
from to target type
3 5 6 any
6 7 6 any
MethodParameters:
Name Flags
index
public org.h2.constraint.Constraint findLocalTempTableConstraint(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/h2/constraint/Constraint;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.localTempTableConstraints:Ljava/util/HashMap;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.localTempTableConstraints:Ljava/util/HashMap;
aload 1
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.constraint.Constraint
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
0 3 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public java.util.HashMap<java.lang.String, org.h2.constraint.Constraint> getLocalTempTableConstraints();
descriptor: ()Ljava/util/HashMap;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.localTempTableConstraints:Ljava/util/HashMap;
ifnonnull 2
1: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.localTempTableConstraints:Ljava/util/HashMap;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
Signature: ()Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/constraint/Constraint;>;
public void addLocalTempTableConstraint(org.h2.constraint.Constraint);
descriptor: (Lorg/h2/constraint/Constraint;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.localTempTableConstraints:Ljava/util/HashMap;
ifnonnull 2
1: aload 0
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.newStringMap:()Ljava/util/HashMap;
putfield org.h2.engine.Session.localTempTableConstraints:Ljava/util/HashMap;
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.h2.constraint.Constraint.getName:()Ljava/lang/String;
astore 2
start local 2 3: aload 0
getfield org.h2.engine.Session.localTempTableConstraints:Ljava/util/HashMap;
aload 2
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
ifnull 5
4: ldc 90045
aload 1
iconst_0
invokevirtual org.h2.constraint.Constraint.getSQL:(Z)Ljava/lang/String;
invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
athrow
5: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield org.h2.engine.Session.localTempTableConstraints:Ljava/util/HashMap;
aload 2
aload 1
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/h2/engine/Session;
0 7 1 constraint Lorg/h2/constraint/Constraint;
3 7 2 name Ljava/lang/String;
MethodParameters:
Name Flags
constraint
void removeLocalTempTableConstraint(org.h2.constraint.Constraint);
descriptor: (Lorg/h2/constraint/Constraint;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.localTempTableConstraints:Ljava/util/HashMap;
ifnull 8
1: aload 0
getfield org.h2.engine.Session.localTempTableConstraints:Ljava/util/HashMap;
aload 1
invokevirtual org.h2.constraint.Constraint.getName:()Ljava/lang/String;
invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
2: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
dup
astore 2
monitorenter
3: aload 1
aload 0
invokevirtual org.h2.constraint.Constraint.removeChildrenAndResources:(Lorg/h2/engine/Session;)V
4: aload 2
monitorexit
5: goto 8
StackMap locals: org.h2.engine.Session org.h2.constraint.Constraint org.h2.engine.Database
StackMap stack: java.lang.Throwable
6: aload 2
monitorexit
7: athrow
8: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/h2/engine/Session;
0 9 1 constraint Lorg/h2/constraint/Constraint;
Exception table:
from to target type
3 5 6 any
6 7 6 any
MethodParameters:
Name Flags
constraint
public boolean getAutoCommit();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.autoCommit:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public org.h2.engine.User getUser();
descriptor: ()Lorg/h2/engine/User;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.user:Lorg/h2/engine/User;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public void setAutoCommit(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.h2.engine.Session.autoCommit:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
0 2 1 b Z
MethodParameters:
Name Flags
b
public int getLockTimeout();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.lockTimeout:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public void setLockTimeout(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.h2.engine.Session.lockTimeout:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
0 2 1 lockTimeout I
MethodParameters:
Name Flags
lockTimeout
public synchronized org.h2.command.CommandInterface prepareCommand(java.lang.String, int);
descriptor: (Ljava/lang/String;I)Lorg/h2/command/CommandInterface;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual org.h2.engine.Session.prepareLocal:(Ljava/lang/String;)Lorg/h2/command/Command;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
0 1 1 sql Ljava/lang/String;
0 1 2 fetchSize I
MethodParameters:
Name Flags
sql
fetchSize
public org.h2.command.Prepared prepare(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/h2/command/Prepared;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
iconst_0
invokevirtual org.h2.engine.Session.prepare:(Ljava/lang/String;ZZ)Lorg/h2/command/Prepared;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
0 1 1 sql Ljava/lang/String;
MethodParameters:
Name Flags
sql
public org.h2.command.Prepared prepare(java.lang.String, boolean, boolean);
descriptor: (Ljava/lang/String;ZZ)Lorg/h2/command/Prepared;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new org.h2.command.Parser
dup
aload 0
invokespecial org.h2.command.Parser.<init>:(Lorg/h2/engine/Session;)V
astore 4
start local 4 1: aload 4
iload 2
invokevirtual org.h2.command.Parser.setRightsChecked:(Z)V
2: aload 4
iload 3
invokevirtual org.h2.command.Parser.setLiteralsChecked:(Z)V
3: aload 4
aload 1
invokevirtual org.h2.command.Parser.prepare:(Ljava/lang/String;)Lorg/h2/command/Prepared;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Session;
0 4 1 sql Ljava/lang/String;
0 4 2 rightsChecked Z
0 4 3 literalsChecked Z
1 4 4 parser Lorg/h2/command/Parser;
MethodParameters:
Name Flags
sql
rightsChecked
literalsChecked
public org.h2.command.Command prepareLocal(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/h2/command/Command;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.h2.engine.Session.isClosed:()Z
ifeq 4
1: ldc 90067
2: ldc "session closed"
3: invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.queryCacheSize:I
ifle 17
5: aload 0
getfield org.h2.engine.Session.queryCache:Lorg/h2/util/SmallLRUCache;
ifnonnull 9
6: aload 0
aload 0
getfield org.h2.engine.Session.queryCacheSize:I
invokestatic org.h2.util.SmallLRUCache.newInstance:(I)Lorg/h2/util/SmallLRUCache;
putfield org.h2.engine.Session.queryCache:Lorg/h2/util/SmallLRUCache;
7: aload 0
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getModificationMetaId:()J
putfield org.h2.engine.Session.modificationMetaID:J
8: goto 17
9: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getModificationMetaId:()J
lstore 3
start local 3 10: lload 3
aload 0
getfield org.h2.engine.Session.modificationMetaID:J
lcmp
ifeq 13
11: aload 0
getfield org.h2.engine.Session.queryCache:Lorg/h2/util/SmallLRUCache;
invokevirtual org.h2.util.SmallLRUCache.clear:()V
12: aload 0
lload 3
putfield org.h2.engine.Session.modificationMetaID:J
13: StackMap locals: org.h2.engine.Session java.lang.String top long
StackMap stack:
aload 0
getfield org.h2.engine.Session.queryCache:Lorg/h2/util/SmallLRUCache;
aload 1
invokevirtual org.h2.util.SmallLRUCache.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.command.Command
astore 2
start local 2 14: aload 2
ifnull 17
aload 2
invokevirtual org.h2.command.Command.canReuse:()Z
ifeq 17
15: aload 2
invokevirtual org.h2.command.Command.reuse:()V
16: aload 2
areturn
end local 3 end local 2 17: StackMap locals: org.h2.engine.Session java.lang.String
StackMap stack:
new org.h2.command.Parser
dup
aload 0
invokespecial org.h2.command.Parser.<init>:(Lorg/h2/engine/Session;)V
astore 3
start local 3 18: aload 3
aload 1
invokevirtual org.h2.command.Parser.prepareCommand:(Ljava/lang/String;)Lorg/h2/command/Command;
astore 2
start local 2 19: goto 23
end local 2 StackMap locals: org.h2.engine.Session java.lang.String top org.h2.command.Parser
StackMap stack: java.lang.Throwable
20: astore 4
21: aload 0
aconst_null
putfield org.h2.engine.Session.subQueryIndexCache:Ljava/util/HashMap;
22: aload 4
athrow
start local 2 23: StackMap locals: org.h2.engine.Session java.lang.String org.h2.command.Command org.h2.command.Parser
StackMap stack:
aload 0
aconst_null
putfield org.h2.engine.Session.subQueryIndexCache:Ljava/util/HashMap;
24: aload 2
invokevirtual org.h2.command.Command.prepareJoinBatch:()V
25: aload 0
getfield org.h2.engine.Session.queryCache:Lorg/h2/util/SmallLRUCache;
ifnull 28
26: aload 2
invokevirtual org.h2.command.Command.isCacheable:()Z
ifeq 28
27: aload 0
getfield org.h2.engine.Session.queryCache:Lorg/h2/util/SmallLRUCache;
aload 1
aload 2
invokevirtual org.h2.util.SmallLRUCache.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
28: StackMap locals:
StackMap stack:
aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lorg/h2/engine/Session;
0 29 1 sql Ljava/lang/String;
14 17 2 command Lorg/h2/command/Command;
19 20 2 command Lorg/h2/command/Command;
23 29 2 command Lorg/h2/command/Command;
10 17 3 newModificationMetaID J
18 29 3 parser Lorg/h2/command/Parser;
Exception table:
from to target type
18 20 20 any
MethodParameters:
Name Flags
sql
void scheduleDatabaseObjectIdForRelease(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.idsToRelease:Ljava/util/BitSet;
ifnonnull 2
1: aload 0
new java.util.BitSet
dup
invokespecial java.util.BitSet.<init>:()V
putfield org.h2.engine.Session.idsToRelease:Ljava/util/BitSet;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.idsToRelease:Ljava/util/BitSet;
iload 1
invokevirtual java.util.BitSet.set:(I)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Session;
0 4 1 id I
MethodParameters:
Name Flags
id
public org.h2.engine.Database getDatabase();
descriptor: ()Lorg/h2/engine/Database;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public int getPowerOffCount();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getPowerOffCount:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public void setPowerOffCount(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
iload 1
invokevirtual org.h2.engine.Database.setPowerOffCount:(I)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
0 2 1 count I
MethodParameters:
Name Flags
count
public void commit(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.h2.engine.Session.checkCommitRollback:()V
1: aload 0
aconst_null
putfield org.h2.engine.Session.currentTransactionName:Ljava/lang/String;
2: aload 0
aconst_null
putfield org.h2.engine.Session.transactionStart:Lorg/h2/value/ValueTimestampTimeZone;
3: aload 0
getfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
ifnull 17
4: aload 0
getfield org.h2.engine.Session.locks:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.isEmpty:()Z
ifne 10
5: aload 0
getfield org.h2.engine.Session.locks:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 3
goto 9
StackMap locals: org.h2.engine.Session int top java.util.Iterator
StackMap stack:
6: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.table.Table
astore 2
start local 2 7: aload 2
instanceof org.h2.mvstore.db.MVTable
ifeq 9
8: aload 2
checkcast org.h2.mvstore.db.MVTable
invokevirtual org.h2.mvstore.db.MVTable.commit:()V
end local 2 9: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
10: StackMap locals: org.h2.engine.Session int
StackMap stack:
aload 0
getfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
invokevirtual org.h2.mvstore.tx.Transaction.commit:()V
11: goto 15
StackMap locals:
StackMap stack: java.lang.Throwable
12: astore 4
13: aload 0
aconst_null
putfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
14: aload 4
athrow
15: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
16: goto 19
StackMap locals:
StackMap stack:
17: aload 0
invokevirtual org.h2.engine.Session.containsUncommitted:()Z
ifeq 19
18: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
aload 0
invokevirtual org.h2.engine.Database.commit:(Lorg/h2/engine/Session;)V
19: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual org.h2.engine.Session.removeTemporaryLobs:(Z)V
20: aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
ifnull 22
aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
invokevirtual org.h2.engine.UndoLog.size:()I
ifle 22
21: aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
invokevirtual org.h2.engine.UndoLog.clear:()V
22: StackMap locals:
StackMap stack:
iload 1
ifne 27
23: aload 0
iconst_0
invokevirtual org.h2.engine.Session.cleanTempTables:(Z)V
24: aload 0
getfield org.h2.engine.Session.autoCommitAtTransactionEnd:Z
ifeq 27
25: aload 0
iconst_1
putfield org.h2.engine.Session.autoCommit:Z
26: aload 0
iconst_0
putfield org.h2.engine.Session.autoCommitAtTransactionEnd:Z
27: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.tablesToAnalyze:Ljava/util/HashSet;
ifnull 33
28: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.isMVStore:()Z
ifeq 32
29: aload 0
invokevirtual org.h2.engine.Session.analyzeTables:()V
30: aload 0
iconst_1
invokevirtual org.h2.engine.Session.commit:(Z)V
31: goto 33
32: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.engine.Session.analyzeTables:()V
33: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.engine.Session.endTransaction:()V
34: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 35 0 this Lorg/h2/engine/Session;
0 35 1 ddl Z
7 9 2 t Lorg/h2/table/Table;
Exception table:
from to target type
4 12 12 any
MethodParameters:
Name Flags
ddl
private void analyzeTables();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual org.h2.engine.Session.getDatabase:()Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getSettings:()Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.analyzeSample:I
bipush 10
idiv
istore 1
start local 1 1: aload 0
getfield org.h2.engine.Session.tablesToAnalyze:Ljava/util/HashSet;
invokevirtual java.util.HashSet.iterator:()Ljava/util/Iterator;
astore 3
goto 4
StackMap locals: org.h2.engine.Session int top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.table.Table
astore 2
start local 2 3: aload 0
aload 2
iload 1
iconst_0
invokestatic org.h2.command.ddl.Analyze.analyzeTable:(Lorg/h2/engine/Session;Lorg/h2/table/Table;IZ)V
end local 2 4: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
aload 0
invokevirtual org.h2.engine.Database.unlockMeta:(Lorg/h2/engine/Session;)V
6: aload 0
aconst_null
putfield org.h2.engine.Session.tablesToAnalyze:Ljava/util/HashSet;
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/h2/engine/Session;
1 8 1 rowCount I
3 4 2 table Lorg/h2/table/Table;
private void removeTemporaryLobs(boolean);
descriptor: (Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=6, args_size=2
start local 0 start local 1 0: getstatic org.h2.engine.Session.$assertionsDisabled:Z
ifne 1
aload 0
aload 0
invokevirtual org.h2.engine.Session.getDatabase:()Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getLobSession:()Lorg/h2/engine/Session;
if_acmpne 1
aload 0
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifne 1
aload 0
invokevirtual org.h2.engine.Session.getDatabase:()Lorg/h2/engine/Database;
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.temporaryLobs:Ljava/util/ArrayList;
ifnull 8
2: aload 0
getfield org.h2.engine.Session.temporaryLobs:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 3
goto 6
StackMap locals: org.h2.engine.Session int top java.util.Iterator
StackMap stack:
3: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.value.Value
astore 2
start local 2 4: aload 2
invokevirtual org.h2.value.Value.isLinkedToTable:()Z
ifne 6
5: aload 2
invokevirtual org.h2.value.Value.remove:()V
end local 2 6: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
7: aload 0
getfield org.h2.engine.Session.temporaryLobs:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.clear:()V
8: StackMap locals: org.h2.engine.Session int
StackMap stack:
aload 0
getfield org.h2.engine.Session.temporaryResultLobs:Ljava/util/LinkedList;
ifnull 20
aload 0
getfield org.h2.engine.Session.temporaryResultLobs:Ljava/util/LinkedList;
invokevirtual java.util.LinkedList.isEmpty:()Z
ifne 20
9: invokestatic java.lang.System.nanoTime:()J
10: getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getSettings:()Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.lobTimeout:I
i2l
invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
11: lsub
lstore 2
start local 2 12: goto 19
13: StackMap locals: long
StackMap stack:
aload 0
getfield org.h2.engine.Session.temporaryResultLobs:Ljava/util/LinkedList;
invokevirtual java.util.LinkedList.getFirst:()Ljava/lang/Object;
checkcast org.h2.engine.Session$TimeoutValue
astore 4
start local 4 14: iload 1
ifeq 16
aload 4
getfield org.h2.engine.Session$TimeoutValue.created:J
lload 2
lcmp
iflt 16
15: goto 20
16: StackMap locals: org.h2.engine.Session$TimeoutValue
StackMap stack:
aload 0
getfield org.h2.engine.Session.temporaryResultLobs:Ljava/util/LinkedList;
invokevirtual java.util.LinkedList.removeFirst:()Ljava/lang/Object;
checkcast org.h2.engine.Session$TimeoutValue
getfield org.h2.engine.Session$TimeoutValue.value:Lorg/h2/value/Value;
astore 5
start local 5 17: aload 5
invokevirtual org.h2.value.Value.isLinkedToTable:()Z
ifne 19
18: aload 5
invokevirtual org.h2.value.Value.remove:()V
end local 5 end local 4 19: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.temporaryResultLobs:Ljava/util/LinkedList;
invokevirtual java.util.LinkedList.isEmpty:()Z
ifeq 13
end local 2 20: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/h2/engine/Session;
0 21 1 onTimeout Z
4 6 2 v Lorg/h2/value/Value;
12 20 2 keepYoungerThan J
14 19 4 tv Lorg/h2/engine/Session$TimeoutValue;
17 19 5 v Lorg/h2/value/Value;
MethodParameters:
Name Flags
onTimeout
private void checkCommitRollback();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.commitOrRollbackDisabled:Z
ifeq 2
aload 0
getfield org.h2.engine.Session.locks:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.isEmpty:()Z
ifne 2
1: ldc 90058
invokestatic org.h2.message.DbException.get:(I)Lorg/h2/message/DbException;
athrow
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
private void endTransaction();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.removeLobMap:Ljava/util/HashMap;
ifnull 8
aload 0
getfield org.h2.engine.Session.removeLobMap:Ljava/util/HashMap;
invokevirtual java.util.HashMap.size:()I
ifle 8
1: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getStore:()Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnonnull 3
2: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.flush:()V
3: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.removeLobMap:Ljava/util/HashMap;
invokevirtual java.util.HashMap.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 2
goto 6
StackMap locals: org.h2.engine.Session top java.util.Iterator
StackMap stack:
4: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.value.Value
astore 1
start local 1 5: aload 1
invokevirtual org.h2.value.Value.remove:()V
end local 1 6: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
7: aload 0
aconst_null
putfield org.h2.engine.Session.removeLobMap:Ljava/util/HashMap;
8: StackMap locals: org.h2.engine.Session
StackMap stack:
aload 0
invokevirtual org.h2.engine.Session.unlockAll:()V
9: aload 0
getfield org.h2.engine.Session.idsToRelease:Ljava/util/BitSet;
ifnull 12
10: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
aload 0
getfield org.h2.engine.Session.idsToRelease:Ljava/util/BitSet;
invokevirtual org.h2.engine.Database.releaseDatabaseObjectIds:(Ljava/util/BitSet;)V
11: aload 0
aconst_null
putfield org.h2.engine.Session.idsToRelease:Ljava/util/BitSet;
12: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/h2/engine/Session;
5 6 1 v Lorg/h2/value/Value;
public void rollback();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.h2.engine.Session.checkCommitRollback:()V
1: aload 0
aconst_null
putfield org.h2.engine.Session.currentTransactionName:Ljava/lang/String;
2: aload 0
aconst_null
putfield org.h2.engine.Session.transactionStart:Lorg/h2/value/ValueTimestampTimeZone;
3: aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
ifnull 4
aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
invokevirtual org.h2.engine.UndoLog.size:()I
ifgt 5
StackMap locals:
StackMap stack:
4: aload 0
getfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
ifnonnull 5
iconst_0
goto 6
StackMap locals:
StackMap stack:
5: iconst_1
StackMap locals:
StackMap stack: int
6: istore 1
start local 1 7: iload 1
ifeq 9
8: aload 0
aconst_null
invokevirtual org.h2.engine.Session.rollbackTo:(Lorg/h2/engine/Session$Savepoint;)V
9: StackMap locals: int
StackMap stack:
aload 0
getfield org.h2.engine.Session.locks:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.isEmpty:()Z
ifeq 10
iload 1
ifeq 11
10: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
aload 0
invokevirtual org.h2.engine.Database.commit:(Lorg/h2/engine/Session;)V
11: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield org.h2.engine.Session.idsToRelease:Ljava/util/BitSet;
12: aload 0
iconst_0
invokevirtual org.h2.engine.Session.cleanTempTables:(Z)V
13: aload 0
getfield org.h2.engine.Session.autoCommitAtTransactionEnd:Z
ifeq 16
14: aload 0
iconst_1
putfield org.h2.engine.Session.autoCommit:Z
15: aload 0
iconst_0
putfield org.h2.engine.Session.autoCommitAtTransactionEnd:Z
16: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.engine.Session.endTransaction:()V
17: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/h2/engine/Session;
7 18 1 needCommit Z
public void rollbackTo(org.h2.engine.Session$Savepoint);
descriptor: (Lorg/h2/engine/Session$Savepoint;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=10, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: aload 1
getfield org.h2.engine.Session$Savepoint.logIndex:I
StackMap locals:
StackMap stack: int
2: istore 2
start local 2 3: aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
ifnull 9
4: goto 8
5: StackMap locals: int
StackMap stack:
aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
invokevirtual org.h2.engine.UndoLog.getLast:()Lorg/h2/engine/UndoLogRecord;
astore 3
start local 3 6: aload 3
aload 0
invokevirtual org.h2.engine.UndoLogRecord.undo:(Lorg/h2/engine/Session;)V
7: aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
invokevirtual org.h2.engine.UndoLog.removeLast:()V
end local 3 8: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
invokevirtual org.h2.engine.UndoLog.size:()I
iload 2
if_icmpgt 5
9: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
ifnull 15
10: aload 1
ifnonnull 14
11: aload 0
getfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
invokevirtual org.h2.mvstore.tx.Transaction.rollback:()V
12: aload 0
aconst_null
putfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
13: goto 15
14: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
aload 1
getfield org.h2.engine.Session$Savepoint.transactionSavepoint:J
invokevirtual org.h2.mvstore.tx.Transaction.rollbackToSavepoint:(J)V
15: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.savepoints:Ljava/util/HashMap;
ifnull 25
16: aload 0
getfield org.h2.engine.Session.savepoints:Ljava/util/HashMap;
invokevirtual java.util.HashMap.keySet:()Ljava/util/Set;
aload 0
getfield org.h2.engine.Session.savepoints:Ljava/util/HashMap;
invokevirtual java.util.HashMap.size:()I
anewarray java.lang.String
invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.String[]
astore 3
start local 3 17: aload 3
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 24
StackMap locals: org.h2.engine.Session org.h2.engine.Session$Savepoint int java.lang.String[] top int int java.lang.String[]
StackMap stack:
18: aload 7
iload 5
aaload
astore 4
start local 4 19: aload 0
getfield org.h2.engine.Session.savepoints:Ljava/util/HashMap;
aload 4
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.engine.Session$Savepoint
astore 8
start local 8 20: aload 8
getfield org.h2.engine.Session$Savepoint.logIndex:I
istore 9
start local 9 21: iload 9
iload 2
if_icmple 23
22: aload 0
getfield org.h2.engine.Session.savepoints:Ljava/util/HashMap;
aload 4
invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 9 end local 8 end local 4 23: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
24: iload 5
iload 6
if_icmplt 18
end local 3 25: StackMap locals: org.h2.engine.Session org.h2.engine.Session$Savepoint int
StackMap stack:
aload 0
getfield org.h2.engine.Session.queryCache:Lorg/h2/util/SmallLRUCache;
ifnull 27
26: aload 0
getfield org.h2.engine.Session.queryCache:Lorg/h2/util/SmallLRUCache;
invokevirtual org.h2.util.SmallLRUCache.clear:()V
27: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lorg/h2/engine/Session;
0 28 1 savepoint Lorg/h2/engine/Session$Savepoint;
3 28 2 index I
6 8 3 entry Lorg/h2/engine/UndoLogRecord;
17 25 3 names [Ljava/lang/String;
19 23 4 name Ljava/lang/String;
20 23 8 sp Lorg/h2/engine/Session$Savepoint;
21 23 9 savepointIndex I
MethodParameters:
Name Flags
savepoint
public boolean hasPendingTransaction();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
ifnull 1
aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
invokevirtual org.h2.engine.UndoLog.size:()I
ifle 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
public org.h2.engine.Session$Savepoint setSavepoint();
descriptor: ()Lorg/h2/engine/Session$Savepoint;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: new org.h2.engine.Session$Savepoint
dup
invokespecial org.h2.engine.Session$Savepoint.<init>:()V
astore 1
start local 1 1: aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
ifnull 3
2: aload 1
aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
invokevirtual org.h2.engine.UndoLog.size:()I
putfield org.h2.engine.Session$Savepoint.logIndex:I
3: StackMap locals: org.h2.engine.Session$Savepoint
StackMap stack:
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getStore:()Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 5
4: aload 1
aload 0
invokevirtual org.h2.engine.Session.getStatementSavepoint:()J
putfield org.h2.engine.Session$Savepoint.transactionSavepoint:J
5: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/h2/engine/Session;
1 6 1 sp Lorg/h2/engine/Session$Savepoint;
public int getId();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.id:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public void cancel();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokestatic java.lang.System.nanoTime:()J
putfield org.h2.engine.Session.cancelAtNs:J
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.state:Ljava/util/concurrent/atomic/AtomicReference;
getstatic org.h2.engine.Session$State.CLOSED:Lorg/h2/engine/Session$State;
invokevirtual java.util.concurrent.atomic.AtomicReference.getAndSet:(Ljava/lang/Object;)Ljava/lang/Object;
getstatic org.h2.engine.Session$State.CLOSED:Lorg/h2/engine/Session$State;
if_acmpeq 14
1: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.checkPowerOff:()V
2: aload 0
invokevirtual org.h2.engine.Session.rollback:()V
3: aload 0
iconst_0
invokevirtual org.h2.engine.Session.removeTemporaryLobs:(Z)V
4: aload 0
iconst_1
invokevirtual org.h2.engine.Session.cleanTempTables:(Z)V
5: aload 0
iconst_1
invokevirtual org.h2.engine.Session.commit:(Z)V
6: aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
ifnull 8
7: aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
invokevirtual org.h2.engine.UndoLog.clear:()V
8: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
aload 0
invokevirtual org.h2.engine.Database.unlockMeta:(Lorg/h2/engine/Session;)V
9: goto 13
StackMap locals:
StackMap stack: java.lang.Throwable
10: astore 1
11: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
aload 0
invokevirtual org.h2.engine.Database.removeSession:(Lorg/h2/engine/Session;)V
12: aload 1
athrow
13: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
aload 0
invokevirtual org.h2.engine.Database.removeSession:(Lorg/h2/engine/Session;)V
14: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/h2/engine/Session;
Exception table:
from to target type
1 10 10 any
public void addLock(org.h2.table.Table);
descriptor: (Lorg/h2/table/Table;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.h2.engine.SysProperties.CHECK:Z
ifeq 3
1: aload 0
getfield org.h2.engine.Session.locks:Ljava/util/ArrayList;
aload 1
invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
ifeq 3
2: aload 1
invokevirtual org.h2.table.Table.toString:()Ljava/lang/String;
invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
pop
3: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.locks:Ljava/util/ArrayList;
aload 1
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/h2/engine/Session;
0 5 1 table Lorg/h2/table/Table;
MethodParameters:
Name Flags
table
public void log(org.h2.table.Table, short, org.h2.result.Row);
descriptor: (Lorg/h2/table/Table;SLorg/h2/result/Row;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokevirtual org.h2.table.Table.isMVStore:()Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.undoLogEnabled:Z
ifeq 16
3: new org.h2.engine.UndoLogRecord
dup
aload 1
iload 2
aload 3
invokespecial org.h2.engine.UndoLogRecord.<init>:(Lorg/h2/table/Table;SLorg/h2/result/Row;)V
astore 4
start local 4 4: getstatic org.h2.engine.SysProperties.CHECK:Z
ifeq 13
5: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getLockMode:()I
istore 5
start local 5 6: iload 5
ifeq 13
7: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.isMVStore:()Z
ifne 13
8: aload 4
invokevirtual org.h2.engine.UndoLogRecord.getTable:()Lorg/h2/table/Table;
invokevirtual org.h2.table.Table.getTableType:()Lorg/h2/table/TableType;
astore 6
start local 6 9: aload 0
getfield org.h2.engine.Session.locks:Ljava/util/ArrayList;
aload 4
invokevirtual org.h2.engine.UndoLogRecord.getTable:()Lorg/h2/table/Table;
invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
ifne 13
10: getstatic org.h2.table.TableType.TABLE_LINK:Lorg/h2/table/TableType;
aload 6
if_acmpeq 13
11: getstatic org.h2.table.TableType.EXTERNAL_TABLE_ENGINE:Lorg/h2/table/TableType;
aload 6
if_acmpeq 13
12: aload 6
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
pop
end local 6 end local 5 13: StackMap locals: org.h2.engine.UndoLogRecord
StackMap stack:
aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
ifnonnull 15
14: aload 0
new org.h2.engine.UndoLog
dup
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokespecial org.h2.engine.UndoLog.<init>:(Lorg/h2/engine/Database;)V
putfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
15: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
aload 4
invokevirtual org.h2.engine.UndoLog.add:(Lorg/h2/engine/UndoLogRecord;)V
end local 4 16: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/h2/engine/Session;
0 17 1 table Lorg/h2/table/Table;
0 17 2 operation S
0 17 3 row Lorg/h2/result/Row;
4 16 4 log Lorg/h2/engine/UndoLogRecord;
6 13 5 lockMode I
9 13 6 tableType Lorg/h2/table/TableType;
MethodParameters:
Name Flags
table
operation
row
public void unlockReadLocks();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.isMVStore:()Z
ifne 9
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.isMultiThreaded:()Z
ifeq 9
1: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getLockMode:()I
iconst_3
if_icmpne 9
2: aload 0
getfield org.h2.engine.Session.locks:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 1
start local 1 3: goto 8
4: StackMap locals: java.util.Iterator
StackMap stack:
aload 1
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.table.Table
astore 2
start local 2 5: aload 2
invokevirtual org.h2.table.Table.isLockedExclusively:()Z
ifne 8
6: aload 2
aload 0
invokevirtual org.h2.table.Table.unlock:(Lorg/h2/engine/Session;)V
7: aload 1
invokeinterface java.util.Iterator.remove:()V
end local 2 8: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
end local 1 9: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/h2/engine/Session;
3 9 1 iter Ljava/util/Iterator<Lorg/h2/table/Table;>;
5 8 2 t Lorg/h2/table/Table;
void unlock(org.h2.table.Table);
descriptor: (Lorg/h2/table/Table;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.locks:Ljava/util/ArrayList;
aload 1
invokevirtual java.util.ArrayList.remove:(Ljava/lang/Object;)Z
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
0 2 1 t Lorg/h2/table/Table;
MethodParameters:
Name Flags
t
private void unlockAll();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
ifnull 2
aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
invokevirtual org.h2.engine.UndoLog.size:()I
ifle 2
1: invokestatic org.h2.message.DbException.throwInternalError:()Ljava/lang/RuntimeException;
pop
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.locks:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.isEmpty:()Z
ifne 8
3: aload 0
getfield org.h2.engine.Session.locks:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 2
goto 6
StackMap locals: org.h2.engine.Session top java.util.Iterator
StackMap stack:
4: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.table.Table
astore 1
start local 1 5: aload 1
aload 0
invokevirtual org.h2.table.Table.unlock:(Lorg/h2/engine/Session;)V
end local 1 6: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
7: aload 0
getfield org.h2.engine.Session.locks:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.clear:()V
8: StackMap locals: org.h2.engine.Session
StackMap stack:
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
aload 0
invokevirtual org.h2.engine.Database.unlockMetaDebug:(Lorg/h2/engine/Session;)V
9: aload 0
aconst_null
putfield org.h2.engine.Session.savepoints:Ljava/util/HashMap;
10: aload 0
iconst_1
putfield org.h2.engine.Session.sessionStateChanged:Z
11: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/h2/engine/Session;
5 6 1 t Lorg/h2/table/Table;
private void cleanTempTables(boolean);
descriptor: (Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.localTempTables:Ljava/util/HashMap;
ifnull 10
aload 0
getfield org.h2.engine.Session.localTempTables:Ljava/util/HashMap;
invokevirtual java.util.HashMap.size:()I
ifle 10
1: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.isMVStore:()Z
ifeq 4
2: aload 0
iload 1
invokevirtual org.h2.engine.Session._cleanTempTables:(Z)V
3: goto 10
4: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
dup
astore 2
monitorenter
5: aload 0
iload 1
invokevirtual org.h2.engine.Session._cleanTempTables:(Z)V
6: aload 2
monitorexit
7: goto 10
StackMap locals: org.h2.engine.Session int org.h2.engine.Database
StackMap stack: java.lang.Throwable
8: aload 2
monitorexit
9: athrow
10: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/h2/engine/Session;
0 11 1 closeSession Z
Exception table:
from to target type
5 7 8 any
8 9 8 any
MethodParameters:
Name Flags
closeSession
private void _cleanTempTables(boolean);
descriptor: (Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.localTempTables:Ljava/util/HashMap;
invokevirtual java.util.HashMap.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 2
start local 2 1: goto 14
2: StackMap locals: java.util.Iterator
StackMap stack:
aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.table.Table
astore 3
start local 3 3: iload 1
ifne 4
aload 3
invokevirtual org.h2.table.Table.getOnCommitDrop:()Z
ifeq 12
4: StackMap locals: org.h2.table.Table
StackMap stack:
aload 0
dup
getfield org.h2.engine.Session.modificationId:I
iconst_1
iadd
putfield org.h2.engine.Session.modificationId:I
5: aload 3
invokevirtual org.h2.table.Table.setModified:()V
6: aload 2
invokeinterface java.util.Iterator.remove:()V
7: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
aload 0
invokevirtual org.h2.engine.Database.lockMeta:(Lorg/h2/engine/Session;)Z
pop
8: aload 3
aload 0
invokevirtual org.h2.table.Table.removeChildrenAndResources:(Lorg/h2/engine/Session;)V
9: iload 1
ifeq 14
10: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
aload 0
invokevirtual org.h2.engine.Database.commit:(Lorg/h2/engine/Session;)V
11: goto 14
StackMap locals:
StackMap stack:
12: aload 3
invokevirtual org.h2.table.Table.getOnCommitTruncate:()Z
ifeq 14
13: aload 3
aload 0
invokevirtual org.h2.table.Table.truncate:(Lorg/h2/engine/Session;)V
end local 3 14: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
15: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/h2/engine/Session;
0 16 1 closeSession Z
1 16 2 it Ljava/util/Iterator<Lorg/h2/table/Table;>;
3 14 3 table Lorg/h2/table/Table;
MethodParameters:
Name Flags
closeSession
public java.util.Random getRandom();
descriptor: ()Ljava/util/Random;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.random:Ljava/util/Random;
ifnonnull 2
1: aload 0
new java.util.Random
dup
invokespecial java.util.Random.<init>:()V
putfield org.h2.engine.Session.random:Ljava/util/Random;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.random:Ljava/util/Random;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
public org.h2.message.Trace getTrace();
descriptor: ()Lorg/h2/message/Trace;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.trace:Lorg/h2/message/Trace;
ifnull 2
aload 0
invokevirtual org.h2.engine.Session.isClosed:()Z
ifne 2
1: aload 0
getfield org.h2.engine.Session.trace:Lorg/h2/message/Trace;
areturn
2: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "jdbc["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.h2.engine.Session.id:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 1
start local 1 3: aload 0
invokevirtual org.h2.engine.Session.isClosed:()Z
ifeq 5
4: new org.h2.message.TraceSystem
dup
aconst_null
invokespecial org.h2.message.TraceSystem.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual org.h2.message.TraceSystem.getTrace:(Ljava/lang/String;)Lorg/h2/message/Trace;
areturn
5: StackMap locals: java.lang.String
StackMap stack:
aload 0
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getTraceSystem:()Lorg/h2/message/TraceSystem;
aload 1
invokevirtual org.h2.message.TraceSystem.getTrace:(Ljava/lang/String;)Lorg/h2/message/Trace;
putfield org.h2.engine.Session.trace:Lorg/h2/message/Trace;
6: aload 0
getfield org.h2.engine.Session.trace:Lorg/h2/message/Trace;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/h2/engine/Session;
3 7 1 traceModuleName Ljava/lang/String;
public void setLastIdentity(org.h2.value.Value);
descriptor: (Lorg/h2/value/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.h2.engine.Session.lastIdentity:Lorg/h2/value/Value;
1: aload 0
aload 1
putfield org.h2.engine.Session.lastScopeIdentity:Lorg/h2/value/Value;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
0 3 1 last Lorg/h2/value/Value;
MethodParameters:
Name Flags
last
public org.h2.value.Value getLastIdentity();
descriptor: ()Lorg/h2/value/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.lastIdentity:Lorg/h2/value/Value;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public void setLastScopeIdentity(org.h2.value.Value);
descriptor: (Lorg/h2/value/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.h2.engine.Session.lastScopeIdentity:Lorg/h2/value/Value;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
0 2 1 last Lorg/h2/value/Value;
MethodParameters:
Name Flags
last
public org.h2.value.Value getLastScopeIdentity();
descriptor: ()Lorg/h2/value/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.lastScopeIdentity:Lorg/h2/value/Value;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public void setLastTriggerIdentity(org.h2.value.Value);
descriptor: (Lorg/h2/value/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.h2.engine.Session.lastTriggerIdentity:Lorg/h2/value/Value;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
0 2 1 last Lorg/h2/value/Value;
MethodParameters:
Name Flags
last
public org.h2.value.Value getLastTriggerIdentity();
descriptor: ()Lorg/h2/value/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.lastTriggerIdentity:Lorg/h2/value/Value;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public org.h2.engine.GeneratedKeys getGeneratedKeys();
descriptor: ()Lorg/h2/engine/GeneratedKeys;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.generatedKeys:Lorg/h2/engine/GeneratedKeys;
ifnonnull 2
1: aload 0
new org.h2.engine.GeneratedKeys
dup
invokespecial org.h2.engine.GeneratedKeys.<init>:()V
putfield org.h2.engine.Session.generatedKeys:Lorg/h2/engine/GeneratedKeys;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.generatedKeys:Lorg/h2/engine/GeneratedKeys;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
public void addLogPos(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.h2.engine.Session.firstUncommittedLog:I
iconst_m1
if_icmpne 3
1: aload 0
iload 1
putfield org.h2.engine.Session.firstUncommittedLog:I
2: aload 0
iload 2
putfield org.h2.engine.Session.firstUncommittedPos:I
3: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Session;
0 4 1 logId I
0 4 2 pos I
MethodParameters:
Name Flags
logId
pos
public int getFirstUncommittedLog();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.firstUncommittedLog:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
void setAllCommitted();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_m1
putfield org.h2.engine.Session.firstUncommittedLog:I
1: aload 0
iconst_m1
putfield org.h2.engine.Session.firstUncommittedPos:I
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
public boolean containsUncommitted();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getStore:()Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 3
1: aload 0
getfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
ifnull 2
aload 0
getfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
invokevirtual org.h2.mvstore.tx.Transaction.hasChanges:()Z
ifeq 2
iconst_1
ireturn
StackMap locals:
StackMap stack:
2: iconst_0
ireturn
3: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.firstUncommittedLog:I
iconst_m1
if_icmpeq 4
iconst_1
ireturn
StackMap locals:
StackMap stack:
4: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/h2/engine/Session;
public void addSavepoint(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.savepoints:Ljava/util/HashMap;
ifnonnull 2
1: aload 0
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.newStringMap:()Ljava/util/HashMap;
putfield org.h2.engine.Session.savepoints:Ljava/util/HashMap;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.savepoints:Ljava/util/HashMap;
aload 1
aload 0
invokevirtual org.h2.engine.Session.setSavepoint:()Lorg/h2/engine/Session$Savepoint;
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Session;
0 4 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public void rollbackToSavepoint(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.h2.engine.Session.checkCommitRollback:()V
1: aload 0
aconst_null
putfield org.h2.engine.Session.currentTransactionName:Ljava/lang/String;
2: aload 0
aconst_null
putfield org.h2.engine.Session.transactionStart:Lorg/h2/value/ValueTimestampTimeZone;
3: aload 0
getfield org.h2.engine.Session.savepoints:Ljava/util/HashMap;
ifnonnull 5
4: ldc 90063
aload 1
invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
athrow
5: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.savepoints:Ljava/util/HashMap;
aload 1
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.engine.Session$Savepoint
astore 2
start local 2 6: aload 2
ifnonnull 8
7: ldc 90063
aload 1
invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
athrow
8: StackMap locals: org.h2.engine.Session$Savepoint
StackMap stack:
aload 0
aload 2
invokevirtual org.h2.engine.Session.rollbackTo:(Lorg/h2/engine/Session$Savepoint;)V
9: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/h2/engine/Session;
0 10 1 name Ljava/lang/String;
6 10 2 savepoint Lorg/h2/engine/Session$Savepoint;
MethodParameters:
Name Flags
name
public void prepareCommit(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.h2.engine.Session.containsUncommitted:()Z
ifeq 2
1: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
aload 0
aload 1
invokevirtual org.h2.engine.Database.prepareCommit:(Lorg/h2/engine/Session;Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield org.h2.engine.Session.currentTransactionName:Ljava/lang/String;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Session;
0 4 1 transactionName Ljava/lang/String;
MethodParameters:
Name Flags
transactionName
public void setPreparedTransaction(java.lang.String, boolean);
descriptor: (Ljava/lang/String;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.h2.engine.Session.currentTransactionName:Ljava/lang/String;
ifnull 7
1: aload 0
getfield org.h2.engine.Session.currentTransactionName:Ljava/lang/String;
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 7
2: iload 2
ifeq 5
3: aload 0
iconst_0
invokevirtual org.h2.engine.Session.commit:(Z)V
4: goto 26
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.engine.Session.rollback:()V
6: goto 26
7: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
8: invokevirtual org.h2.engine.Database.getInDoubtTransactions:()Ljava/util/ArrayList;
9: astore 3
start local 3 10: iload 2
ifeq 11
iconst_1
goto 12
11: StackMap locals: java.util.ArrayList
StackMap stack:
iconst_2
12: StackMap locals:
StackMap stack: int
istore 4
start local 4 13: iconst_0
istore 5
start local 5 14: aload 3
ifnull 22
15: aload 3
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 7
goto 21
StackMap locals: org.h2.engine.Session java.lang.String int java.util.ArrayList int int top java.util.Iterator
StackMap stack:
16: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.store.InDoubtTransaction
astore 6
start local 6 17: aload 6
invokeinterface org.h2.store.InDoubtTransaction.getTransactionName:()Ljava/lang/String;
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 21
18: aload 6
iload 4
invokeinterface org.h2.store.InDoubtTransaction.setState:(I)V
19: iconst_1
istore 5
20: goto 22
end local 6 21: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 16
22: StackMap locals: org.h2.engine.Session java.lang.String int java.util.ArrayList int int
StackMap stack:
iload 5
ifne 26
23: ldc 90129
24: aload 1
25: invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
athrow
end local 5 end local 4 end local 3 26: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lorg/h2/engine/Session;
0 27 1 transactionName Ljava/lang/String;
0 27 2 commit Z
10 26 3 list Ljava/util/ArrayList<Lorg/h2/store/InDoubtTransaction;>;
13 26 4 state I
14 26 5 found Z
17 21 6 p Lorg/h2/store/InDoubtTransaction;
MethodParameters:
Name Flags
transactionName
commit
public boolean isClosed();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.state:Ljava/util/concurrent/atomic/AtomicReference;
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
getstatic org.h2.engine.Session$State.CLOSED:Lorg/h2/engine/Session$State;
if_acmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
public void setThrottle(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
iload 1
i2l
invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
putfield org.h2.engine.Session.throttleNs:J
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
0 2 1 throttle I
MethodParameters:
Name Flags
throttle
public void throttle();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.currentCommandStart:Lorg/h2/value/ValueTimestampTimeZone;
ifnonnull 2
1: aload 0
invokestatic org.h2.util.CurrentTimestamp.get:()Lorg/h2/value/ValueTimestampTimeZone;
putfield org.h2.engine.Session.currentCommandStart:Lorg/h2/value/ValueTimestampTimeZone;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.throttleNs:J
lconst_0
lcmp
ifne 4
3: return
4: StackMap locals:
StackMap stack:
invokestatic java.lang.System.nanoTime:()J
lstore 1
start local 1 5: aload 0
getfield org.h2.engine.Session.lastThrottle:J
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
ldc 50
invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
ladd
lload 1
lcmp
ifle 7
6: return
7: StackMap locals: long
StackMap stack:
aload 0
getfield org.h2.engine.Session.state:Ljava/util/concurrent/atomic/AtomicReference;
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast org.h2.engine.Session$State
astore 3
start local 3 8: aload 3
getstatic org.h2.engine.Session$State.CLOSED:Lorg/h2/engine/Session$State;
if_acmpeq 19
9: aload 0
lload 1
aload 0
getfield org.h2.engine.Session.throttleNs:J
ladd
putfield org.h2.engine.Session.lastThrottle:J
10: aload 0
getfield org.h2.engine.Session.state:Ljava/util/concurrent/atomic/AtomicReference;
aload 3
getstatic org.h2.engine.Session$State.SLEEP:Lorg/h2/engine/Session$State;
invokevirtual java.util.concurrent.atomic.AtomicReference.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
pop
11: getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
aload 0
getfield org.h2.engine.Session.throttleNs:J
invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
invokestatic java.lang.Thread.sleep:(J)V
12: goto 18
StackMap locals: org.h2.engine.Session long org.h2.engine.Session$State
StackMap stack: java.lang.Exception
13: pop
14: aload 0
getfield org.h2.engine.Session.state:Ljava/util/concurrent/atomic/AtomicReference;
getstatic org.h2.engine.Session$State.SLEEP:Lorg/h2/engine/Session$State;
aload 3
invokevirtual java.util.concurrent.atomic.AtomicReference.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
pop
goto 19
15: StackMap locals:
StackMap stack: java.lang.Throwable
astore 4
16: aload 0
getfield org.h2.engine.Session.state:Ljava/util/concurrent/atomic/AtomicReference;
getstatic org.h2.engine.Session$State.SLEEP:Lorg/h2/engine/Session$State;
aload 3
invokevirtual java.util.concurrent.atomic.AtomicReference.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
pop
17: aload 4
athrow
18: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.state:Ljava/util/concurrent/atomic/AtomicReference;
getstatic org.h2.engine.Session$State.SLEEP:Lorg/h2/engine/Session$State;
aload 3
invokevirtual java.util.concurrent.atomic.AtomicReference.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
pop
19: StackMap locals:
StackMap stack:
return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/h2/engine/Session;
5 20 1 time J
8 20 3 prevState Lorg/h2/engine/Session$State;
Exception table:
from to target type
10 12 13 Class java.lang.Exception
10 14 15 any
public void setCurrentCommand(org.h2.command.Command, java.lang.Object);
descriptor: (Lorg/h2/command/Command;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
putfield org.h2.engine.Session.currentCommand:Lorg/h2/command/Command;
1: aload 1
ifnull 3
aload 1
invokevirtual org.h2.command.Command.isQuery:()Z
ifne 3
2: aload 0
invokevirtual org.h2.engine.Session.getGeneratedKeys:()Lorg/h2/engine/GeneratedKeys;
aload 2
invokevirtual org.h2.engine.GeneratedKeys.clear:(Ljava/lang/Object;)V
3: StackMap locals:
StackMap stack:
aload 1
ifnull 10
4: aload 0
getfield org.h2.engine.Session.queryTimeout:I
ifle 9
5: aload 0
invokestatic org.h2.util.CurrentTimestamp.get:()Lorg/h2/value/ValueTimestampTimeZone;
putfield org.h2.engine.Session.currentCommandStart:Lorg/h2/value/ValueTimestampTimeZone;
6: invokestatic java.lang.System.nanoTime:()J
lstore 3
start local 3 7: aload 0
lload 3
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
aload 0
getfield org.h2.engine.Session.queryTimeout:I
i2l
invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
ladd
putfield org.h2.engine.Session.cancelAtNs:J
end local 3 8: goto 10
9: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield org.h2.engine.Session.currentCommandStart:Lorg/h2/value/ValueTimestampTimeZone;
10: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.state:Ljava/util/concurrent/atomic/AtomicReference;
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast org.h2.engine.Session$State
astore 3
start local 3 11: aload 3
getstatic org.h2.engine.Session$State.CLOSED:Lorg/h2/engine/Session$State;
if_acmpeq 15
12: aload 0
getfield org.h2.engine.Session.state:Ljava/util/concurrent/atomic/AtomicReference;
aload 3
aload 1
ifnonnull 13
getstatic org.h2.engine.Session$State.SLEEP:Lorg/h2/engine/Session$State;
goto 14
StackMap locals: org.h2.engine.Session org.h2.command.Command java.lang.Object org.h2.engine.Session$State
StackMap stack: java.util.concurrent.atomic.AtomicReference org.h2.engine.Session$State
13: getstatic org.h2.engine.Session$State.RUNNING:Lorg/h2/engine/Session$State;
StackMap locals: org.h2.engine.Session org.h2.command.Command java.lang.Object org.h2.engine.Session$State
StackMap stack: java.util.concurrent.atomic.AtomicReference org.h2.engine.Session$State org.h2.engine.Session$State
14: invokevirtual java.util.concurrent.atomic.AtomicReference.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
pop
15: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/h2/engine/Session;
0 16 1 command Lorg/h2/command/Command;
0 16 2 generatedKeysRequest Ljava/lang/Object;
7 8 3 now J
11 16 3 currentState Lorg/h2/engine/Session$State;
MethodParameters:
Name Flags
command
generatedKeysRequest
public void checkCanceled();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual org.h2.engine.Session.throttle:()V
1: aload 0
getfield org.h2.engine.Session.cancelAtNs:J
lconst_0
lcmp
ifne 3
2: return
3: StackMap locals:
StackMap stack:
invokestatic java.lang.System.nanoTime:()J
lstore 1
start local 1 4: lload 1
aload 0
getfield org.h2.engine.Session.cancelAtNs:J
lcmp
iflt 7
5: aload 0
lconst_0
putfield org.h2.engine.Session.cancelAtNs:J
6: ldc 57014
invokestatic org.h2.message.DbException.get:(I)Lorg/h2/message/DbException;
athrow
7: StackMap locals: long
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/h2/engine/Session;
4 8 1 time J
public long getCancel();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.cancelAtNs:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public org.h2.command.Command getCurrentCommand();
descriptor: ()Lorg/h2/command/Command;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.currentCommand:Lorg/h2/command/Command;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public org.h2.value.ValueTimestampTimeZone getCurrentCommandStart();
descriptor: ()Lorg/h2/value/ValueTimestampTimeZone;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.currentCommandStart:Lorg/h2/value/ValueTimestampTimeZone;
ifnonnull 2
1: aload 0
invokestatic org.h2.util.CurrentTimestamp.get:()Lorg/h2/value/ValueTimestampTimeZone;
putfield org.h2.engine.Session.currentCommandStart:Lorg/h2/value/ValueTimestampTimeZone;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.currentCommandStart:Lorg/h2/value/ValueTimestampTimeZone;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
public boolean getAllowLiterals();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.allowLiterals:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public void setAllowLiterals(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.h2.engine.Session.allowLiterals:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
0 2 1 b Z
MethodParameters:
Name Flags
b
public void setCurrentSchema(org.h2.schema.Schema);
descriptor: (Lorg/h2/schema/Schema;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
dup
getfield org.h2.engine.Session.modificationId:I
iconst_1
iadd
putfield org.h2.engine.Session.modificationId:I
1: aload 0
aload 1
invokevirtual org.h2.schema.Schema.getName:()Ljava/lang/String;
putfield org.h2.engine.Session.currentSchemaName:Ljava/lang/String;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
0 3 1 schema Lorg/h2/schema/Schema;
MethodParameters:
Name Flags
schema
public java.lang.String getCurrentSchemaName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.currentSchemaName:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public void setCurrentSchemaName(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
aload 1
invokevirtual org.h2.engine.Database.getSchema:(Ljava/lang/String;)Lorg/h2/schema/Schema;
astore 2
start local 2 1: aload 0
aload 2
invokevirtual org.h2.engine.Session.setCurrentSchema:(Lorg/h2/schema/Schema;)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
0 3 1 schemaName Ljava/lang/String;
1 3 2 schema Lorg/h2/schema/Schema;
MethodParameters:
Name Flags
schemaName
public org.h2.jdbc.JdbcConnection createConnection(boolean);
descriptor: (Z)Lorg/h2/jdbc/JdbcConnection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: iload 1
ifeq 3
1: ldc "jdbc:columnlist:connection"
astore 2
start local 2 2: goto 4
end local 2 3: StackMap locals:
StackMap stack:
ldc "jdbc:default:connection"
astore 2
start local 2 4: StackMap locals: java.lang.String
StackMap stack:
new org.h2.jdbc.JdbcConnection
dup
aload 0
aload 0
invokevirtual org.h2.engine.Session.getUser:()Lorg/h2/engine/User;
invokevirtual org.h2.engine.User.getName:()Ljava/lang/String;
aload 2
invokespecial org.h2.jdbc.JdbcConnection.<init>:(Lorg/h2/engine/SessionInterface;Ljava/lang/String;Ljava/lang/String;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/h2/engine/Session;
0 5 1 columnList Z
2 3 2 url Ljava/lang/String;
4 5 2 url Ljava/lang/String;
MethodParameters:
Name Flags
columnList
public org.h2.store.DataHandler getDataHandler();
descriptor: ()Lorg/h2/store/DataHandler;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public void removeAtCommit(org.h2.value.Value);
descriptor: (Lorg/h2/value/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.h2.value.Value.toString:()Ljava/lang/String;
astore 2
start local 2 1: aload 1
invokevirtual org.h2.value.Value.isLinkedToTable:()Z
ifne 3
2: aload 2
invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
pop
3: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield org.h2.engine.Session.removeLobMap:Ljava/util/HashMap;
ifnonnull 5
4: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.h2.engine.Session.removeLobMap:Ljava/util/HashMap;
5: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.removeLobMap:Ljava/util/HashMap;
aload 2
aload 1
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/h2/engine/Session;
0 7 1 v Lorg/h2/value/Value;
1 7 2 key Ljava/lang/String;
MethodParameters:
Name Flags
v
public void removeAtCommitStop(org.h2.value.Value);
descriptor: (Lorg/h2/value/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.removeLobMap:Ljava/util/HashMap;
ifnull 2
1: aload 0
getfield org.h2.engine.Session.removeLobMap:Ljava/util/HashMap;
aload 1
invokevirtual org.h2.value.Value.toString:()Ljava/lang/String;
invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
0 3 1 v Lorg/h2/value/Value;
MethodParameters:
Name Flags
v
public java.lang.String getNextSystemIdentifier(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "_"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
dup
getfield org.h2.engine.Session.systemIdentifier:I
dup_x1
iconst_1
iadd
putfield org.h2.engine.Session.systemIdentifier:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 2
start local 2 1: aload 1
aload 2
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifne 0
2: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
0 3 1 sql Ljava/lang/String;
1 3 2 identifier Ljava/lang/String;
MethodParameters:
Name Flags
sql
public void addProcedure(org.h2.engine.Procedure);
descriptor: (Lorg/h2/engine/Procedure;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.procedures:Ljava/util/HashMap;
ifnonnull 2
1: aload 0
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.newStringMap:()Ljava/util/HashMap;
putfield org.h2.engine.Session.procedures:Ljava/util/HashMap;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.procedures:Ljava/util/HashMap;
aload 1
invokevirtual org.h2.engine.Procedure.getName:()Ljava/lang/String;
aload 1
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Session;
0 4 1 procedure Lorg/h2/engine/Procedure;
MethodParameters:
Name Flags
procedure
public void removeProcedure(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.procedures:Ljava/util/HashMap;
ifnull 2
1: aload 0
getfield org.h2.engine.Session.procedures:Ljava/util/HashMap;
aload 1
invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
0 3 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public org.h2.engine.Procedure getProcedure(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/h2/engine/Procedure;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.procedures:Ljava/util/HashMap;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.procedures:Ljava/util/HashMap;
aload 1
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.engine.Procedure
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
0 3 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public void setSchemaSearchPath(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
dup
getfield org.h2.engine.Session.modificationId:I
iconst_1
iadd
putfield org.h2.engine.Session.modificationId:I
1: aload 0
aload 1
putfield org.h2.engine.Session.schemaSearchPath:[Ljava/lang/String;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
0 3 1 schemas [Ljava/lang/String;
MethodParameters:
Name Flags
schemas
public java.lang.String[] getSchemaSearchPath();
descriptor: ()[Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.schemaSearchPath:[Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.serialId:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
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 "#"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.h2.engine.Session.serialId:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " (user: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.h2.engine.Session.user:Lorg/h2/engine/User;
ifnonnull 1
ldc "<null>"
goto 2
StackMap locals:
StackMap stack: java.lang.StringBuilder
1: aload 0
getfield org.h2.engine.Session.user:Lorg/h2/engine/User;
invokevirtual org.h2.engine.User.getName:()Ljava/lang/String;
StackMap locals: org.h2.engine.Session
StackMap stack: java.lang.StringBuilder java.lang.String
2: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)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 3 0 this Lorg/h2/engine/Session;
public void setUndoLogEnabled(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.h2.engine.Session.undoLogEnabled:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
0 2 1 b Z
MethodParameters:
Name Flags
b
public void setRedoLogBinary(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.h2.engine.Session.redoLogBinary:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
0 2 1 b Z
MethodParameters:
Name Flags
b
public boolean isUndoLogEnabled();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.undoLogEnabled:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public void begin();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
putfield org.h2.engine.Session.autoCommitAtTransactionEnd:Z
1: aload 0
iconst_0
putfield org.h2.engine.Session.autoCommit:Z
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
public long getSessionStart();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.sessionStart:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public org.h2.value.ValueTimestampTimeZone getTransactionStart();
descriptor: ()Lorg/h2/value/ValueTimestampTimeZone;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.transactionStart:Lorg/h2/value/ValueTimestampTimeZone;
ifnonnull 2
1: aload 0
invokestatic org.h2.util.CurrentTimestamp.get:()Lorg/h2/value/ValueTimestampTimeZone;
putfield org.h2.engine.Session.transactionStart:Lorg/h2/value/ValueTimestampTimeZone;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.transactionStart:Lorg/h2/value/ValueTimestampTimeZone;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
public org.h2.table.Table[] getLocks();
descriptor: ()[Lorg/h2/table/Table;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: new java.util.ArrayList
dup
aload 0
getfield org.h2.engine.Session.locks:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.size:()I
invokespecial java.util.ArrayList.<init>:(I)V
astore 1
start local 1 1: aload 0
getfield org.h2.engine.Session.locks:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 3
goto 7
StackMap locals: org.h2.engine.Session java.util.ArrayList top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.table.Table
astore 2
start local 2 3: aload 1
aload 2
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
4: goto 7
StackMap locals: org.h2.engine.Session java.util.ArrayList org.h2.table.Table java.util.Iterator
StackMap stack: java.lang.Exception
5: pop
6: goto 8
end local 2 7: StackMap locals: org.h2.engine.Session java.util.ArrayList top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
8: StackMap locals: org.h2.engine.Session java.util.ArrayList
StackMap stack:
aload 1
iconst_0
anewarray org.h2.table.Table
invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast org.h2.table.Table[]
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/h2/engine/Session;
1 9 1 copy Ljava/util/ArrayList<Lorg/h2/table/Table;>;
3 7 2 lock Lorg/h2/table/Table;
Exception table:
from to target type
3 4 5 Class java.lang.Exception
public void waitIfExclusiveModeEnabled();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getLobSession:()Lorg/h2/engine/Session;
aload 0
if_acmpne 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getExclusiveSession:()Lorg/h2/engine/Session;
astore 1
start local 1 3: aload 1
ifnull 11
aload 1
aload 0
if_acmpne 5
4: goto 11
5: StackMap locals: org.h2.engine.Session
StackMap stack:
aload 1
invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
ifeq 7
6: goto 11
7: StackMap locals:
StackMap stack:
ldc 100
invokestatic java.lang.Thread.sleep:(J)V
8: goto 2
StackMap locals:
StackMap stack: java.lang.InterruptedException
9: pop
end local 1 10: goto 2
11: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/h2/engine/Session;
3 10 1 exclusive Lorg/h2/engine/Session;
Exception table:
from to target type
7 8 9 Class java.lang.InterruptedException
public java.util.Map<java.lang.Object, org.h2.index.ViewIndex> getViewIndexCache(boolean);
descriptor: (Z)Ljava/util/Map;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: iload 1
ifeq 4
1: aload 0
getfield org.h2.engine.Session.subQueryIndexCache:Ljava/util/HashMap;
ifnonnull 3
2: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.h2.engine.Session.subQueryIndexCache:Ljava/util/HashMap;
3: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.subQueryIndexCache:Ljava/util/HashMap;
areturn
4: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.viewIndexCache:Lorg/h2/util/SmallLRUCache;
astore 2
start local 2 5: aload 2
ifnonnull 7
6: aload 0
bipush 64
invokestatic org.h2.util.SmallLRUCache.newInstance:(I)Lorg/h2/util/SmallLRUCache;
dup
astore 2
putfield org.h2.engine.Session.viewIndexCache:Lorg/h2/util/SmallLRUCache;
7: StackMap locals: org.h2.util.SmallLRUCache
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/h2/engine/Session;
0 8 1 subQuery Z
5 8 2 cache Lorg/h2/util/SmallLRUCache<Ljava/lang/Object;Lorg/h2/index/ViewIndex;>;
Signature: (Z)Ljava/util/Map<Ljava/lang/Object;Lorg/h2/index/ViewIndex;>;
MethodParameters:
Name Flags
subQuery
public void addTemporaryResult(org.h2.result.ResultInterface);
descriptor: (Lorg/h2/result/ResultInterface;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface org.h2.result.ResultInterface.needToClose:()Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.temporaryResults:Ljava/util/HashSet;
ifnonnull 4
3: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield org.h2.engine.Session.temporaryResults:Ljava/util/HashSet;
4: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.temporaryResults:Ljava/util/HashSet;
invokevirtual java.util.HashSet.size:()I
bipush 100
if_icmpge 6
5: aload 0
getfield org.h2.engine.Session.temporaryResults:Ljava/util/HashSet;
aload 1
invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
pop
6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/h2/engine/Session;
0 7 1 result Lorg/h2/result/ResultInterface;
MethodParameters:
Name Flags
result
private void closeTemporaryResults();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.temporaryResults:Ljava/util/HashSet;
ifnull 6
1: aload 0
getfield org.h2.engine.Session.temporaryResults:Ljava/util/HashSet;
invokevirtual java.util.HashSet.iterator:()Ljava/util/Iterator;
astore 2
goto 4
StackMap locals: org.h2.engine.Session top java.util.Iterator
StackMap stack:
2: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.result.ResultInterface
astore 1
start local 1 3: aload 1
invokeinterface org.h2.result.ResultInterface.close:()V
end local 1 4: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 0
aconst_null
putfield org.h2.engine.Session.temporaryResults:Ljava/util/HashSet;
6: StackMap locals: org.h2.engine.Session
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/h2/engine/Session;
3 4 1 result Lorg/h2/result/ResultInterface;
public void setQueryTimeout(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getSettings:()Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.maxQueryTimeout:I
istore 2
start local 2 1: iload 2
ifeq 3
iload 2
iload 1
if_icmplt 2
iload 1
ifne 3
2: StackMap locals: int
StackMap stack:
iload 2
istore 1
3: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield org.h2.engine.Session.queryTimeout:I
4: aload 0
lconst_0
putfield org.h2.engine.Session.cancelAtNs:J
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/h2/engine/Session;
0 6 1 queryTimeout I
1 6 2 max I
MethodParameters:
Name Flags
queryTimeout
public int getQueryTimeout();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.queryTimeout:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public void setWaitForLock(org.h2.table.Table, java.lang.Thread);
descriptor: (Lorg/h2/table/Table;Ljava/lang/Thread;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
putfield org.h2.engine.Session.waitForLock:Lorg/h2/table/Table;
1: aload 0
aload 2
putfield org.h2.engine.Session.waitForLockThread:Ljava/lang/Thread;
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
0 3 1 waitForLock Lorg/h2/table/Table;
0 3 2 waitForLockThread Ljava/lang/Thread;
MethodParameters:
Name Flags
waitForLock
waitForLockThread
public org.h2.table.Table getWaitForLock();
descriptor: ()Lorg/h2/table/Table;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.waitForLock:Lorg/h2/table/Table;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public java.lang.Thread getWaitForLockThread();
descriptor: ()Ljava/lang/Thread;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.waitForLockThread:Ljava/lang/Thread;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public int getModificationId();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.modificationId:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public boolean isReconnectNeeded(boolean);
descriptor: (Z)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=2
start local 0 start local 1 0: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.isReconnectNeeded:()Z
istore 2
start local 2 1: iload 2
ifeq 3
2: iconst_1
ireturn
3: StackMap locals: int
StackMap stack:
iload 1
ifeq 6
4: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.beforeWriting:()Z
ifeq 0
5: iconst_0
ireturn
6: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/h2/engine/Session;
0 7 1 write Z
1 7 2 reconnect Z
MethodParameters:
Name Flags
write
public void afterWriting();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.afterWriting:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
public org.h2.engine.SessionInterface reconnect(boolean);
descriptor: (Z)Lorg/h2/engine/SessionInterface;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.h2.engine.Session.readSessionState:()V
1: aload 0
invokevirtual org.h2.engine.Session.close:()V
2: invokestatic org.h2.engine.Engine.getInstance:()Lorg/h2/engine/Engine;
aload 0
getfield org.h2.engine.Session.connectionInfo:Lorg/h2/engine/ConnectionInfo;
invokevirtual org.h2.engine.Engine.createSession:(Lorg/h2/engine/ConnectionInfo;)Lorg/h2/engine/Session;
astore 2
start local 2 3: aload 2
aload 0
getfield org.h2.engine.Session.sessionState:Ljava/util/ArrayList;
putfield org.h2.engine.Session.sessionState:Ljava/util/ArrayList;
4: aload 2
invokevirtual org.h2.engine.Session.recreateSessionState:()V
5: iload 1
ifeq 7
6: StackMap locals: org.h2.engine.Session
StackMap stack:
aload 2
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.beforeWriting:()Z
ifeq 6
7: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/h2/engine/Session;
0 8 1 write Z
3 8 2 newSession Lorg/h2/engine/Session;
MethodParameters:
Name Flags
write
public void setConnectionInfo(org.h2.engine.ConnectionInfo);
descriptor: (Lorg/h2/engine/ConnectionInfo;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.h2.engine.Session.connectionInfo:Lorg/h2/engine/ConnectionInfo;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
0 2 1 ci Lorg/h2/engine/ConnectionInfo;
MethodParameters:
Name Flags
ci
public org.h2.value.Value getTransactionId();
descriptor: ()Lorg/h2/value/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getStore:()Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 4
1: aload 0
getfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
ifnull 2
aload 0
getfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
invokevirtual org.h2.mvstore.tx.Transaction.hasChanges:()Z
ifne 3
2: StackMap locals:
StackMap stack:
getstatic org.h2.value.ValueNull.INSTANCE:Lorg/h2/value/ValueNull;
areturn
3: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.engine.Session.getTransaction:()Lorg/h2/mvstore/tx/Transaction;
invokevirtual org.h2.mvstore.tx.Transaction.getSequenceNum:()J
invokestatic java.lang.Long.toString:(J)Ljava/lang/String;
invokestatic org.h2.value.ValueString.get:(Ljava/lang/String;)Lorg/h2/value/Value;
areturn
4: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.isPersistent:()Z
ifne 6
5: getstatic org.h2.value.ValueNull.INSTANCE:Lorg/h2/value/ValueNull;
areturn
6: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
ifnull 7
aload 0
getfield org.h2.engine.Session.undoLog:Lorg/h2/engine/UndoLog;
invokevirtual org.h2.engine.UndoLog.size:()I
ifne 8
7: StackMap locals:
StackMap stack:
getstatic org.h2.value.ValueNull.INSTANCE:Lorg/h2/value/ValueNull;
areturn
8: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 0
getfield org.h2.engine.Session.firstUncommittedLog:I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "-"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.h2.engine.Session.firstUncommittedPos:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
9: ldc "-"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.h2.engine.Session.id:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
10: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.h2.value.ValueString.get:(Ljava/lang/String;)Lorg/h2/value/Value;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/h2/engine/Session;
public int nextObjectId();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
dup
getfield org.h2.engine.Session.objectId:I
dup_x1
iconst_1
iadd
putfield org.h2.engine.Session.objectId:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public boolean isRedoLogBinaryEnabled();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.redoLogBinary:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public org.h2.mvstore.tx.Transaction getTransaction();
descriptor: ()Lorg/h2/mvstore/tx/Transaction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
ifnonnull 9
1: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getStore:()Lorg/h2/mvstore/db/MVTableEngine$Store;
astore 1
start local 1 2: aload 1
ifnull 8
3: aload 1
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.getMvStore:()Lorg/h2/mvstore/MVStore;
invokevirtual org.h2.mvstore.MVStore.isClosed:()Z
ifeq 7
4: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getBackgroundException:()Ljava/lang/Throwable;
astore 2
start local 2 5: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.shutdownImmediately:()V
6: ldc 90098
aload 2
iconst_0
anewarray java.lang.String
invokestatic org.h2.message.DbException.get:(ILjava/lang/Throwable;[Ljava/lang/String;)Lorg/h2/message/DbException;
athrow
end local 2 7: StackMap locals: org.h2.mvstore.db.MVTableEngine$Store
StackMap stack:
aload 0
aload 1
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.getTransactionStore:()Lorg/h2/mvstore/tx/TransactionStore;
aload 0
aload 0
getfield org.h2.engine.Session.lockTimeout:I
aload 0
getfield org.h2.engine.Session.id:I
invokevirtual org.h2.mvstore.tx.TransactionStore.begin:(Lorg/h2/mvstore/tx/TransactionStore$RollbackListener;II)Lorg/h2/mvstore/tx/Transaction;
putfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
8: StackMap locals:
StackMap stack:
aload 0
ldc -1
putfield org.h2.engine.Session.startStatement:J
end local 1 9: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/h2/engine/Session;
2 9 1 store Lorg/h2/mvstore/db/MVTableEngine$Store;
5 7 2 backgroundException Ljava/lang/Throwable;
private long getStatementSavepoint();
descriptor: ()J
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.startStatement:J
ldc -1
lcmp
ifne 2
1: aload 0
aload 0
invokevirtual org.h2.engine.Session.getTransaction:()Lorg/h2/mvstore/tx/Transaction;
invokevirtual org.h2.mvstore.tx.Transaction.setSavepoint:()J
putfield org.h2.engine.Session.startStatement:J
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.startStatement:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
public void startStatementWithinTransaction();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.h2.engine.Session.getTransaction:()Lorg/h2/mvstore/tx/Transaction;
astore 1
start local 1 1: aload 1
ifnull 3
2: aload 1
invokevirtual org.h2.mvstore.tx.Transaction.markStatementStart:()V
3: StackMap locals: org.h2.mvstore.tx.Transaction
StackMap stack:
aload 0
ldc -1
putfield org.h2.engine.Session.startStatement:J
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/h2/engine/Session;
1 5 1 transaction Lorg/h2/mvstore/tx/Transaction;
public void endStatement();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
ifnull 2
1: aload 0
getfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
invokevirtual org.h2.mvstore.tx.Transaction.markStatementEnd:()V
2: StackMap locals:
StackMap stack:
aload 0
ldc -1
putfield org.h2.engine.Session.startStatement:J
3: aload 0
invokevirtual org.h2.engine.Session.closeTemporaryResults:()V
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/h2/engine/Session;
public void clearViewIndexCache();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aconst_null
putfield org.h2.engine.Session.viewIndexCache:Lorg/h2/util/SmallLRUCache;
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
public void addTemporaryLob(org.h2.value.Value);
descriptor: (Lorg/h2/value/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.h2.value.Value.getValueType:()I
invokestatic org.h2.value.DataType.isLargeObject:(I)Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.h2.value.Value.getTableId:()I
bipush -3
if_icmpeq 4
3: aload 1
invokevirtual org.h2.value.Value.getTableId:()I
bipush -2
if_icmpne 8
4: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.temporaryResultLobs:Ljava/util/LinkedList;
ifnonnull 6
5: aload 0
new java.util.LinkedList
dup
invokespecial java.util.LinkedList.<init>:()V
putfield org.h2.engine.Session.temporaryResultLobs:Ljava/util/LinkedList;
6: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.temporaryResultLobs:Ljava/util/LinkedList;
new org.h2.engine.Session$TimeoutValue
dup
aload 1
invokespecial org.h2.engine.Session$TimeoutValue.<init>:(Lorg/h2/value/Value;)V
invokevirtual java.util.LinkedList.add:(Ljava/lang/Object;)Z
pop
7: goto 11
8: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.temporaryLobs:Ljava/util/ArrayList;
ifnonnull 10
9: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.h2.engine.Session.temporaryLobs:Ljava/util/ArrayList;
10: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.temporaryLobs:Ljava/util/ArrayList;
aload 1
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
11: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/h2/engine/Session;
0 12 1 v Lorg/h2/value/Value;
MethodParameters:
Name Flags
v
public boolean isRemote();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public void markTableForAnalyze(org.h2.table.Table);
descriptor: (Lorg/h2/table/Table;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Session.tablesToAnalyze:Ljava/util/HashSet;
ifnonnull 2
1: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield org.h2.engine.Session.tablesToAnalyze:Ljava/util/HashSet;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Session.tablesToAnalyze:Ljava/util/HashSet;
aload 1
invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
pop
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Session;
0 4 1 table Lorg/h2/table/Table;
MethodParameters:
Name Flags
table
public org.h2.engine.Session$State getState();
descriptor: ()Lorg/h2/engine/Session$State;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.h2.engine.Session.getBlockingSessionId:()I
ifeq 1
getstatic org.h2.engine.Session$State.BLOCKED:Lorg/h2/engine/Session$State;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield org.h2.engine.Session.state:Ljava/util/concurrent/atomic/AtomicReference;
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast org.h2.engine.Session$State
StackMap locals:
StackMap stack: org.h2.engine.Session$State
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
public int getBlockingSessionId();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
ifnonnull 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield org.h2.engine.Session.transaction:Lorg/h2/mvstore/tx/Transaction;
invokevirtual org.h2.mvstore.tx.Transaction.getBlockerId:()I
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Session;
public void onRollback(org.h2.mvstore.MVMap<java.lang.Object, org.h2.value.VersionedValue>, , org.h2.value.VersionedValue, org.h2.value.VersionedValue);
descriptor: (Lorg/h2/mvstore/MVMap;Ljava/lang/Object;Lorg/h2/value/VersionedValue;Lorg/h2/value/VersionedValue;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=14, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield org.h2.engine.Session.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getStore:()Lorg/h2/mvstore/db/MVTableEngine$Store;
astore 5
start local 5 1: aload 5
ifnull 27
2: aload 5
aload 1
invokevirtual org.h2.mvstore.MVMap.getName:()Ljava/lang/String;
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.getTable:(Ljava/lang/String;)Lorg/h2/mvstore/db/MVTable;
astore 6
start local 6 3: aload 6
ifnull 27
4: aload 2
checkcast org.h2.value.ValueLong
invokevirtual org.h2.value.ValueLong.getLong:()J
lstore 7
start local 7 5: aload 6
lload 7
aload 3
invokestatic org.h2.engine.Session.getRowFromVersionedValue:(Lorg/h2/mvstore/db/MVTable;JLorg/h2/value/VersionedValue;)Lorg/h2/result/Row;
astore 9
start local 9 6: aload 6
lload 7
aload 4
invokestatic org.h2.engine.Session.getRowFromVersionedValue:(Lorg/h2/mvstore/db/MVTable;JLorg/h2/value/VersionedValue;)Lorg/h2/result/Row;
astore 10
start local 10 7: aload 6
aload 0
aload 9
aload 10
iconst_1
invokevirtual org.h2.mvstore.db.MVTable.fireAfterRow:(Lorg/h2/engine/Session;Lorg/h2/result/Row;Lorg/h2/result/Row;Z)V
8: aload 6
invokevirtual org.h2.mvstore.db.MVTable.getContainsLargeObject:()Z
ifeq 27
9: aload 9
ifnull 18
10: iconst_0
istore 11
start local 11 11: aload 9
invokeinterface org.h2.result.Row.getColumnCount:()I
istore 12
start local 12 12: goto 17
13: StackMap locals: org.h2.engine.Session org.h2.mvstore.MVMap java.lang.Object org.h2.value.VersionedValue org.h2.value.VersionedValue org.h2.mvstore.db.MVTableEngine$Store org.h2.mvstore.db.MVTable long org.h2.result.Row org.h2.result.Row int int
StackMap stack:
aload 9
iload 11
invokeinterface org.h2.result.Row.getValue:(I)Lorg/h2/value/Value;
astore 13
start local 13 14: aload 13
invokevirtual org.h2.value.Value.isLinkedToTable:()Z
ifeq 16
15: aload 0
aload 13
invokevirtual org.h2.engine.Session.removeAtCommit:(Lorg/h2/value/Value;)V
end local 13 16: StackMap locals:
StackMap stack:
iinc 11 1
StackMap locals:
StackMap stack:
17: iload 11
iload 12
if_icmplt 13
end local 12 end local 11 18: StackMap locals:
StackMap stack:
aload 10
ifnull 27
19: iconst_0
istore 11
start local 11 20: aload 10
invokeinterface org.h2.result.Row.getColumnCount:()I
istore 12
start local 12 21: goto 26
22: StackMap locals: int int
StackMap stack:
aload 10
iload 11
invokeinterface org.h2.result.Row.getValue:(I)Lorg/h2/value/Value;
astore 13
start local 13 23: aload 13
invokevirtual org.h2.value.Value.isLinkedToTable:()Z
ifeq 25
24: aload 0
aload 13
invokevirtual org.h2.engine.Session.removeAtCommitStop:(Lorg/h2/value/Value;)V
end local 13 25: StackMap locals:
StackMap stack:
iinc 11 1
StackMap locals:
StackMap stack:
26: iload 11
iload 12
if_icmplt 22
end local 12 end local 11 end local 10 end local 9 end local 7 end local 6 27: StackMap locals: org.h2.engine.Session org.h2.mvstore.MVMap java.lang.Object org.h2.value.VersionedValue org.h2.value.VersionedValue org.h2.mvstore.db.MVTableEngine$Store
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lorg/h2/engine/Session;
0 28 1 map Lorg/h2/mvstore/MVMap<Ljava/lang/Object;Lorg/h2/value/VersionedValue;>;
0 28 2 key Ljava/lang/Object;
0 28 3 existingValue Lorg/h2/value/VersionedValue;
0 28 4 restoredValue Lorg/h2/value/VersionedValue;
1 28 5 store Lorg/h2/mvstore/db/MVTableEngine$Store;
3 27 6 table Lorg/h2/mvstore/db/MVTable;
5 27 7 recKey J
6 27 9 oldRow Lorg/h2/result/Row;
7 27 10 newRow Lorg/h2/result/Row;
11 18 11 i I
12 18 12 len I
14 16 13 v Lorg/h2/value/Value;
20 27 11 i I
21 27 12 len I
23 25 13 v Lorg/h2/value/Value;
Signature: (Lorg/h2/mvstore/MVMap<Ljava/lang/Object;Lorg/h2/value/VersionedValue;>;Ljava/lang/Object;Lorg/h2/value/VersionedValue;Lorg/h2/value/VersionedValue;)V
MethodParameters:
Name Flags
map
key
existingValue
restoredValue
private static org.h2.result.Row getRowFromVersionedValue(org.h2.mvstore.db.MVTable, long, org.h2.value.VersionedValue);
descriptor: (Lorg/h2/mvstore/db/MVTable;JLorg/h2/value/VersionedValue;)Lorg/h2/result/Row;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=7, args_size=3
start local 0 start local 1 start local 3 0: aload 3
ifnonnull 1
aconst_null
goto 2
StackMap locals:
StackMap stack:
1: aload 3
invokevirtual org.h2.value.VersionedValue.getCurrentValue:()Ljava/lang/Object;
StackMap locals:
StackMap stack: java.lang.Object
2: astore 4
start local 4 3: aload 4
ifnonnull 5
4: aconst_null
areturn
5: StackMap locals: java.lang.Object
StackMap stack:
aload 4
instanceof org.h2.result.Row
ifeq 8
6: aload 4
checkcast org.h2.result.Row
astore 5
start local 5 7: getstatic org.h2.engine.Session.$assertionsDisabled:Z
ifne 11
aload 5
invokeinterface org.h2.result.Row.getKey:()J
lload 1
lcmp
ifeq 11
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
aload 5
invokeinterface org.h2.result.Row.getKey:()J
invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " != "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
lload 1
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
end local 5 8: StackMap locals:
StackMap stack:
aload 4
checkcast org.h2.value.ValueArray
astore 6
start local 6 9: aload 0
aload 6
invokevirtual org.h2.value.ValueArray.getList:()[Lorg/h2/value/Value;
iconst_0
invokevirtual org.h2.mvstore.db.MVTable.createRow:([Lorg/h2/value/Value;I)Lorg/h2/result/Row;
astore 5
start local 5 10: aload 5
lload 1
invokeinterface org.h2.result.Row.setKey:(J)V
end local 6 11: StackMap locals: org.h2.result.Row
StackMap stack:
aload 5
areturn
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 table Lorg/h2/mvstore/db/MVTable;
0 12 1 recKey J
0 12 3 versionedValue Lorg/h2/value/VersionedValue;
3 12 4 value Ljava/lang/Object;
7 8 5 result Lorg/h2/result/Row;
10 12 5 result Lorg/h2/result/Row;
9 11 6 array Lorg/h2/value/ValueArray;
MethodParameters:
Name Flags
table
recKey
versionedValue
public org.h2.util.ColumnNamerConfiguration getColumnNamerConfiguration();
descriptor: ()Lorg/h2/util/ColumnNamerConfiguration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Session.columnNamerConfiguration:Lorg/h2/util/ColumnNamerConfiguration;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public void setColumnNamerConfiguration(org.h2.util.ColumnNamerConfiguration);
descriptor: (Lorg/h2/util/ColumnNamerConfiguration;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.h2.engine.Session.columnNamerConfiguration:Lorg/h2/util/ColumnNamerConfiguration;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Session;
0 2 1 columnNamerConfiguration Lorg/h2/util/ColumnNamerConfiguration;
MethodParameters:
Name Flags
columnNamerConfiguration
public boolean isSupportsGeneratedKeys();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Session;
public void readSessionState();
descriptor: ()V
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial org.h2.engine.SessionWithState.readSessionState:()V
return
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "Session.java"
NestMembers:
org.h2.engine.Session$Savepoint org.h2.engine.Session$State org.h2.engine.Session$TimeoutValue
InnerClasses:
public Savepoint = org.h2.engine.Session$Savepoint of org.h2.engine.Session
public final State = org.h2.engine.Session$State of org.h2.engine.Session
public TimeoutValue = org.h2.engine.Session$TimeoutValue of org.h2.engine.Session
public Store = org.h2.mvstore.db.MVTableEngine$Store of org.h2.mvstore.db.MVTableEngine
public abstract RollbackListener = org.h2.mvstore.tx.TransactionStore$RollbackListener of org.h2.mvstore.tx.TransactionStore