public class org.h2.engine.Database implements org.h2.store.DataHandler
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.h2.engine.Database
super_class: java.lang.Object
{
private static int initialPowerOffCount;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static final boolean ASSERT;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.ThreadLocal<org.h2.engine.Session> META_LOCK_DEBUGGING;
descriptor: Ljava/lang/ThreadLocal;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/lang/ThreadLocal<Lorg/h2/engine/Session;>;
private static final java.lang.ThreadLocal<org.h2.engine.Database> META_LOCK_DEBUGGING_DB;
descriptor: Ljava/lang/ThreadLocal;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/lang/ThreadLocal<Lorg/h2/engine/Database;>;
private static final java.lang.ThreadLocal<java.lang.Throwable> META_LOCK_DEBUGGING_STACK;
descriptor: Ljava/lang/ThreadLocal;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/lang/ThreadLocal<Ljava/lang/Throwable;>;
private static final org.h2.engine.Session[] EMPTY_SESSION_ARRAY;
descriptor: [Lorg/h2/engine/Session;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String SYSTEM_USER_NAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "DBA"
private final boolean persistent;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String databaseName;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String databaseShortName;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String databaseURL;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String cipher;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final byte[] filePasswordHash;
descriptor: [B
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final byte[] fileEncryptionKey;
descriptor: [B
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.HashMap<java.lang.String, org.h2.engine.Role> roles;
descriptor: Ljava/util/HashMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/engine/Role;>;
private final java.util.HashMap<java.lang.String, org.h2.engine.User> users;
descriptor: Ljava/util/HashMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/engine/User;>;
private final java.util.HashMap<java.lang.String, org.h2.engine.Setting> settings;
descriptor: Ljava/util/HashMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/engine/Setting;>;
private final java.util.HashMap<java.lang.String, org.h2.schema.Schema> schemas;
descriptor: Ljava/util/HashMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/schema/Schema;>;
private final java.util.HashMap<java.lang.String, org.h2.engine.Right> rights;
descriptor: Ljava/util/HashMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/engine/Right;>;
private final java.util.HashMap<java.lang.String, org.h2.engine.Domain> domains;
descriptor: Ljava/util/HashMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/engine/Domain;>;
private final java.util.HashMap<java.lang.String, org.h2.engine.UserAggregate> aggregates;
descriptor: Ljava/util/HashMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/engine/UserAggregate;>;
private final java.util.HashMap<java.lang.String, org.h2.engine.Comment> ;
descriptor: Ljava/util/HashMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/engine/Comment;>;
private final java.util.HashMap<java.lang.String, org.h2.api.TableEngine> tableEngines;
descriptor: Ljava/util/HashMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/api/TableEngine;>;
private final java.util.Set<org.h2.engine.Session> userSessions;
descriptor: Ljava/util/Set;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Set<Lorg/h2/engine/Session;>;
private final java.util.concurrent.atomic.AtomicReference<org.h2.engine.Session> exclusiveSession;
descriptor: Ljava/util/concurrent/atomic/AtomicReference;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/concurrent/atomic/AtomicReference<Lorg/h2/engine/Session;>;
private final java.util.BitSet objectIds;
descriptor: Ljava/util/BitSet;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.Object lobSyncObject;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private org.h2.schema.Schema mainSchema;
descriptor: Lorg/h2/schema/Schema;
flags: (0x0002) ACC_PRIVATE
private org.h2.schema.Schema infoSchema;
descriptor: Lorg/h2/schema/Schema;
flags: (0x0002) ACC_PRIVATE
private int nextSessionId;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int nextTempTableId;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private org.h2.engine.User systemUser;
descriptor: Lorg/h2/engine/User;
flags: (0x0002) ACC_PRIVATE
private org.h2.engine.Session systemSession;
descriptor: Lorg/h2/engine/Session;
flags: (0x0002) ACC_PRIVATE
private org.h2.engine.Session lobSession;
descriptor: Lorg/h2/engine/Session;
flags: (0x0002) ACC_PRIVATE
private org.h2.table.Table meta;
descriptor: Lorg/h2/table/Table;
flags: (0x0002) ACC_PRIVATE
private org.h2.index.Index metaIdIndex;
descriptor: Lorg/h2/index/Index;
flags: (0x0002) ACC_PRIVATE
private org.h2.store.FileLock lock;
descriptor: Lorg/h2/store/FileLock;
flags: (0x0002) ACC_PRIVATE
private org.h2.store.WriterThread writer;
descriptor: Lorg/h2/store/WriterThread;
flags: (0x0002) ACC_PRIVATE
private volatile boolean starting;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private org.h2.message.TraceSystem traceSystem;
descriptor: Lorg/h2/message/TraceSystem;
flags: (0x0002) ACC_PRIVATE
private org.h2.message.Trace trace;
descriptor: Lorg/h2/message/Trace;
flags: (0x0002) ACC_PRIVATE
private final org.h2.store.FileLockMethod fileLockMethod;
descriptor: Lorg/h2/store/FileLockMethod;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private org.h2.engine.Role publicRole;
descriptor: Lorg/h2/engine/Role;
flags: (0x0002) ACC_PRIVATE
private final java.util.concurrent.atomic.AtomicLong modificationDataId;
descriptor: Ljava/util/concurrent/atomic/AtomicLong;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.concurrent.atomic.AtomicLong modificationMetaId;
descriptor: Ljava/util/concurrent/atomic/AtomicLong;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private org.h2.value.CompareMode compareMode;
descriptor: Lorg/h2/value/CompareMode;
flags: (0x0002) ACC_PRIVATE
private java.lang.String cluster;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private boolean readOnly;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private int writeDelay;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private org.h2.api.DatabaseEventListener eventListener;
descriptor: Lorg/h2/api/DatabaseEventListener;
flags: (0x0002) ACC_PRIVATE
private int maxMemoryRows;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int maxMemoryUndo;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int lockMode;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int maxLengthInplaceLob;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int allowLiterals;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int powerOffCount;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private volatile int closeDelay;
descriptor: I
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private org.h2.engine.DelayedDatabaseCloser delayedCloser;
descriptor: Lorg/h2/engine/DelayedDatabaseCloser;
flags: (0x0002) ACC_PRIVATE
private volatile boolean closing;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private boolean ignoreCase;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean deleteFilesOnDisconnect;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.lang.String lobCompressionAlgorithm;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private boolean optimizeReuseResults;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private final java.lang.String cacheType;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String accessModeData;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private boolean referentialIntegrity;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private org.h2.engine.Mode mode;
descriptor: Lorg/h2/engine/Mode;
flags: (0x0002) ACC_PRIVATE
private boolean multiThreaded;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private int maxOperationMemory;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private org.h2.util.SmallLRUCache<java.lang.String, java.lang.String[]> lobFileListCache;
descriptor: Lorg/h2/util/SmallLRUCache;
flags: (0x0002) ACC_PRIVATE
Signature: Lorg/h2/util/SmallLRUCache<Ljava/lang/String;[Ljava/lang/String;>;
private final boolean autoServerMode;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int autoServerPort;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private org.h2.tools.Server server;
descriptor: Lorg/h2/tools/Server;
flags: (0x0002) ACC_PRIVATE
private java.util.HashMap<org.h2.table.TableLinkConnection, org.h2.table.TableLinkConnection> linkConnections;
descriptor: Ljava/util/HashMap;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/HashMap<Lorg/h2/table/TableLinkConnection;Lorg/h2/table/TableLinkConnection;>;
private final org.h2.util.TempFileDeleter tempFileDeleter;
descriptor: Lorg/h2/util/TempFileDeleter;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private org.h2.store.PageStore pageStore;
descriptor: Lorg/h2/store/PageStore;
flags: (0x0002) ACC_PRIVATE
private java.util.Properties reconnectLastLock;
descriptor: Ljava/util/Properties;
flags: (0x0002) ACC_PRIVATE
private volatile long reconnectCheckNext;
descriptor: J
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private volatile boolean reconnectChangePending;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private volatile int checkpointAllowed;
descriptor: I
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private volatile boolean checkpointRunning;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private final java.lang.Object reconnectSync;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int cacheSize;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int compactMode;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private org.h2.util.SourceCompiler compiler;
descriptor: Lorg/h2/util/SourceCompiler;
flags: (0x0002) ACC_PRIVATE
private volatile boolean metaTablesInitialized;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private boolean flushOnEachCommit;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private org.h2.store.LobStorageInterface lobStorage;
descriptor: Lorg/h2/store/LobStorageInterface;
flags: (0x0002) ACC_PRIVATE
private final int pageSize;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int defaultTableType;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private final org.h2.engine.DbSettings dbSettings;
descriptor: Lorg/h2/engine/DbSettings;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final long reconnectCheckDelayNs;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int logMode;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private org.h2.mvstore.db.MVTableEngine$Store store;
descriptor: Lorg/h2/mvstore/db/MVTableEngine$Store;
flags: (0x0002) ACC_PRIVATE
private int retentionTime;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean allowBuiltinAliasOverride;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private final java.util.concurrent.atomic.AtomicReference<org.h2.message.DbException> backgroundException;
descriptor: Ljava/util/concurrent/atomic/AtomicReference;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/concurrent/atomic/AtomicReference<Lorg/h2/message/DbException;>;
private org.h2.api.JavaObjectSerializer javaObjectSerializer;
descriptor: Lorg/h2/api/JavaObjectSerializer;
flags: (0x0002) ACC_PRIVATE
private java.lang.String javaObjectSerializerName;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private volatile boolean javaObjectSerializerInitialized;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private boolean queryStatistics;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private int queryStatisticsMaxEntries;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private org.h2.engine.QueryStatisticsData queryStatisticsData;
descriptor: Lorg/h2/engine/QueryStatisticsData;
flags: (0x0002) ACC_PRIVATE
private org.h2.result.RowFactory rowFactory;
descriptor: Lorg/h2/result/RowFactory;
flags: (0x0002) ACC_PRIVATE
private org.h2.result.LocalResultFactory resultFactory;
descriptor: Lorg/h2/result/LocalResultFactory;
flags: (0x0002) ACC_PRIVATE
private org.h2.security.auth.Authenticator authenticator;
descriptor: Lorg/h2/security/auth/Authenticator;
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=2, locals=1, args_size=0
0: ldc Lorg/h2/engine/Database;
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.Database.$assertionsDisabled:Z
3: iconst_0
anewarray org.h2.engine.Session
putstatic org.h2.engine.Database.EMPTY_SESSION_ARRAY:[Lorg/h2/engine/Session;
4: iconst_0
istore 0
start local 0 5: getstatic org.h2.engine.Database.$assertionsDisabled:Z
ifne 6
iconst_1
dup
istore 0
ifne 6
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
6: StackMap locals: int
StackMap stack:
iload 0
putstatic org.h2.engine.Database.ASSERT:Z
7: iload 0
ifeq 12
8: new java.lang.ThreadLocal
dup
invokespecial java.lang.ThreadLocal.<init>:()V
putstatic org.h2.engine.Database.META_LOCK_DEBUGGING:Ljava/lang/ThreadLocal;
9: new java.lang.ThreadLocal
dup
invokespecial java.lang.ThreadLocal.<init>:()V
putstatic org.h2.engine.Database.META_LOCK_DEBUGGING_DB:Ljava/lang/ThreadLocal;
10: new java.lang.ThreadLocal
dup
invokespecial java.lang.ThreadLocal.<init>:()V
putstatic org.h2.engine.Database.META_LOCK_DEBUGGING_STACK:Ljava/lang/ThreadLocal;
11: goto 15
12: StackMap locals:
StackMap stack:
aconst_null
putstatic org.h2.engine.Database.META_LOCK_DEBUGGING:Ljava/lang/ThreadLocal;
13: aconst_null
putstatic org.h2.engine.Database.META_LOCK_DEBUGGING_DB:Ljava/lang/ThreadLocal;
14: aconst_null
putstatic org.h2.engine.Database.META_LOCK_DEBUGGING_STACK:Ljava/lang/ThreadLocal;
end local 0 15: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
5 15 0 a Z
public void <init>(org.h2.engine.ConnectionInfo, java.lang.String);
descriptor: (Lorg/h2/engine/ConnectionInfo;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=11, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.h2.engine.Database.roles:Ljava/util/HashMap;
2: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.h2.engine.Database.users:Ljava/util/HashMap;
3: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.h2.engine.Database.settings:Ljava/util/HashMap;
4: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.h2.engine.Database.schemas:Ljava/util/HashMap;
5: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.h2.engine.Database.rights:Ljava/util/HashMap;
6: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.h2.engine.Database.domains:Ljava/util/HashMap;
7: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.h2.engine.Database.aggregates:Ljava/util/HashMap;
8: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.h2.engine.Database.comments:Ljava/util/HashMap;
9: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.h2.engine.Database.tableEngines:Ljava/util/HashMap;
10: aload 0
11: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
invokestatic java.util.Collections.synchronizedSet:(Ljava/util/Set;)Ljava/util/Set;
putfield org.h2.engine.Database.userSessions:Ljava/util/Set;
12: aload 0
new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
putfield org.h2.engine.Database.exclusiveSession:Ljava/util/concurrent/atomic/AtomicReference;
13: aload 0
new java.util.BitSet
dup
invokespecial java.util.BitSet.<init>:()V
putfield org.h2.engine.Database.objectIds:Ljava/util/BitSet;
14: aload 0
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putfield org.h2.engine.Database.lobSyncObject:Ljava/lang/Object;
15: aload 0
new java.util.concurrent.atomic.AtomicLong
dup
invokespecial java.util.concurrent.atomic.AtomicLong.<init>:()V
putfield org.h2.engine.Database.modificationDataId:Ljava/util/concurrent/atomic/AtomicLong;
16: aload 0
new java.util.concurrent.atomic.AtomicLong
dup
invokespecial java.util.concurrent.atomic.AtomicLong.<init>:()V
putfield org.h2.engine.Database.modificationMetaId:Ljava/util/concurrent/atomic/AtomicLong;
17: aload 0
ldc "''"
putfield org.h2.engine.Database.cluster:Ljava/lang/String;
18: aload 0
sipush 500
putfield org.h2.engine.Database.writeDelay:I
19: aload 0
getstatic org.h2.engine.SysProperties.MAX_MEMORY_ROWS:I
putfield org.h2.engine.Database.maxMemoryRows:I
20: aload 0
ldc 50000
putfield org.h2.engine.Database.maxMemoryUndo:I
21: aload 0
iconst_3
putfield org.h2.engine.Database.lockMode:I
22: aload 0
iconst_2
putfield org.h2.engine.Database.allowLiterals:I
23: aload 0
getstatic org.h2.engine.Database.initialPowerOffCount:I
putfield org.h2.engine.Database.powerOffCount:I
24: aload 0
iconst_1
putfield org.h2.engine.Database.optimizeReuseResults:Z
25: aload 0
iconst_1
putfield org.h2.engine.Database.referentialIntegrity:Z
26: aload 0
invokestatic org.h2.engine.Mode.getRegular:()Lorg/h2/engine/Mode;
putfield org.h2.engine.Database.mode:Lorg/h2/engine/Mode;
27: aload 0
28: ldc 100000
putfield org.h2.engine.Database.maxOperationMemory:I
29: aload 0
invokestatic org.h2.util.TempFileDeleter.getInstance:()Lorg/h2/util/TempFileDeleter;
putfield org.h2.engine.Database.tempFileDeleter:Lorg/h2/util/TempFileDeleter;
30: aload 0
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putfield org.h2.engine.Database.reconnectSync:Ljava/lang/Object;
31: aload 0
iconst_0
putfield org.h2.engine.Database.defaultTableType:I
32: aload 0
new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
putfield org.h2.engine.Database.backgroundException:Ljava/util/concurrent/atomic/AtomicReference;
33: aload 0
bipush 100
putfield org.h2.engine.Database.queryStatisticsMaxEntries:I
34: aload 0
getstatic org.h2.result.RowFactory.DEFAULT:Lorg/h2/result/RowFactory;
putfield org.h2.engine.Database.rowFactory:Lorg/h2/result/RowFactory;
35: aload 0
getstatic org.h2.result.LocalResultFactory.DEFAULT:Lorg/h2/result/LocalResultFactory;
putfield org.h2.engine.Database.resultFactory:Lorg/h2/result/LocalResultFactory;
36: getstatic org.h2.engine.Database.ASSERT:Z
ifeq 40
37: getstatic org.h2.engine.Database.META_LOCK_DEBUGGING:Ljava/lang/ThreadLocal;
aconst_null
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
38: getstatic org.h2.engine.Database.META_LOCK_DEBUGGING_DB:Ljava/lang/ThreadLocal;
aconst_null
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
39: getstatic org.h2.engine.Database.META_LOCK_DEBUGGING_STACK:Ljava/lang/ThreadLocal;
aconst_null
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
40: StackMap locals: org.h2.engine.Database org.h2.engine.ConnectionInfo java.lang.String
StackMap stack:
aload 1
invokevirtual org.h2.engine.ConnectionInfo.getName:()Ljava/lang/String;
astore 3
start local 3 41: aload 0
aload 1
invokevirtual org.h2.engine.ConnectionInfo.getDbSettings:()Lorg/h2/engine/DbSettings;
putfield org.h2.engine.Database.dbSettings:Lorg/h2/engine/DbSettings;
42: aload 0
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
aload 0
getfield org.h2.engine.Database.dbSettings:Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.reconnectCheckDelay:I
i2l
invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
putfield org.h2.engine.Database.reconnectCheckDelayNs:J
43: aload 0
aconst_null
iconst_0
invokestatic org.h2.value.CompareMode.getInstance:(Ljava/lang/String;I)Lorg/h2/value/CompareMode;
putfield org.h2.engine.Database.compareMode:Lorg/h2/value/CompareMode;
44: aload 0
aload 1
invokevirtual org.h2.engine.ConnectionInfo.isPersistent:()Z
putfield org.h2.engine.Database.persistent:Z
45: aload 0
aload 1
invokevirtual org.h2.engine.ConnectionInfo.getFilePasswordHash:()[B
putfield org.h2.engine.Database.filePasswordHash:[B
46: aload 0
aload 1
invokevirtual org.h2.engine.ConnectionInfo.getFileEncryptionKey:()[B
putfield org.h2.engine.Database.fileEncryptionKey:[B
47: aload 0
aload 3
putfield org.h2.engine.Database.databaseName:Ljava/lang/String;
48: aload 0
aload 0
invokevirtual org.h2.engine.Database.parseDatabaseShortName:()Ljava/lang/String;
putfield org.h2.engine.Database.databaseShortName:Ljava/lang/String;
49: aload 0
sipush 256
putfield org.h2.engine.Database.maxLengthInplaceLob:I
50: aload 0
aload 2
putfield org.h2.engine.Database.cipher:Ljava/lang/String;
51: aload 1
ldc "FILE_LOCK"
aconst_null
invokevirtual org.h2.engine.ConnectionInfo.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 52: aload 0
53: aload 1
ldc "ACCESS_MODE_DATA"
ldc "rw"
invokevirtual org.h2.engine.ConnectionInfo.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
54: invokestatic org.h2.util.StringUtils.toLowerEnglish:(Ljava/lang/String;)Ljava/lang/String;
putfield org.h2.engine.Database.accessModeData:Ljava/lang/String;
55: aload 0
aload 1
ldc "AUTO_SERVER"
iconst_0
invokevirtual org.h2.engine.ConnectionInfo.getProperty:(Ljava/lang/String;Z)Z
putfield org.h2.engine.Database.autoServerMode:Z
56: aload 0
aload 1
ldc "AUTO_SERVER_PORT"
iconst_0
invokevirtual org.h2.engine.ConnectionInfo.getProperty:(Ljava/lang/String;I)I
putfield org.h2.engine.Database.autoServerPort:I
57: ldc 65536
58: invokestatic org.h2.util.Utils.scaleForAvailableMemory:(I)I
istore 5
start local 5 59: aload 0
60: aload 1
ldc "CACHE_SIZE"
iload 5
invokevirtual org.h2.engine.ConnectionInfo.getProperty:(Ljava/lang/String;I)I
61: putfield org.h2.engine.Database.cacheSize:I
62: aload 0
aload 1
ldc "PAGE_SIZE"
63: sipush 4096
64: invokevirtual org.h2.engine.ConnectionInfo.getProperty:(Ljava/lang/String;I)I
putfield org.h2.engine.Database.pageSize:I
65: ldc "r"
aload 0
getfield org.h2.engine.Database.accessModeData:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 67
66: aload 0
iconst_1
putfield org.h2.engine.Database.readOnly:Z
67: StackMap locals: java.lang.String java.lang.String int
StackMap stack:
aload 0
getfield org.h2.engine.Database.dbSettings:Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.mvStore:Z
ifeq 73
aload 4
ifnonnull 73
68: aload 0
getfield org.h2.engine.Database.autoServerMode:Z
ifeq 71
69: aload 0
getstatic org.h2.store.FileLockMethod.FILE:Lorg/h2/store/FileLockMethod;
putfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
70: goto 74
71: StackMap locals:
StackMap stack:
aload 0
getstatic org.h2.store.FileLockMethod.FS:Lorg/h2/store/FileLockMethod;
putfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
72: goto 74
73: StackMap locals:
StackMap stack:
aload 0
aload 4
invokestatic org.h2.store.FileLock.getFileLockMethod:(Ljava/lang/String;)Lorg/h2/store/FileLockMethod;
putfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
74: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.dbSettings:Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.mvStore:Z
ifeq 77
aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.SERIALIZED:Lorg/h2/store/FileLockMethod;
if_acmpne 77
75: ldc "MV_STORE combined with FILE_LOCK=SERIALIZED"
76: invokestatic org.h2.message.DbException.getUnsupportedException:(Ljava/lang/String;)Lorg/h2/message/DbException;
athrow
77: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.h2.engine.ConnectionInfo.getURL:()Ljava/lang/String;
putfield org.h2.engine.Database.databaseURL:Ljava/lang/String;
78: aload 1
ldc "DATABASE_EVENT_LISTENER"
aconst_null
invokevirtual org.h2.engine.ConnectionInfo.removeProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 6
start local 6 79: aload 6
ifnull 82
80: aload 6
iconst_1
iconst_1
ldc "'"
invokestatic org.h2.util.StringUtils.trim:(Ljava/lang/String;ZZLjava/lang/String;)Ljava/lang/String;
astore 6
81: aload 0
aload 6
invokevirtual org.h2.engine.Database.setEventListenerClass:(Ljava/lang/String;)V
82: StackMap locals: java.lang.String
StackMap stack:
aload 1
ldc "MODE"
aconst_null
invokevirtual org.h2.engine.ConnectionInfo.removeProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 7
start local 7 83: aload 7
ifnull 87
84: aload 0
aload 7
invokestatic org.h2.engine.Mode.getInstance:(Ljava/lang/String;)Lorg/h2/engine/Mode;
putfield org.h2.engine.Database.mode:Lorg/h2/engine/Mode;
85: aload 0
getfield org.h2.engine.Database.mode:Lorg/h2/engine/Mode;
ifnonnull 87
86: ldc 90088
aload 7
invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
athrow
87: StackMap locals: java.lang.String
StackMap stack:
aload 0
88: aload 1
ldc "LOG"
iconst_2
invokevirtual org.h2.engine.ConnectionInfo.getProperty:(Ljava/lang/String;I)I
89: putfield org.h2.engine.Database.logMode:I
90: aload 0
91: aload 1
ldc "JAVA_OBJECT_SERIALIZER"
aconst_null
invokevirtual org.h2.engine.ConnectionInfo.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
92: putfield org.h2.engine.Database.javaObjectSerializerName:Ljava/lang/String;
93: aload 0
94: aload 1
ldc "MULTI_THREADED"
aload 0
getfield org.h2.engine.Database.dbSettings:Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.mvStore:Z
invokevirtual org.h2.engine.ConnectionInfo.getProperty:(Ljava/lang/String;Z)Z
95: putfield org.h2.engine.Database.multiThreaded:Z
96: aload 0
97: aload 1
ldc "BUILTIN_ALIAS_OVERRIDE"
iconst_0
invokevirtual org.h2.engine.ConnectionInfo.getProperty:(Ljava/lang/String;Z)Z
98: putfield org.h2.engine.Database.allowBuiltinAliasOverride:Z
99: aload 0
getfield org.h2.engine.Database.dbSettings:Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.dbCloseOnExit:Z
100: istore 8
start local 8 101: aload 1
bipush 10
102: iconst_1
103: invokevirtual org.h2.engine.ConnectionInfo.getIntProperty:(II)I
104: istore 9
start local 9 105: aload 1
bipush 9
106: iconst_0
107: invokevirtual org.h2.engine.ConnectionInfo.getIntProperty:(II)I
108: istore 10
start local 10 109: aload 0
110: aload 1
ldc "CACHE_TYPE"
ldc "LRU"
invokevirtual org.h2.engine.ConnectionInfo.removeProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
111: invokestatic org.h2.util.StringUtils.toUpperEnglish:(Ljava/lang/String;)Ljava/lang/String;
putfield org.h2.engine.Database.cacheType:Ljava/lang/String;
112: aload 0
iload 9
iload 10
iload 8
aload 1
invokevirtual org.h2.engine.Database.openDatabase:(IIZLorg/h2/engine/ConnectionInfo;)V
113: return
end local 10 end local 9 end local 8 end local 7 end local 6 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 114 0 this Lorg/h2/engine/Database;
0 114 1 ci Lorg/h2/engine/ConnectionInfo;
0 114 2 cipher Ljava/lang/String;
41 114 3 name Ljava/lang/String;
52 114 4 lockMethodName Ljava/lang/String;
59 114 5 defaultCacheSize I
79 114 6 listener Ljava/lang/String;
83 114 7 modeName Ljava/lang/String;
101 114 8 closeAtVmShutdown Z
105 114 9 traceLevelFile I
109 114 10 traceLevelSystemOut I
MethodParameters:
Name Flags
ci
cipher
private void openDatabase(int, int, boolean, org.h2.engine.ConnectionInfo);
descriptor: (IIZLorg/h2/engine/ConnectionInfo;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
iload 1
iload 2
aload 4
invokevirtual org.h2.engine.Database.open:(IILorg/h2/engine/ConnectionInfo;)V
1: iload 3
ifeq 23
2: aload 0
invokestatic org.h2.engine.OnExitDatabaseCloser.register:(Lorg/h2/engine/Database;)V
3: goto 23
StackMap locals:
StackMap stack: java.lang.Throwable
4: astore 5
start local 5 5: aload 5
instanceof java.lang.OutOfMemoryError
ifeq 7
6: aload 5
invokevirtual java.lang.Throwable.fillInStackTrace:()Ljava/lang/Throwable;
pop
7: StackMap locals: java.lang.Throwable
StackMap stack:
aload 5
instanceof org.h2.message.DbException
ifeq 10
8: aload 5
checkcast org.h2.message.DbException
invokevirtual org.h2.message.DbException.getErrorCode:()I
ldc 90020
if_icmpne 10
9: iconst_1
goto 11
StackMap locals:
StackMap stack:
10: iconst_0
StackMap locals:
StackMap stack: int
11: istore 6
start local 6 12: iload 6
ifeq 14
13: aload 0
invokevirtual org.h2.engine.Database.stopServer:()V
14: StackMap locals: int
StackMap stack:
aload 0
getfield org.h2.engine.Database.traceSystem:Lorg/h2/message/TraceSystem;
ifnull 18
15: aload 5
instanceof org.h2.message.DbException
ifeq 17
iload 6
ifne 17
16: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
aload 5
ldc "opening {0}"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
aastore
invokevirtual org.h2.message.Trace.error:(Ljava/lang/Throwable;Ljava/lang/String;[Ljava/lang/Object;)V
17: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.traceSystem:Lorg/h2/message/TraceSystem;
invokevirtual org.h2.message.TraceSystem.close:()V
18: StackMap locals:
StackMap stack:
aload 0
iconst_0
invokevirtual org.h2.engine.Database.closeOpenFilesAndUnlock:(Z)V
end local 6 19: goto 22
StackMap locals: org.h2.engine.Database int int int org.h2.engine.ConnectionInfo java.lang.Throwable
StackMap stack: java.lang.Throwable
20: astore 6
start local 6 21: aload 5
aload 6
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
end local 6 22: StackMap locals:
StackMap stack:
aload 5
invokestatic org.h2.message.DbException.convert:(Ljava/lang/Throwable;)Lorg/h2/message/DbException;
athrow
end local 5 23: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lorg/h2/engine/Database;
0 24 1 traceLevelFile I
0 24 2 traceLevelSystemOut I
0 24 3 closeAtVmShutdown Z
0 24 4 ci Lorg/h2/engine/ConnectionInfo;
5 23 5 e Ljava/lang/Throwable;
12 19 6 alreadyOpen Z
21 22 6 ex Ljava/lang/Throwable;
Exception table:
from to target type
0 3 4 Class java.lang.Throwable
5 19 20 Class java.lang.Throwable
MethodParameters:
Name Flags
traceLevelFile
traceLevelSystemOut
closeAtVmShutdown
ci
public int getLockTimeout();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
1: bipush 6
invokestatic org.h2.command.dml.SetTypes.getTypeName:(I)Ljava/lang/String;
2: invokevirtual org.h2.engine.Database.findSetting:(Ljava/lang/String;)Lorg/h2/engine/Setting;
astore 1
start local 1 3: aload 1
ifnonnull 4
sipush 2000
goto 5
StackMap locals: org.h2.engine.Setting
StackMap stack:
4: aload 1
invokevirtual org.h2.engine.Setting.getIntValue:()I
StackMap locals:
StackMap stack: int
5: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/h2/engine/Database;
3 6 1 setting Lorg/h2/engine/Setting;
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.Database.rowFactory:Lorg/h2/result/RowFactory;
aload 1
iload 2
invokevirtual org.h2.result.RowFactory.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/Database;
0 1 1 data [Lorg/h2/value/Value;
0 1 2 memory I
MethodParameters:
Name Flags
data
memory
public org.h2.result.RowFactory getRowFactory();
descriptor: ()Lorg/h2/result/RowFactory;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.rowFactory:Lorg/h2/result/RowFactory;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void setRowFactory(org.h2.result.RowFactory);
descriptor: (Lorg/h2/result/RowFactory;)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.Database.rowFactory:Lorg/h2/result/RowFactory;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 rowFactory Lorg/h2/result/RowFactory;
MethodParameters:
Name Flags
rowFactory
public org.h2.result.LocalResultFactory getResultFactory();
descriptor: ()Lorg/h2/result/LocalResultFactory;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.resultFactory:Lorg/h2/result/LocalResultFactory;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void setResultFactory(org.h2.result.LocalResultFactory);
descriptor: (Lorg/h2/result/LocalResultFactory;)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.Database.resultFactory:Lorg/h2/result/LocalResultFactory;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 resultFactory Lorg/h2/result/LocalResultFactory;
MethodParameters:
Name Flags
resultFactory
public static void setInitialPowerOffCount(int);
descriptor: (I)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iload 0
putstatic org.h2.engine.Database.initialPowerOffCount:I
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 count I
MethodParameters:
Name Flags
count
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.Database.powerOffCount:I
iconst_m1
if_icmpne 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield org.h2.engine.Database.powerOffCount:I
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Database;
0 4 1 count I
MethodParameters:
Name Flags
count
public org.h2.mvstore.db.MVTableEngine$Store getStore();
descriptor: ()Lorg/h2/mvstore/db/MVTableEngine$Store;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void setStore(org.h2.mvstore.db.MVTableEngine$Store);
descriptor: (Lorg/h2/mvstore/db/MVTableEngine$Store;)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.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
1: aload 0
aload 1
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.getMvStore:()Lorg/h2/mvstore/MVStore;
invokevirtual org.h2.mvstore.MVStore.getRetentionTime:()I
putfield org.h2.engine.Database.retentionTime:I
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Database;
0 3 1 store Lorg/h2/mvstore/db/MVTableEngine$Store;
MethodParameters:
Name Flags
store
public boolean areEqual(org.h2.value.Value, org.h2.value.Value);
descriptor: (Lorg/h2/value/Value;Lorg/h2/value/Value;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
aload 0
getfield org.h2.engine.Database.mode:Lorg/h2/engine/Mode;
aload 0
getfield org.h2.engine.Database.compareMode:Lorg/h2/value/CompareMode;
invokevirtual org.h2.value.Value.compareTo:(Lorg/h2/value/Value;Lorg/h2/engine/Mode;Lorg/h2/value/CompareMode;)I
ifne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 a Lorg/h2/value/Value;
0 2 2 b Lorg/h2/value/Value;
MethodParameters:
Name Flags
a
b
public int compare(org.h2.value.Value, org.h2.value.Value);
descriptor: (Lorg/h2/value/Value;Lorg/h2/value/Value;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
aload 0
getfield org.h2.engine.Database.mode:Lorg/h2/engine/Mode;
aload 0
getfield org.h2.engine.Database.compareMode:Lorg/h2/value/CompareMode;
invokevirtual org.h2.value.Value.compareTo:(Lorg/h2/value/Value;Lorg/h2/engine/Mode;Lorg/h2/value/CompareMode;)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
0 1 1 a Lorg/h2/value/Value;
0 1 2 b Lorg/h2/value/Value;
MethodParameters:
Name Flags
a
b
public int compareWithNull(org.h2.value.Value, org.h2.value.Value, boolean);
descriptor: (Lorg/h2/value/Value;Lorg/h2/value/Value;Z)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
aload 2
iload 3
aload 0
getfield org.h2.engine.Database.mode:Lorg/h2/engine/Mode;
aload 0
getfield org.h2.engine.Database.compareMode:Lorg/h2/value/CompareMode;
invokevirtual org.h2.value.Value.compareWithNull:(Lorg/h2/value/Value;ZLorg/h2/engine/Mode;Lorg/h2/value/CompareMode;)I
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
0 1 1 a Lorg/h2/value/Value;
0 1 2 b Lorg/h2/value/Value;
0 1 3 forEquality Z
MethodParameters:
Name Flags
a
b
forEquality
public int compareTypeSafe(org.h2.value.Value, org.h2.value.Value);
descriptor: (Lorg/h2/value/Value;Lorg/h2/value/Value;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
aload 0
getfield org.h2.engine.Database.compareMode:Lorg/h2/value/CompareMode;
invokevirtual org.h2.value.Value.compareTypeSafe:(Lorg/h2/value/Value;Lorg/h2/value/CompareMode;)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
0 1 1 a Lorg/h2/value/Value;
0 1 2 b Lorg/h2/value/Value;
MethodParameters:
Name Flags
a
b
public long getModificationDataId();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.modificationDataId:Ljava/util/concurrent/atomic/AtomicLong;
invokevirtual java.util.concurrent.atomic.AtomicLong.get:()J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
private synchronized boolean reconnectModified(boolean);
descriptor: (Z)Z
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=7, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Database.readOnly:Z
ifne 2
aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
ifnull 2
1: aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.SERIALIZED:Lorg/h2/store/FileLockMethod;
if_acmpeq 3
2: StackMap locals:
StackMap stack:
iconst_1
ireturn
3: StackMap locals:
StackMap stack:
iload 1
aload 0
getfield org.h2.engine.Database.reconnectChangePending:Z
if_icmpne 15
4: invokestatic java.lang.System.nanoTime:()J
lstore 2
start local 2 5: lload 2
aload 0
getfield org.h2.engine.Database.reconnectCheckNext:J
lcmp
ifle 14
6: iload 1
ifeq 13
7: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
ifnonnull 9
8: aconst_null
goto 10
StackMap locals: long
StackMap stack:
9: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
invokevirtual org.h2.store.PageStore.getWriteCountTotal:()J
invokestatic java.lang.Long.toString:(J)Ljava/lang/String;
10: StackMap locals:
StackMap stack: java.lang.String
astore 4
start local 4 11: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
ldc "logPos"
aload 4
invokevirtual org.h2.store.FileLock.setProperty:(Ljava/lang/String;Ljava/lang/String;)V
12: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
invokevirtual org.h2.store.FileLock.save:()Ljava/util/Properties;
pop
end local 4 13: StackMap locals:
StackMap stack:
aload 0
lload 2
aload 0
getfield org.h2.engine.Database.reconnectCheckDelayNs:J
ladd
putfield org.h2.engine.Database.reconnectCheckNext:J
14: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 2 15: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
invokevirtual org.h2.store.FileLock.load:()Ljava/util/Properties;
astore 2
start local 2 16: iload 1
ifeq 24
17: aload 2
ldc "changePending"
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
ifnull 19
18: iconst_0
ireturn
19: StackMap locals: java.util.Properties
StackMap stack:
aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
ldc "wait before writing"
invokevirtual org.h2.message.Trace.debug:(Ljava/lang/String;)V
20: getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
aload 0
getfield org.h2.engine.Database.reconnectCheckDelayNs:J
l2d
ldc 1.1
dmul
d2l
invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
invokestatic java.lang.Thread.sleep:(J)V
21: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
invokevirtual org.h2.store.FileLock.load:()Ljava/util/Properties;
astore 3
start local 3 22: aload 3
aload 2
invokevirtual java.util.Properties.equals:(Ljava/lang/Object;)Z
ifne 24
23: iconst_0
ireturn
end local 3 24: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
ifnonnull 26
25: aconst_null
goto 27
StackMap locals:
StackMap stack:
26: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
invokevirtual org.h2.store.PageStore.getWriteCountTotal:()J
invokestatic java.lang.Long.toString:(J)Ljava/lang/String;
27: StackMap locals:
StackMap stack: java.lang.String
astore 3
start local 3 28: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
ldc "logPos"
aload 3
invokevirtual org.h2.store.FileLock.setProperty:(Ljava/lang/String;Ljava/lang/String;)V
29: iload 1
ifeq 32
30: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
ldc "changePending"
new java.lang.StringBuilder
dup
ldc "true-"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
invokestatic java.lang.Math.random:()D
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.h2.store.FileLock.setProperty:(Ljava/lang/String;Ljava/lang/String;)V
31: goto 33
32: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
ldc "changePending"
aconst_null
invokevirtual org.h2.store.FileLock.setProperty:(Ljava/lang/String;Ljava/lang/String;)V
33: StackMap locals:
StackMap stack:
aload 0
invokestatic java.lang.System.nanoTime:()J
34: ldc 2
aload 0
getfield org.h2.engine.Database.reconnectCheckDelayNs:J
lmul
ladd
35: putfield org.h2.engine.Database.reconnectCheckNext:J
36: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
invokevirtual org.h2.store.FileLock.save:()Ljava/util/Properties;
astore 2
37: iload 1
ifeq 43
38: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
ldc "wait before writing again"
invokevirtual org.h2.message.Trace.debug:(Ljava/lang/String;)V
39: getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
aload 0
getfield org.h2.engine.Database.reconnectCheckDelayNs:J
l2d
ldc 1.1
dmul
d2l
invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
invokestatic java.lang.Thread.sleep:(J)V
40: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
invokevirtual org.h2.store.FileLock.load:()Ljava/util/Properties;
astore 4
start local 4 41: aload 4
aload 2
invokevirtual java.util.Properties.equals:(Ljava/lang/Object;)Z
ifne 44
42: iconst_0
ireturn
end local 4 43: StackMap locals:
StackMap stack:
lconst_1
invokestatic java.lang.Thread.sleep:(J)V
44: StackMap locals:
StackMap stack:
aload 0
aload 2
putfield org.h2.engine.Database.reconnectLastLock:Ljava/util/Properties;
45: aload 0
iload 1
putfield org.h2.engine.Database.reconnectChangePending:Z
46: aload 0
invokestatic java.lang.System.nanoTime:()J
aload 0
getfield org.h2.engine.Database.reconnectCheckDelayNs:J
ladd
putfield org.h2.engine.Database.reconnectCheckNext:J
47: iconst_1
ireturn
end local 3 end local 2 48: StackMap locals: org.h2.engine.Database int
StackMap stack: java.lang.Exception
astore 2
start local 2 49: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
aload 2
ldc "pending {0}"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aastore
invokevirtual org.h2.message.Trace.error:(Ljava/lang/Throwable;Ljava/lang/String;[Ljava/lang/Object;)V
50: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 51 0 this Lorg/h2/engine/Database;
0 51 1 pending Z
5 15 2 now J
11 13 4 pos Ljava/lang/String;
16 48 2 old Ljava/util/Properties;
22 24 3 now Ljava/util/Properties;
28 48 3 pos Ljava/lang/String;
41 43 4 now Ljava/util/Properties;
49 51 2 e Ljava/lang/Exception;
Exception table:
from to target type
3 14 48 Class java.lang.Exception
15 18 48 Class java.lang.Exception
19 23 48 Class java.lang.Exception
24 42 48 Class java.lang.Exception
43 47 48 Class java.lang.Exception
MethodParameters:
Name Flags
pending
public long getNextModificationDataId();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.modificationDataId:Ljava/util/concurrent/atomic/AtomicLong;
invokevirtual java.util.concurrent.atomic.AtomicLong.incrementAndGet:()J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public long getModificationMetaId();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.modificationMetaId:Ljava/util/concurrent/atomic/AtomicLong;
invokevirtual java.util.concurrent.atomic.AtomicLong.get:()J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public long getNextModificationMetaId();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.modificationDataId:Ljava/util/concurrent/atomic/AtomicLong;
invokevirtual java.util.concurrent.atomic.AtomicLong.incrementAndGet:()J
pop2
1: aload 0
getfield org.h2.engine.Database.modificationMetaId:Ljava/util/concurrent/atomic/AtomicLong;
invokevirtual java.util.concurrent.atomic.AtomicLong.incrementAndGet:()J
lconst_1
lsub
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
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.Database.powerOffCount:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void checkPowerOff();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.powerOffCount:I
ifne 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.powerOffCount:I
iconst_1
if_icmple 5
3: aload 0
dup
getfield org.h2.engine.Database.powerOffCount:I
iconst_1
isub
putfield org.h2.engine.Database.powerOffCount:I
4: return
5: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.powerOffCount:I
iconst_m1
if_icmpeq 30
6: aload 0
iconst_m1
putfield org.h2.engine.Database.powerOffCount:I
7: aload 0
invokevirtual org.h2.engine.Database.stopWriter:()V
8: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 10
9: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.closeImmediately:()V
10: StackMap locals:
StackMap stack:
aload 0
dup
astore 1
monitorenter
11: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
ifnull 16
12: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
invokevirtual org.h2.store.PageStore.close:()V
13: goto 15
StackMap locals: org.h2.engine.Database org.h2.engine.Database
StackMap stack: org.h2.message.DbException
14: pop
15: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
16: StackMap locals:
StackMap stack:
aload 1
monitorexit
17: goto 20
StackMap locals:
StackMap stack: java.lang.Throwable
18: aload 1
monitorexit
19: athrow
20: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
ifnull 25
21: aload 0
invokevirtual org.h2.engine.Database.stopServer:()V
22: aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.SERIALIZED:Lorg/h2/store/FileLockMethod;
if_acmpeq 24
23: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
invokevirtual org.h2.store.FileLock.unlock:()V
24: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
25: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.traceSystem:Lorg/h2/message/TraceSystem;
ifnull 30
26: aload 0
getfield org.h2.engine.Database.traceSystem:Lorg/h2/message/TraceSystem;
invokevirtual org.h2.message.TraceSystem.close:()V
27: goto 30
StackMap locals:
StackMap stack: org.h2.message.DbException
28: astore 1
start local 1 29: aload 1
invokestatic org.h2.message.DbException.traceThrowable:(Ljava/lang/Throwable;)V
end local 1 30: StackMap locals:
StackMap stack:
invokestatic org.h2.engine.Engine.getInstance:()Lorg/h2/engine/Engine;
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokevirtual org.h2.engine.Engine.close:(Ljava/lang/String;)V
31: ldc 90098
invokestatic org.h2.message.DbException.get:(I)Lorg/h2/message/DbException;
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Lorg/h2/engine/Database;
29 30 1 e Lorg/h2/message/DbException;
Exception table:
from to target type
12 13 14 Class org.h2.message.DbException
11 17 18 any
18 19 18 any
6 27 28 Class org.h2.message.DbException
static boolean exists(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
aload 0
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".h2.db"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.h2.store.fs.FileUtils.exists:(Ljava/lang/String;)Z
ifeq 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 0
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".mv.db"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.h2.store.fs.FileUtils.exists:(Ljava/lang/String;)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public org.h2.message.Trace getTrace(int);
descriptor: (I)Lorg/h2/message/Trace;
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.Database.traceSystem:Lorg/h2/message/TraceSystem;
iload 1
invokevirtual org.h2.message.TraceSystem.getTrace:(I)Lorg/h2/message/Trace;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
0 1 1 moduleId I
MethodParameters:
Name Flags
moduleId
public org.h2.store.FileStore openFile(java.lang.String, java.lang.String, boolean);
descriptor: (Ljava/lang/String;Ljava/lang/String;Z)Lorg/h2/store/FileStore;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 3
ifeq 2
aload 1
invokestatic org.h2.store.fs.FileUtils.exists:(Ljava/lang/String;)Z
ifne 2
1: ldc 90124
aload 1
invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 0
getfield org.h2.engine.Database.cipher:Ljava/lang/String;
3: aload 0
getfield org.h2.engine.Database.filePasswordHash:[B
4: invokestatic org.h2.store.FileStore.open:(Lorg/h2/store/DataHandler;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[B)Lorg/h2/store/FileStore;
astore 4
start local 4 5: aload 4
invokevirtual org.h2.store.FileStore.init:()V
6: goto 10
StackMap locals: org.h2.engine.Database java.lang.String java.lang.String int org.h2.store.FileStore
StackMap stack: org.h2.message.DbException
7: astore 5
start local 5 8: aload 4
invokevirtual org.h2.store.FileStore.closeSilently:()V
9: aload 5
athrow
end local 5 10: StackMap locals:
StackMap stack:
aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/h2/engine/Database;
0 11 1 name Ljava/lang/String;
0 11 2 openMode Ljava/lang/String;
0 11 3 mustExist Z
5 11 4 store Lorg/h2/store/FileStore;
8 10 5 e Lorg/h2/message/DbException;
Exception table:
from to target type
5 6 7 Class org.h2.message.DbException
MethodParameters:
Name Flags
name
openMode
mustExist
boolean validateFilePasswordHash(java.lang.String, byte[]);
descriptor: (Ljava/lang/String;[B)Z
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
getfield org.h2.engine.Database.cipher:Ljava/lang/String;
invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 2
aload 0
getfield org.h2.engine.Database.filePasswordHash:[B
invokestatic org.h2.util.Utils.compareSecure:([B[B)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Database;
0 3 1 testCipher Ljava/lang/String;
0 3 2 testHash [B
MethodParameters:
Name Flags
testCipher
testHash
private java.lang.String parseDatabaseShortName();
descriptor: ()Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
astore 1
start local 1 1: aload 1
ldc ":"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 3
2: aconst_null
astore 1
3: StackMap locals: java.lang.String
StackMap stack:
aload 1
ifnull 8
4: new java.util.StringTokenizer
dup
aload 1
ldc "/\\:,;"
invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
astore 2
start local 2 5: goto 7
6: StackMap locals: java.util.StringTokenizer
StackMap stack:
aload 2
invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
astore 1
7: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
ifne 6
end local 2 8: StackMap locals:
StackMap stack:
aload 1
ifnull 9
aload 1
invokevirtual java.lang.String.isEmpty:()Z
ifeq 10
9: StackMap locals:
StackMap stack:
ldc "unnamed"
astore 1
10: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.dbSettings:Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.databaseToUpper:Z
ifeq 11
aload 1
invokestatic org.h2.util.StringUtils.toUpperEnglish:(Ljava/lang/String;)Ljava/lang/String;
goto 13
11: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.dbSettings:Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.databaseToLower:Z
ifeq 12
aload 1
invokestatic org.h2.util.StringUtils.toLowerEnglish:(Ljava/lang/String;)Ljava/lang/String;
goto 13
StackMap locals:
StackMap stack:
12: aload 1
13: StackMap locals:
StackMap stack: java.lang.String
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/h2/engine/Database;
1 14 1 n Ljava/lang/String;
5 8 2 tokenizer Ljava/util/StringTokenizer;
private synchronized void open(int, int, org.h2.engine.ConnectionInfo);
descriptor: (IILorg/h2/engine/ConnectionInfo;)V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=9, locals=15, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.h2.engine.Database.persistent:Z
ifeq 80
1: new java.lang.StringBuilder
dup
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".data.db"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
start local 4 2: aload 4
invokestatic org.h2.store.fs.FileUtils.exists:(Ljava/lang/String;)Z
istore 5
start local 5 3: new java.lang.StringBuilder
dup
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".h2.db"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
start local 6 4: new java.lang.StringBuilder
dup
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".mv.db"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 7
start local 7 5: aload 6
invokestatic org.h2.store.fs.FileUtils.exists:(Ljava/lang/String;)Z
istore 8
start local 8 6: aload 7
invokestatic org.h2.store.fs.FileUtils.exists:(Ljava/lang/String;)Z
istore 9
start local 9 7: iload 5
ifeq 13
iload 8
ifne 13
iload 9
ifne 13
8: ldc 90048
new java.lang.StringBuilder
dup
ldc "Old database: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
9: aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
10: ldc " - please convert the database "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
11: ldc "to a SQL script and re-create it."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
12: invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
athrow
13: StackMap locals: org.h2.engine.Database int int org.h2.engine.ConnectionInfo java.lang.String int java.lang.String java.lang.String int int
StackMap stack:
iload 8
ifeq 15
aload 6
invokestatic org.h2.store.fs.FileUtils.canWrite:(Ljava/lang/String;)Z
ifne 15
14: aload 0
iconst_1
putfield org.h2.engine.Database.readOnly:Z
15: StackMap locals:
StackMap stack:
iload 9
ifeq 17
aload 7
invokestatic org.h2.store.fs.FileUtils.canWrite:(Ljava/lang/String;)Z
ifne 17
16: aload 0
iconst_1
putfield org.h2.engine.Database.readOnly:Z
17: StackMap locals:
StackMap stack:
iload 8
ifeq 20
iload 9
ifne 20
18: aload 0
getfield org.h2.engine.Database.dbSettings:Lorg/h2/engine/DbSettings;
iconst_0
putfield org.h2.engine.DbSettings.mvStore:Z
19: aload 0
aload 3
ldc "MULTI_THREADED"
iconst_0
invokevirtual org.h2.engine.ConnectionInfo.getProperty:(Ljava/lang/String;Z)Z
putfield org.h2.engine.Database.multiThreaded:Z
20: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.readOnly:Z
ifeq 31
21: iload 1
iconst_3
if_icmplt 29
22: new java.lang.StringBuilder
dup
ldc "java.io.tmpdir"
ldc "."
invokestatic org.h2.util.Utils.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
23: ldc "/"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "h2_"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokestatic java.lang.System.currentTimeMillis:()J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
24: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 10
start local 10 25: aload 0
new org.h2.message.TraceSystem
dup
new java.lang.StringBuilder
dup
aload 10
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
26: ldc ".trace.db"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.h2.message.TraceSystem.<init>:(Ljava/lang/String;)V
27: putfield org.h2.engine.Database.traceSystem:Lorg/h2/message/TraceSystem;
end local 10 28: goto 34
29: StackMap locals:
StackMap stack:
aload 0
new org.h2.message.TraceSystem
dup
aconst_null
invokespecial org.h2.message.TraceSystem.<init>:(Ljava/lang/String;)V
putfield org.h2.engine.Database.traceSystem:Lorg/h2/message/TraceSystem;
30: goto 34
31: StackMap locals:
StackMap stack:
aload 0
new org.h2.message.TraceSystem
dup
new java.lang.StringBuilder
dup
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
32: ldc ".trace.db"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.h2.message.TraceSystem.<init>:(Ljava/lang/String;)V
33: putfield org.h2.engine.Database.traceSystem:Lorg/h2/message/TraceSystem;
34: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.traceSystem:Lorg/h2/message/TraceSystem;
iload 1
invokevirtual org.h2.message.TraceSystem.setLevelFile:(I)V
35: aload 0
getfield org.h2.engine.Database.traceSystem:Lorg/h2/message/TraceSystem;
iload 2
invokevirtual org.h2.message.TraceSystem.setLevelSystemOut:(I)V
36: aload 0
aload 0
getfield org.h2.engine.Database.traceSystem:Lorg/h2/message/TraceSystem;
iconst_2
invokevirtual org.h2.message.TraceSystem.getTrace:(I)Lorg/h2/message/Trace;
putfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
37: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
ldc "opening {0} (build {1})"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
aastore
dup
iconst_1
sipush 199
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.h2.message.Trace.info:(Ljava/lang/String;[Ljava/lang/Object;)V
38: aload 0
getfield org.h2.engine.Database.autoServerMode:Z
ifeq 45
39: aload 0
getfield org.h2.engine.Database.readOnly:Z
ifne 43
40: aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.NO:Lorg/h2/store/FileLockMethod;
if_acmpeq 43
41: aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.SERIALIZED:Lorg/h2/store/FileLockMethod;
if_acmpeq 43
42: aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.FS:Lorg/h2/store/FileLockMethod;
if_acmpne 45
43: StackMap locals:
StackMap stack:
ldc "autoServerMode && (readOnly || fileLockMethod == NO || fileLockMethod == SERIALIZED || fileLockMethod == FS || inMemory)"
44: invokestatic org.h2.message.DbException.getUnsupportedException:(Ljava/lang/String;)Lorg/h2/message/DbException;
athrow
45: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".lock.db"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 10
start local 10 46: aload 0
getfield org.h2.engine.Database.readOnly:Z
ifeq 51
47: aload 10
invokestatic org.h2.store.fs.FileUtils.exists:(Ljava/lang/String;)Z
ifeq 51
48: ldc 90020
49: new java.lang.StringBuilder
dup
ldc "Lock file exists: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 10
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
50: invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
athrow
51: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield org.h2.engine.Database.readOnly:Z
ifne 57
aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.NO:Lorg/h2/store/FileLockMethod;
if_acmpeq 57
52: aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.FS:Lorg/h2/store/FileLockMethod;
if_acmpeq 57
53: aload 0
new org.h2.store.FileLock
dup
aload 0
getfield org.h2.engine.Database.traceSystem:Lorg/h2/message/TraceSystem;
aload 10
sipush 1000
invokespecial org.h2.store.FileLock.<init>:(Lorg/h2/message/TraceSystem;Ljava/lang/String;I)V
putfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
54: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
invokevirtual org.h2.store.FileLock.lock:(Lorg/h2/store/FileLockMethod;)V
55: aload 0
getfield org.h2.engine.Database.autoServerMode:Z
ifeq 57
56: aload 0
aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
invokevirtual org.h2.store.FileLock.getUniqueId:()Ljava/lang/String;
invokevirtual org.h2.engine.Database.startServer:(Ljava/lang/String;)V
57: StackMap locals:
StackMap stack:
getstatic org.h2.engine.SysProperties.MODIFY_ON_WRITE:Z
ifeq 60
58: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.engine.Database.isReconnectNeeded:()Z
ifne 58
59: goto 61
60: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.engine.Database.isReconnectNeeded:()Z
ifeq 61
aload 0
invokevirtual org.h2.engine.Database.beforeWriting:()Z
ifeq 60
61: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.engine.Database.deleteOldTempFiles:()V
62: aload 0
iconst_1
putfield org.h2.engine.Database.starting:Z
63: getstatic org.h2.engine.SysProperties.MODIFY_ON_WRITE:Z
ifeq 73
64: aload 0
invokevirtual org.h2.engine.Database.getPageStore:()Lorg/h2/store/PageStore;
pop
65: goto 74
StackMap locals:
StackMap stack: org.h2.message.DbException
66: astore 11
start local 11 67: aload 11
invokevirtual org.h2.message.DbException.getErrorCode:()I
ldc 90097
if_icmpeq 69
68: aload 11
athrow
69: StackMap locals: org.h2.message.DbException
StackMap stack:
aload 0
aconst_null
putfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
70: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.engine.Database.beforeWriting:()Z
ifeq 70
71: aload 0
invokevirtual org.h2.engine.Database.getPageStore:()Lorg/h2/store/PageStore;
pop
end local 11 72: goto 74
73: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.engine.Database.getPageStore:()Lorg/h2/store/PageStore;
pop
74: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield org.h2.engine.Database.starting:Z
75: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnonnull 78
76: aload 0
aload 0
aload 0
getfield org.h2.engine.Database.writeDelay:I
invokestatic org.h2.store.WriterThread.create:(Lorg/h2/engine/Database;I)Lorg/h2/store/WriterThread;
putfield org.h2.engine.Database.writer:Lorg/h2/store/WriterThread;
77: goto 87
78: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.h2.engine.Database.writeDelay:I
invokevirtual org.h2.engine.Database.setWriteDelay:(I)V
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 79: goto 87
80: StackMap locals: org.h2.engine.Database int int org.h2.engine.ConnectionInfo
StackMap stack:
aload 0
getfield org.h2.engine.Database.autoServerMode:Z
ifeq 83
81: ldc "autoServerMode && inMemory"
82: invokestatic org.h2.message.DbException.getUnsupportedException:(Ljava/lang/String;)Lorg/h2/message/DbException;
athrow
83: StackMap locals:
StackMap stack:
aload 0
new org.h2.message.TraceSystem
dup
aconst_null
invokespecial org.h2.message.TraceSystem.<init>:(Ljava/lang/String;)V
putfield org.h2.engine.Database.traceSystem:Lorg/h2/message/TraceSystem;
84: aload 0
aload 0
getfield org.h2.engine.Database.traceSystem:Lorg/h2/message/TraceSystem;
iconst_2
invokevirtual org.h2.message.TraceSystem.getTrace:(I)Lorg/h2/message/Trace;
putfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
85: aload 0
getfield org.h2.engine.Database.dbSettings:Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.mvStore:Z
ifeq 87
86: aload 0
invokevirtual org.h2.engine.Database.getPageStore:()Lorg/h2/store/PageStore;
pop
87: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 89
88: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.getTransactionStore:()Lorg/h2/mvstore/tx/TransactionStore;
invokevirtual org.h2.mvstore.tx.TransactionStore.init:()V
89: StackMap locals:
StackMap stack:
aload 0
new org.h2.engine.User
dup
aload 0
iconst_0
ldc "DBA"
iconst_1
invokespecial org.h2.engine.User.<init>:(Lorg/h2/engine/Database;ILjava/lang/String;Z)V
putfield org.h2.engine.Database.systemUser:Lorg/h2/engine/User;
90: aload 0
new org.h2.schema.Schema
dup
aload 0
iconst_0
aload 0
ldc "PUBLIC"
invokevirtual org.h2.engine.Database.sysIdentifier:(Ljava/lang/String;)Ljava/lang/String;
aload 0
getfield org.h2.engine.Database.systemUser:Lorg/h2/engine/User;
91: iconst_1
invokespecial org.h2.schema.Schema.<init>:(Lorg/h2/engine/Database;ILjava/lang/String;Lorg/h2/engine/User;Z)V
92: putfield org.h2.engine.Database.mainSchema:Lorg/h2/schema/Schema;
93: aload 0
new org.h2.schema.Schema
dup
aload 0
iconst_m1
aload 0
ldc "INFORMATION_SCHEMA"
invokevirtual org.h2.engine.Database.sysIdentifier:(Ljava/lang/String;)Ljava/lang/String;
aload 0
getfield org.h2.engine.Database.systemUser:Lorg/h2/engine/User;
94: iconst_1
invokespecial org.h2.schema.Schema.<init>:(Lorg/h2/engine/Database;ILjava/lang/String;Lorg/h2/engine/User;Z)V
95: putfield org.h2.engine.Database.infoSchema:Lorg/h2/schema/Schema;
96: aload 0
getfield org.h2.engine.Database.schemas:Ljava/util/HashMap;
aload 0
getfield org.h2.engine.Database.mainSchema:Lorg/h2/schema/Schema;
invokevirtual org.h2.schema.Schema.getName:()Ljava/lang/String;
aload 0
getfield org.h2.engine.Database.mainSchema:Lorg/h2/schema/Schema;
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
97: aload 0
getfield org.h2.engine.Database.schemas:Ljava/util/HashMap;
aload 0
getfield org.h2.engine.Database.infoSchema:Lorg/h2/schema/Schema;
invokevirtual org.h2.schema.Schema.getName:()Ljava/lang/String;
aload 0
getfield org.h2.engine.Database.infoSchema:Lorg/h2/schema/Schema;
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
98: aload 0
new org.h2.engine.Role
dup
aload 0
iconst_0
aload 0
ldc "PUBLIC"
invokevirtual org.h2.engine.Database.sysIdentifier:(Ljava/lang/String;)Ljava/lang/String;
iconst_1
invokespecial org.h2.engine.Role.<init>:(Lorg/h2/engine/Database;ILjava/lang/String;Z)V
putfield org.h2.engine.Database.publicRole:Lorg/h2/engine/Role;
99: aload 0
getfield org.h2.engine.Database.roles:Ljava/util/HashMap;
aload 0
getfield org.h2.engine.Database.publicRole:Lorg/h2/engine/Role;
invokevirtual org.h2.engine.Role.getName:()Ljava/lang/String;
aload 0
getfield org.h2.engine.Database.publicRole:Lorg/h2/engine/Role;
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
100: aload 0
getfield org.h2.engine.Database.systemUser:Lorg/h2/engine/User;
iconst_1
invokevirtual org.h2.engine.User.setAdmin:(Z)V
101: aload 0
new org.h2.engine.Session
dup
aload 0
aload 0
getfield org.h2.engine.Database.systemUser:Lorg/h2/engine/User;
aload 0
dup
getfield org.h2.engine.Database.nextSessionId:I
iconst_1
iadd
dup_x1
putfield org.h2.engine.Database.nextSessionId:I
invokespecial org.h2.engine.Session.<init>:(Lorg/h2/engine/Database;Lorg/h2/engine/User;I)V
putfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
102: aload 0
new org.h2.engine.Session
dup
aload 0
aload 0
getfield org.h2.engine.Database.systemUser:Lorg/h2/engine/User;
aload 0
dup
getfield org.h2.engine.Database.nextSessionId:I
iconst_1
iadd
dup_x1
putfield org.h2.engine.Database.nextSessionId:I
invokespecial org.h2.engine.Session.<init>:(Lorg/h2/engine/Database;Lorg/h2/engine/User;I)V
putfield org.h2.engine.Database.lobSession:Lorg/h2/engine/Session;
103: new org.h2.command.ddl.CreateTableData
dup
invokespecial org.h2.command.ddl.CreateTableData.<init>:()V
astore 4
start local 4 104: aload 4
getfield org.h2.command.ddl.CreateTableData.columns:Ljava/util/ArrayList;
astore 5
start local 5 105: new org.h2.table.Column
dup
ldc "ID"
iconst_4
invokespecial org.h2.table.Column.<init>:(Ljava/lang/String;I)V
astore 6
start local 6 106: aload 6
iconst_0
invokevirtual org.h2.table.Column.setNullable:(Z)V
107: aload 5
aload 6
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
108: aload 5
new org.h2.table.Column
dup
ldc "HEAD"
iconst_4
invokespecial org.h2.table.Column.<init>:(Ljava/lang/String;I)V
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
109: aload 5
new org.h2.table.Column
dup
ldc "TYPE"
iconst_4
invokespecial org.h2.table.Column.<init>:(Ljava/lang/String;I)V
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
110: aload 5
new org.h2.table.Column
dup
ldc "SQL"
bipush 13
invokespecial org.h2.table.Column.<init>:(Ljava/lang/String;I)V
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
111: iconst_1
istore 7
start local 7 112: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
ifnull 114
113: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
invokevirtual org.h2.store.PageStore.isNew:()Z
istore 7
114: StackMap locals: org.h2.engine.Database int int org.h2.engine.ConnectionInfo org.h2.command.ddl.CreateTableData java.util.ArrayList org.h2.table.Column int
StackMap stack:
aload 4
ldc "SYS"
putfield org.h2.command.ddl.CreateTableData.tableName:Ljava/lang/String;
115: aload 4
iconst_0
putfield org.h2.command.ddl.CreateTableData.id:I
116: aload 4
iconst_0
putfield org.h2.command.ddl.CreateTableData.temporary:Z
117: aload 4
aload 0
getfield org.h2.engine.Database.persistent:Z
putfield org.h2.command.ddl.CreateTableData.persistData:Z
118: aload 4
aload 0
getfield org.h2.engine.Database.persistent:Z
putfield org.h2.command.ddl.CreateTableData.persistIndexes:Z
119: aload 4
iload 7
putfield org.h2.command.ddl.CreateTableData.create:Z
120: aload 4
iconst_1
putfield org.h2.command.ddl.CreateTableData.isHidden:Z
121: aload 4
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
putfield org.h2.command.ddl.CreateTableData.session:Lorg/h2/engine/Session;
122: aload 0
iconst_1
putfield org.h2.engine.Database.starting:Z
123: aload 0
aload 0
getfield org.h2.engine.Database.mainSchema:Lorg/h2/schema/Schema;
aload 4
invokevirtual org.h2.schema.Schema.createTable:(Lorg/h2/command/ddl/CreateTableData;)Lorg/h2/table/Table;
putfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
124: aload 0
invokevirtual org.h2.engine.Database.handleUpgradeIssues:()V
125: iconst_1
anewarray org.h2.table.Column
dup
iconst_0
aload 6
aastore
invokestatic org.h2.table.IndexColumn.wrap:([Lorg/h2/table/Column;)[Lorg/h2/table/IndexColumn;
astore 8
start local 8 126: aload 0
aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
ldc "SYS_ID"
127: iconst_0
aload 8
128: iconst_0
iconst_0
129: invokestatic org.h2.index.IndexType.createPrimaryKey:(ZZ)Lorg/h2/index/IndexType;
130: iconst_1
aconst_null
131: invokevirtual org.h2.table.Table.addIndex:(Lorg/h2/engine/Session;Ljava/lang/String;I[Lorg/h2/table/IndexColumn;Lorg/h2/index/IndexType;ZLjava/lang/String;)Lorg/h2/index/Index;
putfield org.h2.engine.Database.metaIdIndex:Lorg/h2/index/Index;
132: aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
iconst_1
invokevirtual org.h2.engine.Session.commit:(Z)V
133: aload 0
getfield org.h2.engine.Database.objectIds:Ljava/util/BitSet;
iconst_0
invokevirtual java.util.BitSet.set:(I)V
134: aload 0
getfield org.h2.engine.Database.metaIdIndex:Lorg/h2/index/Index;
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
aconst_null
aconst_null
invokeinterface org.h2.index.Index.find:(Lorg/h2/engine/Session;Lorg/h2/result/SearchRow;Lorg/h2/result/SearchRow;)Lorg/h2/index/Cursor;
astore 9
start local 9 135: new java.util.ArrayList
dup
aload 0
getfield org.h2.engine.Database.metaIdIndex:Lorg/h2/index/Index;
invokeinterface org.h2.index.Index.getRowCountApproximation:()J
l2i
invokespecial java.util.ArrayList.<init>:(I)V
astore 10
start local 10 136: goto 140
137: StackMap locals: org.h2.table.IndexColumn[] org.h2.index.Cursor java.util.ArrayList
StackMap stack:
new org.h2.engine.MetaRecord
dup
aload 9
invokeinterface org.h2.index.Cursor.get:()Lorg/h2/result/Row;
invokespecial org.h2.engine.MetaRecord.<init>:(Lorg/h2/result/SearchRow;)V
astore 11
start local 11 138: aload 0
getfield org.h2.engine.Database.objectIds:Ljava/util/BitSet;
aload 11
invokevirtual org.h2.engine.MetaRecord.getId:()I
invokevirtual java.util.BitSet.set:(I)V
139: aload 10
aload 11
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 11 140: StackMap locals:
StackMap stack:
aload 9
invokeinterface org.h2.index.Cursor.next:()Z
ifne 137
141: aload 10
invokestatic java.util.Collections.sort:(Ljava/util/List;)V
142: aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
dup
astore 11
monitorenter
143: aload 10
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 13
goto 146
StackMap locals: org.h2.engine.Database int int org.h2.engine.ConnectionInfo org.h2.command.ddl.CreateTableData java.util.ArrayList org.h2.table.Column int org.h2.table.IndexColumn[] org.h2.index.Cursor java.util.ArrayList org.h2.engine.Session top java.util.Iterator
StackMap stack:
144: aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.engine.MetaRecord
astore 12
start local 12 145: aload 12
aload 0
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
aload 0
getfield org.h2.engine.Database.eventListener:Lorg/h2/api/DatabaseEventListener;
invokevirtual org.h2.engine.MetaRecord.execute:(Lorg/h2/engine/Database;Lorg/h2/engine/Session;Lorg/h2/api/DatabaseEventListener;)V
end local 12 146: StackMap locals:
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 144
147: aload 11
monitorexit
148: goto 151
StackMap locals: org.h2.engine.Database int int org.h2.engine.ConnectionInfo org.h2.command.ddl.CreateTableData java.util.ArrayList org.h2.table.Column int org.h2.table.IndexColumn[] org.h2.index.Cursor java.util.ArrayList org.h2.engine.Session
StackMap stack: java.lang.Throwable
149: aload 11
monitorexit
150: athrow
151: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
iconst_1
invokevirtual org.h2.engine.Session.commit:(Z)V
152: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 155
153: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.getTransactionStore:()Lorg/h2/mvstore/tx/TransactionStore;
invokevirtual org.h2.mvstore.tx.TransactionStore.endLeftoverTransactions:()V
154: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
aload 0
getfield org.h2.engine.Database.objectIds:Ljava/util/BitSet;
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.removeTemporaryMaps:(Ljava/util/BitSet;)V
155: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
invokevirtual org.h2.engine.Database.recompileInvalidViews:(Lorg/h2/engine/Session;)V
156: aload 0
iconst_0
putfield org.h2.engine.Database.starting:Z
157: aload 0
getfield org.h2.engine.Database.readOnly:Z
ifne 176
158: bipush 33
invokestatic org.h2.command.dml.SetTypes.getTypeName:(I)Ljava/lang/String;
astore 11
start local 11 159: aload 0
getfield org.h2.engine.Database.settings:Ljava/util/HashMap;
aload 11
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
ifnonnull 164
160: new org.h2.engine.Setting
dup
aload 0
aload 0
invokevirtual org.h2.engine.Database.allocateObjectId:()I
aload 11
invokespecial org.h2.engine.Setting.<init>:(Lorg/h2/engine/Database;ILjava/lang/String;)V
astore 12
start local 12 161: aload 12
sipush 199
invokevirtual org.h2.engine.Setting.setIntValue:(I)V
162: aload 0
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
invokevirtual org.h2.engine.Database.lockMeta:(Lorg/h2/engine/Session;)Z
pop
163: aload 0
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
aload 12
invokevirtual org.h2.engine.Database.addDatabaseObject:(Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
end local 12 164: StackMap locals: java.lang.String
StackMap stack:
aload 0
bipush 37
getstatic org.h2.engine.SysProperties.SORT_BINARY_UNSIGNED:Z
iconst_1
invokevirtual org.h2.engine.Database.setSortSetting:(IZZ)V
165: aload 0
bipush 50
getstatic org.h2.engine.SysProperties.SORT_UUID_UNSIGNED:Z
iconst_0
invokevirtual org.h2.engine.Database.setSortSetting:(IZZ)V
166: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
ifnull 176
167: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
invokevirtual org.h2.store.PageStore.getObjectIds:()Ljava/util/BitSet;
astore 12
start local 12 168: iconst_0
istore 13
start local 13 169: aload 12
invokevirtual java.util.BitSet.length:()I
istore 14
start local 14 170: goto 175
171: StackMap locals: java.util.BitSet int int
StackMap stack:
aload 12
iload 13
invokevirtual java.util.BitSet.get:(I)Z
ifeq 174
aload 0
getfield org.h2.engine.Database.objectIds:Ljava/util/BitSet;
iload 13
invokevirtual java.util.BitSet.get:(I)Z
ifne 174
172: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
new java.lang.StringBuilder
dup
ldc "unused object id: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 13
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.h2.message.Trace.info:(Ljava/lang/String;)V
173: aload 0
getfield org.h2.engine.Database.objectIds:Ljava/util/BitSet;
iload 13
invokevirtual java.util.BitSet.set:(I)V
174: StackMap locals:
StackMap stack:
iinc 13 1
StackMap locals:
StackMap stack:
175: iload 13
iload 14
if_icmplt 171
end local 14 end local 13 end local 12 end local 11 176: StackMap locals: org.h2.engine.Database int int org.h2.engine.ConnectionInfo org.h2.command.ddl.CreateTableData java.util.ArrayList org.h2.table.Column int org.h2.table.IndexColumn[] org.h2.index.Cursor java.util.ArrayList
StackMap stack:
aload 0
invokevirtual org.h2.engine.Database.getLobStorage:()Lorg/h2/store/LobStorageInterface;
invokeinterface org.h2.store.LobStorageInterface.init:()V
177: aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
iconst_1
invokevirtual org.h2.engine.Session.commit:(Z)V
178: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
ldc "opened {0}"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
aastore
invokevirtual org.h2.message.Trace.info:(Ljava/lang/String;[Ljava/lang/Object;)V
179: aload 0
getfield org.h2.engine.Database.checkpointAllowed:I
ifle 181
180: aload 0
invokevirtual org.h2.engine.Database.afterWriting:()V
181: StackMap locals:
StackMap stack:
return
end local 10 end local 9 end local 8 end local 7 end local 6 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 182 0 this Lorg/h2/engine/Database;
0 182 1 traceLevelFile I
0 182 2 traceLevelSystemOut I
0 182 3 ci Lorg/h2/engine/ConnectionInfo;
2 79 4 dataFileName Ljava/lang/String;
3 79 5 existsData Z
4 79 6 pageFileName Ljava/lang/String;
5 79 7 mvFileName Ljava/lang/String;
6 79 8 existsPage Z
7 79 9 existsMv Z
25 28 10 traceFile Ljava/lang/String;
46 79 10 lockFileName Ljava/lang/String;
67 72 11 e Lorg/h2/message/DbException;
104 182 4 data Lorg/h2/command/ddl/CreateTableData;
105 182 5 cols Ljava/util/ArrayList<Lorg/h2/table/Column;>;
106 182 6 columnId Lorg/h2/table/Column;
112 182 7 create Z
126 182 8 pkCols [Lorg/h2/table/IndexColumn;
135 182 9 cursor Lorg/h2/index/Cursor;
136 182 10 records Ljava/util/ArrayList<Lorg/h2/engine/MetaRecord;>;
138 140 11 rec Lorg/h2/engine/MetaRecord;
145 146 12 rec Lorg/h2/engine/MetaRecord;
159 176 11 name Ljava/lang/String;
161 164 12 setting Lorg/h2/engine/Setting;
168 176 12 f Ljava/util/BitSet;
169 176 13 i I
170 176 14 len I
Exception table:
from to target type
64 65 66 Class org.h2.message.DbException
143 148 149 any
149 150 149 any
MethodParameters:
Name Flags
traceLevelFile
traceLevelSystemOut
ci
private void setSortSetting(int, boolean, boolean);
descriptor: (IZZ)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 2
iload 3
if_icmpne 2
1: return
2: StackMap locals:
StackMap stack:
iload 1
invokestatic org.h2.command.dml.SetTypes.getTypeName:(I)Ljava/lang/String;
astore 4
start local 4 3: aload 0
getfield org.h2.engine.Database.settings:Ljava/util/HashMap;
aload 4
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
ifnonnull 10
4: new org.h2.engine.Setting
dup
aload 0
aload 0
invokevirtual org.h2.engine.Database.allocateObjectId:()I
aload 4
invokespecial org.h2.engine.Setting.<init>:(Lorg/h2/engine/Database;ILjava/lang/String;)V
astore 5
start local 5 5: aload 5
iload 2
ifeq 6
ldc "UNSIGNED"
goto 7
StackMap locals: org.h2.engine.Database int int int java.lang.String org.h2.engine.Setting
StackMap stack: org.h2.engine.Setting
6: ldc "SIGNED"
StackMap locals: org.h2.engine.Database int int int java.lang.String org.h2.engine.Setting
StackMap stack: org.h2.engine.Setting java.lang.String
7: invokevirtual org.h2.engine.Setting.setStringValue:(Ljava/lang/String;)V
8: aload 0
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
invokevirtual org.h2.engine.Database.lockMeta:(Lorg/h2/engine/Session;)Z
pop
9: aload 0
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
aload 5
invokevirtual org.h2.engine.Database.addDatabaseObject:(Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
end local 5 10: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/h2/engine/Database;
0 11 1 type I
0 11 2 defValue Z
0 11 3 oldDefault Z
3 11 4 name Ljava/lang/String;
5 10 5 setting Lorg/h2/engine/Setting;
MethodParameters:
Name Flags
type
defValue
oldDefault
private void handleUpgradeIssues();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=11, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 28
aload 0
invokevirtual org.h2.engine.Database.isReadOnly:()Z
ifne 28
1: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.getMvStore:()Lorg/h2/mvstore/MVStore;
astore 1
start local 1 2: aload 1
ldc "index.0"
invokevirtual org.h2.mvstore.MVStore.hasMap:(Ljava/lang/String;)Z
ifeq 28
3: aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
invokevirtual org.h2.table.Table.getScanIndex:(Lorg/h2/engine/Session;)Lorg/h2/index/Index;
astore 2
start local 2 4: aload 2
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
aconst_null
aconst_null
invokeinterface org.h2.index.Index.find:(Lorg/h2/engine/Session;Lorg/h2/result/SearchRow;Lorg/h2/result/SearchRow;)Lorg/h2/index/Cursor;
astore 3
start local 3 5: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 4
start local 4 6: iconst_0
istore 5
start local 5 7: goto 15
8: StackMap locals: org.h2.engine.Database org.h2.mvstore.MVStore org.h2.index.Index org.h2.index.Cursor java.util.List int
StackMap stack:
aload 3
invokeinterface org.h2.index.Cursor.get:()Lorg/h2/result/Row;
astore 6
start local 6 9: aload 4
aload 6
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
10: aload 6
invokeinterface org.h2.result.Row.getKey:()J
lstore 7
start local 7 11: aload 6
iconst_0
invokeinterface org.h2.result.Row.getValue:(I)Lorg/h2/value/Value;
invokevirtual org.h2.value.Value.getInt:()I
istore 9
start local 9 12: iload 9
i2l
lload 7
lcmp
ifeq 15
13: iconst_1
istore 5
14: aload 6
iload 9
i2l
invokeinterface org.h2.result.Row.setKey:(J)V
end local 9 end local 7 end local 6 15: StackMap locals:
StackMap stack:
aload 3
invokeinterface org.h2.index.Cursor.next:()Z
ifne 8
16: iload 5
ifeq 26
17: aload 4
iconst_0
anewarray org.h2.result.Row
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast org.h2.result.Row[]
astore 6
start local 6 18: aload 6
new org.h2.engine.Database$1
dup
aload 0
invokespecial org.h2.engine.Database$1.<init>:(Lorg/h2/engine/Database;)V
invokestatic java.util.Arrays.sort:([Ljava/lang/Object;Ljava/util/Comparator;)V
19: aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
invokevirtual org.h2.table.Table.truncate:(Lorg/h2/engine/Session;)V
20: aload 6
dup
astore 10
arraylength
istore 9
iconst_0
istore 8
goto 24
StackMap locals: org.h2.engine.Database org.h2.mvstore.MVStore org.h2.index.Index org.h2.index.Cursor java.util.List int org.h2.result.Row[] top int int org.h2.result.Row[]
StackMap stack:
21: aload 10
iload 8
aaload
astore 7
start local 7 22: aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
aload 7
invokevirtual org.h2.table.Table.addRow:(Lorg/h2/engine/Session;Lorg/h2/result/Row;)V
end local 7 23: iinc 8 1
StackMap locals:
StackMap stack:
24: iload 8
iload 9
if_icmplt 21
25: aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
iconst_1
invokevirtual org.h2.engine.Session.commit:(Z)V
end local 6 26: StackMap locals: org.h2.engine.Database org.h2.mvstore.MVStore org.h2.index.Index org.h2.index.Cursor java.util.List int
StackMap stack:
aload 1
ldc "index.0"
invokevirtual org.h2.mvstore.MVStore.removeMap:(Ljava/lang/String;)V
27: aload 1
invokevirtual org.h2.mvstore.MVStore.commit:()J
pop2
end local 5 end local 4 end local 3 end local 2 end local 1 28: StackMap locals: org.h2.engine.Database
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lorg/h2/engine/Database;
2 28 1 mvStore Lorg/h2/mvstore/MVStore;
4 28 2 scanIndex Lorg/h2/index/Index;
5 28 3 curs Lorg/h2/index/Cursor;
6 28 4 allMetaRows Ljava/util/List<Lorg/h2/result/Row;>;
7 28 5 needRepair Z
9 15 6 row Lorg/h2/result/Row;
11 15 7 rowId J
12 15 9 id I
18 26 6 array [Lorg/h2/result/Row;
22 23 7 row Lorg/h2/result/Row;
private void startServer(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
bipush 7
anewarray java.lang.String
dup
iconst_0
1: ldc "-tcpPort"
aastore
dup
iconst_1
aload 0
getfield org.h2.engine.Database.autoServerPort:I
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
aastore
dup
iconst_2
2: ldc "-tcpAllowOthers"
aastore
dup
iconst_3
3: ldc "-tcpDaemon"
aastore
dup
iconst_4
4: ldc "-key"
aastore
dup
iconst_5
aload 1
aastore
dup
bipush 6
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
aastore
5: invokestatic org.h2.tools.Server.createTcpServer:([Ljava/lang/String;)Lorg/h2/tools/Server;
putfield org.h2.engine.Database.server:Lorg/h2/tools/Server;
6: aload 0
getfield org.h2.engine.Database.server:Lorg/h2/tools/Server;
invokevirtual org.h2.tools.Server.start:()Lorg/h2/tools/Server;
pop
7: goto 10
StackMap locals:
StackMap stack: java.sql.SQLException
8: astore 2
start local 2 9: aload 2
invokestatic org.h2.message.DbException.convert:(Ljava/lang/Throwable;)Lorg/h2/message/DbException;
athrow
end local 2 10: StackMap locals:
StackMap stack:
invokestatic org.h2.util.NetUtils.getLocalAddress:()Ljava/lang/String;
astore 2
start local 2 11: new java.lang.StringBuilder
dup
aload 2
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)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.Database.server:Lorg/h2/tools/Server;
invokevirtual org.h2.tools.Server.getPort:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
start local 3 12: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
ldc "server"
aload 3
invokevirtual org.h2.store.FileLock.setProperty:(Ljava/lang/String;Ljava/lang/String;)V
13: aload 2
invokestatic org.h2.util.NetUtils.getHostName:(Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 14: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
ldc "hostName"
aload 4
invokevirtual org.h2.store.FileLock.setProperty:(Ljava/lang/String;Ljava/lang/String;)V
15: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
invokevirtual org.h2.store.FileLock.save:()Ljava/util/Properties;
pop
16: return
end local 4 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/Database;
0 17 1 key Ljava/lang/String;
9 10 2 e Ljava/sql/SQLException;
11 17 2 localAddress Ljava/lang/String;
12 17 3 address Ljava/lang/String;
14 17 4 hostName Ljava/lang/String;
Exception table:
from to target type
0 7 8 Class java.sql.SQLException
MethodParameters:
Name Flags
key
private void stopServer();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.server:Lorg/h2/tools/Server;
ifnull 4
1: aload 0
getfield org.h2.engine.Database.server:Lorg/h2/tools/Server;
astore 1
start local 1 2: aload 0
aconst_null
putfield org.h2.engine.Database.server:Lorg/h2/tools/Server;
3: aload 1
invokevirtual org.h2.tools.Server.stop:()V
end local 1 4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/h2/engine/Database;
2 4 1 s Lorg/h2/tools/Server;
private void recompileInvalidViews(org.h2.engine.Session);
descriptor: (Lorg/h2/engine/Session;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 1: aload 0
iconst_0
invokevirtual org.h2.engine.Database.getAllTablesAndViews:(Z)Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 4
goto 9
StackMap locals: org.h2.engine.Database org.h2.engine.Session int top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.table.Table
astore 3
start local 3 3: aload 3
instanceof org.h2.table.TableView
ifeq 9
4: aload 3
checkcast org.h2.table.TableView
astore 5
start local 5 5: aload 5
invokevirtual org.h2.table.TableView.isInvalid:()Z
ifeq 9
6: aload 5
aload 1
iconst_1
iconst_0
invokevirtual org.h2.table.TableView.recompile:(Lorg/h2/engine/Session;ZZ)Lorg/h2/message/DbException;
pop
7: aload 5
invokevirtual org.h2.table.TableView.isInvalid:()Z
ifne 9
8: iconst_1
istore 2
end local 5 end local 3 9: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
10: iload 2
ifne 0
11: aload 1
invokevirtual org.h2.engine.Session.getDatabase:()Lorg/h2/engine/Database;
invokestatic org.h2.table.TableView.clearIndexCaches:(Lorg/h2/engine/Database;)V
12: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/h2/engine/Database;
0 13 1 session Lorg/h2/engine/Session;
1 13 2 atLeastOneRecompiledSuccessfully Z
3 9 3 obj Lorg/h2/table/Table;
5 9 5 view Lorg/h2/table/TableView;
MethodParameters:
Name Flags
session
private void initMetaTables();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.metaTablesInitialized:Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.infoSchema:Lorg/h2/schema/Schema;
dup
astore 1
monitorenter
3: aload 0
getfield org.h2.engine.Database.metaTablesInitialized:Z
ifne 13
4: iconst_0
istore 2
start local 2 5: invokestatic org.h2.table.MetaTable.getMetaTableTypeCount:()I
istore 3
start local 3 6: goto 10
7: StackMap locals: org.h2.schema.Schema int int
StackMap stack:
new org.h2.table.MetaTable
dup
aload 0
getfield org.h2.engine.Database.infoSchema:Lorg/h2/schema/Schema;
iconst_m1
iload 2
isub
iload 2
invokespecial org.h2.table.MetaTable.<init>:(Lorg/h2/schema/Schema;II)V
astore 4
start local 4 8: aload 0
getfield org.h2.engine.Database.infoSchema:Lorg/h2/schema/Schema;
aload 4
invokevirtual org.h2.schema.Schema.add:(Lorg/h2/schema/SchemaObject;)V
end local 4 9: iinc 2 1
StackMap locals:
StackMap stack:
10: iload 2
iload 3
11: if_icmplt 7
end local 3 end local 2 12: aload 0
iconst_1
putfield org.h2.engine.Database.metaTablesInitialized:Z
13: StackMap locals:
StackMap stack:
aload 1
monitorexit
14: goto 17
StackMap locals:
StackMap stack: java.lang.Throwable
15: aload 1
monitorexit
16: athrow
17: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/h2/engine/Database;
5 12 2 type I
6 12 3 count I
8 9 4 m Lorg/h2/table/MetaTable;
Exception table:
from to target type
3 14 15 any
15 16 15 any
private void addMeta(org.h2.engine.Session, org.h2.engine.DbObject);
descriptor: (Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.h2.engine.Database.$assertionsDisabled:Z
ifne 1
aload 0
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 2
invokeinterface org.h2.engine.DbObject.getId:()I
istore 3
start local 3 2: iload 3
ifle 14
aload 0
getfield org.h2.engine.Database.starting:Z
ifne 14
aload 2
invokeinterface org.h2.engine.DbObject.isTemporary:()Z
ifne 14
3: aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
invokevirtual org.h2.table.Table.getTemplateRow:()Lorg/h2/result/Row;
astore 4
start local 4 4: aload 2
aload 4
invokestatic org.h2.engine.MetaRecord.populateRowFromDBObject:(Lorg/h2/engine/DbObject;Lorg/h2/result/SearchRow;)V
5: aload 0
getfield org.h2.engine.Database.objectIds:Ljava/util/BitSet;
dup
astore 5
monitorenter
6: aload 0
getfield org.h2.engine.Database.objectIds:Ljava/util/BitSet;
iload 3
invokevirtual java.util.BitSet.set:(I)V
7: aload 5
monitorexit
8: goto 11
StackMap locals: org.h2.engine.Database org.h2.engine.Session org.h2.engine.DbObject int org.h2.result.Row java.util.BitSet
StackMap stack: java.lang.Throwable
9: aload 5
monitorexit
10: athrow
11: StackMap locals:
StackMap stack:
getstatic org.h2.engine.SysProperties.CHECK:Z
ifeq 13
12: aload 0
aload 1
invokevirtual org.h2.engine.Database.verifyMetaLocked:(Lorg/h2/engine/Session;)V
13: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
aload 1
aload 4
invokevirtual org.h2.table.Table.addRow:(Lorg/h2/engine/Session;Lorg/h2/result/Row;)V
end local 4 14: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/h2/engine/Database;
0 15 1 session Lorg/h2/engine/Session;
0 15 2 obj Lorg/h2/engine/DbObject;
2 15 3 id I
4 14 4 r Lorg/h2/result/Row;
Exception table:
from to target type
6 8 9 any
9 10 9 any
MethodParameters:
Name Flags
session
obj
public void verifyMetaLocked(org.h2.engine.Session);
descriptor: (Lorg/h2/engine/Session;)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.Database.meta:Lorg/h2/table/Table;
ifnull 3
aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
aload 1
invokevirtual org.h2.table.Table.isLockedExclusivelyBy:(Lorg/h2/engine/Session;)Z
ifne 3
1: aload 0
getfield org.h2.engine.Database.lockMode:I
ifeq 3
2: invokestatic org.h2.message.DbException.throwInternalError:()Ljava/lang/RuntimeException;
athrow
3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Database;
0 4 1 session Lorg/h2/engine/Session;
MethodParameters:
Name Flags
session
public boolean lockMeta(org.h2.engine.Session);
descriptor: (Lorg/h2/engine/Session;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
ifnonnull 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
getstatic org.h2.engine.Database.ASSERT:Z
ifeq 18
3: getstatic org.h2.engine.Database.META_LOCK_DEBUGGING_DB:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
ifnull 18
4: getstatic org.h2.engine.Database.META_LOCK_DEBUGGING_DB:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
aload 0
if_acmpeq 18
5: getstatic org.h2.engine.Database.META_LOCK_DEBUGGING:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast org.h2.engine.Session
astore 2
start local 2 6: aload 2
ifnonnull 11
7: getstatic org.h2.engine.Database.META_LOCK_DEBUGGING:Ljava/lang/ThreadLocal;
aload 1
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
8: getstatic org.h2.engine.Database.META_LOCK_DEBUGGING_DB:Ljava/lang/ThreadLocal;
aload 0
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
9: getstatic org.h2.engine.Database.META_LOCK_DEBUGGING_STACK:Ljava/lang/ThreadLocal;
new java.lang.Throwable
dup
ldc "Last meta lock granted in this stack trace, this is debug information for following IllegalStateException"
invokespecial java.lang.Throwable.<init>:(Ljava/lang/String;)V
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
10: goto 18
StackMap locals: org.h2.engine.Session
StackMap stack:
11: aload 2
aload 1
if_acmpeq 18
12: getstatic org.h2.engine.Database.META_LOCK_DEBUGGING_STACK:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast java.lang.Throwable
invokevirtual java.lang.Throwable.printStackTrace:()V
13: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "meta currently locked by "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
14: aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ", sessionid="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual org.h2.engine.Session.getId:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
15: ldc " and trying to be locked by different session, "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
16: aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ", sessionid="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual org.h2.engine.Session.getId:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " on same thread"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
17: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
end local 2 18: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
aload 1
iconst_1
iconst_1
invokevirtual org.h2.table.Table.lock:(Lorg/h2/engine/Session;ZZ)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/h2/engine/Database;
0 19 1 session Lorg/h2/engine/Session;
6 18 2 prev Lorg/h2/engine/Session;
MethodParameters:
Name Flags
session
public void unlockMeta(org.h2.engine.Session);
descriptor: (Lorg/h2/engine/Session;)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.Database.meta:Lorg/h2/table/Table;
ifnull 4
1: aload 0
aload 1
invokevirtual org.h2.engine.Database.unlockMetaDebug:(Lorg/h2/engine/Session;)V
2: aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
aload 1
invokevirtual org.h2.table.Table.unlock:(Lorg/h2/engine/Session;)V
3: aload 1
aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
invokevirtual org.h2.engine.Session.unlock:(Lorg/h2/table/Table;)V
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/h2/engine/Database;
0 5 1 session Lorg/h2/engine/Session;
MethodParameters:
Name Flags
session
public void unlockMetaDebug(org.h2.engine.Session);
descriptor: (Lorg/h2/engine/Session;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.h2.engine.Database.ASSERT:Z
ifeq 5
1: getstatic org.h2.engine.Database.META_LOCK_DEBUGGING:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
aload 1
if_acmpne 5
2: getstatic org.h2.engine.Database.META_LOCK_DEBUGGING:Ljava/lang/ThreadLocal;
aconst_null
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
3: getstatic org.h2.engine.Database.META_LOCK_DEBUGGING_DB:Ljava/lang/ThreadLocal;
aconst_null
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
4: getstatic org.h2.engine.Database.META_LOCK_DEBUGGING_STACK:Ljava/lang/ThreadLocal;
aconst_null
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/h2/engine/Database;
0 6 1 session Lorg/h2/engine/Session;
MethodParameters:
Name Flags
session
public void removeMeta(org.h2.engine.Session, int);
descriptor: (Lorg/h2/engine/Session;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=3
start local 0 start local 1 start local 2 0: iload 2
ifle 28
aload 0
getfield org.h2.engine.Database.starting:Z
ifne 28
1: aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
iconst_0
invokevirtual org.h2.table.Table.getTemplateSimpleRow:(Z)Lorg/h2/result/SearchRow;
astore 3
start local 3 2: aload 3
iconst_0
iload 2
invokestatic org.h2.value.ValueInt.get:(I)Lorg/h2/value/ValueInt;
invokeinterface org.h2.result.SearchRow.setValue:(ILorg/h2/value/Value;)V
3: aload 0
aload 1
invokevirtual org.h2.engine.Database.lockMeta:(Lorg/h2/engine/Session;)Z
istore 4
start local 4 4: aload 0
getfield org.h2.engine.Database.metaIdIndex:Lorg/h2/index/Index;
aload 1
aload 3
aload 3
invokeinterface org.h2.index.Index.find:(Lorg/h2/engine/Session;Lorg/h2/result/SearchRow;Lorg/h2/result/SearchRow;)Lorg/h2/index/Cursor;
astore 5
start local 5 5: aload 5
invokeinterface org.h2.index.Cursor.next:()Z
ifeq 17
6: aload 0
getfield org.h2.engine.Database.lockMode:I
ifeq 8
iload 4
ifne 8
7: invokestatic org.h2.message.DbException.throwInternalError:()Ljava/lang/RuntimeException;
athrow
8: StackMap locals: org.h2.result.SearchRow int org.h2.index.Cursor
StackMap stack:
aload 5
invokeinterface org.h2.index.Cursor.get:()Lorg/h2/result/Row;
astore 6
start local 6 9: aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
aload 1
aload 6
invokevirtual org.h2.table.Table.removeRow:(Lorg/h2/engine/Session;Lorg/h2/result/Row;)V
10: getstatic org.h2.engine.SysProperties.CHECK:Z
ifeq 17
11: aload 0
aload 1
iload 2
invokevirtual org.h2.engine.Database.checkMetaFree:(Lorg/h2/engine/Session;I)V
end local 6 end local 5 12: goto 17
StackMap locals: org.h2.engine.Database org.h2.engine.Session int org.h2.result.SearchRow int
StackMap stack: java.lang.Throwable
13: astore 7
14: iload 4
ifne 16
15: aload 0
aload 1
invokevirtual org.h2.engine.Database.unlockMeta:(Lorg/h2/engine/Session;)V
16: StackMap locals: org.h2.engine.Database org.h2.engine.Session int org.h2.result.SearchRow int top top java.lang.Throwable
StackMap stack:
aload 7
athrow
17: StackMap locals: org.h2.engine.Database org.h2.engine.Session int org.h2.result.SearchRow int
StackMap stack:
iload 4
ifne 19
18: aload 0
aload 1
invokevirtual org.h2.engine.Database.unlockMeta:(Lorg/h2/engine/Session;)V
19: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.engine.Database.isMVStore:()Z
ifeq 22
20: aload 1
iload 2
invokevirtual org.h2.engine.Session.scheduleDatabaseObjectIdForRelease:(I)V
21: goto 28
22: StackMap locals:
StackMap stack:
aload 0
dup
astore 5
monitorenter
23: aload 0
getfield org.h2.engine.Database.objectIds:Ljava/util/BitSet;
iload 2
invokevirtual java.util.BitSet.clear:(I)V
24: aload 5
monitorexit
25: goto 28
StackMap locals: org.h2.engine.Database org.h2.engine.Session int org.h2.result.SearchRow int org.h2.engine.Database
StackMap stack: java.lang.Throwable
26: aload 5
monitorexit
27: athrow
end local 4 end local 3 28: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lorg/h2/engine/Database;
0 29 1 session Lorg/h2/engine/Session;
0 29 2 id I
2 28 3 r Lorg/h2/result/SearchRow;
4 28 4 wasLocked Z
5 12 5 cursor Lorg/h2/index/Cursor;
9 12 6 found Lorg/h2/result/Row;
Exception table:
from to target type
4 13 13 any
23 25 26 any
26 27 26 any
MethodParameters:
Name Flags
session
id
void releaseDatabaseObjectIds(java.util.BitSet);
descriptor: (Ljava/util/BitSet;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Database.objectIds:Ljava/util/BitSet;
dup
astore 2
monitorenter
1: aload 0
getfield org.h2.engine.Database.objectIds:Ljava/util/BitSet;
aload 1
invokevirtual java.util.BitSet.andNot:(Ljava/util/BitSet;)V
2: aload 2
monitorexit
3: goto 6
StackMap locals: org.h2.engine.Database java.util.BitSet java.util.BitSet
StackMap stack: java.lang.Throwable
4: aload 2
monitorexit
5: athrow
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/Database;
0 7 1 idsToRelease Ljava/util/BitSet;
Exception table:
from to target type
1 3 4 any
4 5 4 any
MethodParameters:
Name Flags
idsToRelease
private java.util.HashMap<java.lang.String, org.h2.engine.DbObject> getMap(int);
descriptor: (I)Ljava/util/HashMap;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: iload 1
tableswitch { // 2 - 14
2: 1
3: 17
4: 17
5: 17
6: 3
7: 5
8: 7
9: 17
10: 9
11: 17
12: 11
13: 13
14: 15
default: 17
}
1: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.users:Ljava/util/HashMap;
astore 2
start local 2 2: goto 18
end local 2 3: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.settings:Ljava/util/HashMap;
astore 2
start local 2 4: goto 18
end local 2 5: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.roles:Ljava/util/HashMap;
astore 2
start local 2 6: goto 18
end local 2 7: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.rights:Ljava/util/HashMap;
astore 2
start local 2 8: goto 18
end local 2 9: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.schemas:Ljava/util/HashMap;
astore 2
start local 2 10: goto 18
end local 2 11: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.domains:Ljava/util/HashMap;
astore 2
start local 2 12: goto 18
end local 2 13: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.comments:Ljava/util/HashMap;
astore 2
start local 2 14: goto 18
end local 2 15: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.aggregates:Ljava/util/HashMap;
astore 2
start local 2 16: goto 18
end local 2 17: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "type="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
start local 2 18: StackMap locals: java.util.HashMap
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/h2/engine/Database;
0 19 1 type I
2 3 2 result Ljava/util/HashMap<Ljava/lang/String;+Lorg/h2/engine/DbObject;>;
4 5 2 result Ljava/util/HashMap<Ljava/lang/String;+Lorg/h2/engine/DbObject;>;
6 7 2 result Ljava/util/HashMap<Ljava/lang/String;+Lorg/h2/engine/DbObject;>;
8 9 2 result Ljava/util/HashMap<Ljava/lang/String;+Lorg/h2/engine/DbObject;>;
10 11 2 result Ljava/util/HashMap<Ljava/lang/String;+Lorg/h2/engine/DbObject;>;
12 13 2 result Ljava/util/HashMap<Ljava/lang/String;+Lorg/h2/engine/DbObject;>;
14 15 2 result Ljava/util/HashMap<Ljava/lang/String;+Lorg/h2/engine/DbObject;>;
16 17 2 result Ljava/util/HashMap<Ljava/lang/String;+Lorg/h2/engine/DbObject;>;
18 19 2 result Ljava/util/HashMap<Ljava/lang/String;+Lorg/h2/engine/DbObject;>;
Signature: (I)Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/engine/DbObject;>;
MethodParameters:
Name Flags
type
public void addSchemaObject(org.h2.engine.Session, org.h2.schema.SchemaObject);
descriptor: (Lorg/h2/engine/Session;Lorg/h2/schema/SchemaObject;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface org.h2.schema.SchemaObject.getId:()I
istore 3
start local 3 1: iload 3
ifle 3
aload 0
getfield org.h2.engine.Database.starting:Z
ifne 3
2: aload 0
invokevirtual org.h2.engine.Database.checkWritingAllowed:()V
3: StackMap locals: int
StackMap stack:
aload 0
aload 1
invokevirtual org.h2.engine.Database.lockMeta:(Lorg/h2/engine/Session;)Z
pop
4: aload 0
dup
astore 4
monitorenter
5: aload 2
invokeinterface org.h2.schema.SchemaObject.getSchema:()Lorg/h2/schema/Schema;
aload 2
invokevirtual org.h2.schema.Schema.add:(Lorg/h2/schema/SchemaObject;)V
6: aload 0
aload 1
aload 2
invokevirtual org.h2.engine.Database.addMeta:(Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
7: aload 4
monitorexit
8: goto 11
StackMap locals: org.h2.engine.Database org.h2.engine.Session org.h2.schema.SchemaObject int org.h2.engine.Database
StackMap stack: java.lang.Throwable
9: aload 4
monitorexit
10: athrow
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/Database;
0 12 1 session Lorg/h2/engine/Session;
0 12 2 obj Lorg/h2/schema/SchemaObject;
1 12 3 id I
Exception table:
from to target type
5 8 9 any
9 10 9 any
MethodParameters:
Name Flags
session
obj
public synchronized void addDatabaseObject(org.h2.engine.Session, org.h2.engine.DbObject);
descriptor: (Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface org.h2.engine.DbObject.getId:()I
istore 3
start local 3 1: iload 3
ifle 3
aload 0
getfield org.h2.engine.Database.starting:Z
ifne 3
2: aload 0
invokevirtual org.h2.engine.Database.checkWritingAllowed:()V
3: StackMap locals: int
StackMap stack:
aload 0
aload 2
invokeinterface org.h2.engine.DbObject.getType:()I
invokevirtual org.h2.engine.Database.getMap:(I)Ljava/util/HashMap;
astore 4
start local 4 4: aload 2
invokeinterface org.h2.engine.DbObject.getType:()I
iconst_2
if_icmpne 8
5: aload 2
checkcast org.h2.engine.User
astore 5
start local 5 6: aload 5
invokevirtual org.h2.engine.User.isAdmin:()Z
ifeq 8
aload 0
getfield org.h2.engine.Database.systemUser:Lorg/h2/engine/User;
invokevirtual org.h2.engine.User.getName:()Ljava/lang/String;
ldc "DBA"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 8
7: aload 0
getfield org.h2.engine.Database.systemUser:Lorg/h2/engine/User;
aload 5
invokevirtual org.h2.engine.User.getName:()Ljava/lang/String;
invokevirtual org.h2.engine.User.rename:(Ljava/lang/String;)V
end local 5 8: StackMap locals: java.util.HashMap
StackMap stack:
aload 2
invokeinterface org.h2.engine.DbObject.getName:()Ljava/lang/String;
astore 5
start local 5 9: getstatic org.h2.engine.SysProperties.CHECK:Z
ifeq 11
aload 4
aload 5
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
ifnull 11
10: ldc "object already exists"
invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
pop
11: StackMap locals: java.lang.String
StackMap stack:
aload 0
aload 1
invokevirtual org.h2.engine.Database.lockMeta:(Lorg/h2/engine/Session;)Z
pop
12: aload 0
aload 1
aload 2
invokevirtual org.h2.engine.Database.addMeta:(Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
13: aload 4
aload 5
aload 2
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
14: 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 15 0 this Lorg/h2/engine/Database;
0 15 1 session Lorg/h2/engine/Session;
0 15 2 obj Lorg/h2/engine/DbObject;
1 15 3 id I
4 15 4 map Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/engine/DbObject;>;
6 8 5 user Lorg/h2/engine/User;
9 15 5 name Ljava/lang/String;
MethodParameters:
Name Flags
session
obj
public org.h2.engine.UserAggregate findAggregate(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/h2/engine/UserAggregate;
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.Database.aggregates:Ljava/util/HashMap;
aload 1
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.engine.UserAggregate
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
0 1 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public org.h2.engine.Comment (org.h2.engine.DbObject);
descriptor: (Lorg/h2/engine/DbObject;)Lorg/h2/engine/Comment;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface org.h2.engine.DbObject.getType:()I
bipush 13
if_icmpne 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 1
invokestatic org.h2.engine.Comment.getKey:(Lorg/h2/engine/DbObject;)Ljava/lang/String;
astore 2
start local 2 3: aload 0
getfield org.h2.engine.Database.comments:Ljava/util/HashMap;
aload 2
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.engine.Comment
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Database;
0 4 1 object Lorg/h2/engine/DbObject;
3 4 2 key Ljava/lang/String;
MethodParameters:
Name Flags
object
public org.h2.engine.Role findRole(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/h2/engine/Role;
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.Database.roles:Ljava/util/HashMap;
aload 1
invokestatic org.h2.util.StringUtils.toUpperEnglish:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.engine.Role
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
0 1 1 roleName Ljava/lang/String;
MethodParameters:
Name Flags
roleName
public org.h2.schema.Schema findSchema(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/h2/schema/Schema;
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.Database.schemas:Ljava/util/HashMap;
aload 1
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.schema.Schema
astore 2
start local 2 1: aload 2
aload 0
getfield org.h2.engine.Database.infoSchema:Lorg/h2/schema/Schema;
if_acmpne 3
2: aload 0
invokevirtual org.h2.engine.Database.initMetaTables:()V
3: StackMap locals: org.h2.schema.Schema
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Database;
0 4 1 schemaName Ljava/lang/String;
1 4 2 schema Lorg/h2/schema/Schema;
MethodParameters:
Name Flags
schemaName
public org.h2.engine.Setting findSetting(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/h2/engine/Setting;
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.Database.settings:Ljava/util/HashMap;
aload 1
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.engine.Setting
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
0 1 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public org.h2.engine.User findUser(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/h2/engine/User;
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.Database.users:Ljava/util/HashMap;
aload 1
invokestatic org.h2.util.StringUtils.toUpperEnglish:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.engine.User
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
0 1 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public org.h2.engine.Domain findDomain(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/h2/engine/Domain;
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.Database.domains:Ljava/util/HashMap;
aload 1
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.engine.Domain
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
0 1 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public org.h2.engine.User getUser(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/h2/engine/User;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.h2.engine.Database.findUser:(Ljava/lang/String;)Lorg/h2/engine/User;
astore 2
start local 2 1: aload 2
ifnonnull 3
2: ldc 90032
aload 1
invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
athrow
3: StackMap locals: org.h2.engine.User
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Database;
0 4 1 name Ljava/lang/String;
1 4 2 user Lorg/h2/engine/User;
MethodParameters:
Name Flags
name
synchronized org.h2.engine.Session createSession(org.h2.engine.User);
descriptor: (Lorg/h2/engine/User;)Lorg/h2/engine/Session;
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Database.closing:Z
ifeq 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.exclusiveSession:Ljava/util/concurrent/atomic/AtomicReference;
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
ifnull 4
3: ldc 90135
invokestatic org.h2.message.DbException.get:(I)Lorg/h2/message/DbException;
athrow
4: StackMap locals:
StackMap stack:
new org.h2.engine.Session
dup
aload 0
aload 1
aload 0
dup
getfield org.h2.engine.Database.nextSessionId:I
iconst_1
iadd
dup_x1
putfield org.h2.engine.Database.nextSessionId:I
invokespecial org.h2.engine.Session.<init>:(Lorg/h2/engine/Database;Lorg/h2/engine/User;I)V
astore 2
start local 2 5: aload 0
getfield org.h2.engine.Database.userSessions:Ljava/util/Set;
aload 2
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
6: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
ldc "connecting session #{0} to {1}"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 2
invokevirtual org.h2.engine.Session.getId:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
aastore
invokevirtual org.h2.message.Trace.info:(Ljava/lang/String;[Ljava/lang/Object;)V
7: aload 0
getfield org.h2.engine.Database.delayedCloser:Lorg/h2/engine/DelayedDatabaseCloser;
ifnull 10
8: aload 0
getfield org.h2.engine.Database.delayedCloser:Lorg/h2/engine/DelayedDatabaseCloser;
invokevirtual org.h2.engine.DelayedDatabaseCloser.reset:()V
9: aload 0
aconst_null
putfield org.h2.engine.Database.delayedCloser:Lorg/h2/engine/DelayedDatabaseCloser;
10: StackMap locals: org.h2.engine.Session
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/h2/engine/Database;
0 11 1 user Lorg/h2/engine/User;
5 11 2 session Lorg/h2/engine/Session;
MethodParameters:
Name Flags
user
public synchronized void removeSession(org.h2.engine.Session);
descriptor: (Lorg/h2/engine/Session;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnull 5
1: aload 0
getfield org.h2.engine.Database.exclusiveSession:Ljava/util/concurrent/atomic/AtomicReference;
aload 1
aconst_null
invokevirtual java.util.concurrent.atomic.AtomicReference.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
pop
2: aload 0
getfield org.h2.engine.Database.userSessions:Ljava/util/Set;
aload 1
invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
pop
3: aload 1
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
if_acmpeq 5
aload 1
aload 0
getfield org.h2.engine.Database.lobSession:Lorg/h2/engine/Session;
if_acmpeq 5
4: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
ldc "disconnecting session #{0}"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
invokevirtual org.h2.engine.Session.getId:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.h2.message.Trace.info:(Ljava/lang/String;[Ljava/lang/Object;)V
5: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.userSessions:Ljava/util/Set;
invokeinterface java.util.Set.isEmpty:()Z
ifeq 13
6: aload 1
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
if_acmpeq 13
aload 1
aload 0
getfield org.h2.engine.Database.lobSession:Lorg/h2/engine/Session;
if_acmpeq 13
7: aload 0
getfield org.h2.engine.Database.closeDelay:I
ifne 10
8: aload 0
iconst_0
invokevirtual org.h2.engine.Database.close:(Z)V
9: goto 13
StackMap locals:
StackMap stack:
10: aload 0
getfield org.h2.engine.Database.closeDelay:I
ifge 12
11: return
12: StackMap locals:
StackMap stack:
aload 0
new org.h2.engine.DelayedDatabaseCloser
dup
aload 0
aload 0
getfield org.h2.engine.Database.closeDelay:I
sipush 1000
imul
invokespecial org.h2.engine.DelayedDatabaseCloser.<init>:(Lorg/h2/engine/Database;I)V
putfield org.h2.engine.Database.delayedCloser:Lorg/h2/engine/DelayedDatabaseCloser;
13: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
if_acmpeq 16
14: aload 1
aload 0
getfield org.h2.engine.Database.lobSession:Lorg/h2/engine/Session;
if_acmpeq 16
aload 1
ifnull 16
15: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
ldc "disconnected session #{0}"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
invokevirtual org.h2.engine.Session.getId:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.h2.message.Trace.info:(Ljava/lang/String;[Ljava/lang/Object;)V
16: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/h2/engine/Database;
0 17 1 session Lorg/h2/engine/Session;
MethodParameters:
Name Flags
session
private synchronized void closeAllSessionsException(org.h2.engine.Session);
descriptor: (Lorg/h2/engine/Session;)V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=7, locals=8, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Database.userSessions:Ljava/util/Set;
getstatic org.h2.engine.Database.EMPTY_SESSION_ARRAY:[Lorg/h2/engine/Session;
invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast org.h2.engine.Session[]
astore 2
start local 2 1: aload 2
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 9
StackMap locals: org.h2.engine.Database org.h2.engine.Session org.h2.engine.Session[] top int int org.h2.engine.Session[]
StackMap stack:
2: aload 6
iload 4
aaload
astore 3
start local 3 3: aload 3
aload 1
if_acmpeq 8
4: aload 3
invokevirtual org.h2.engine.Session.close:()V
5: goto 8
StackMap locals: org.h2.engine.Database org.h2.engine.Session org.h2.engine.Session[] org.h2.engine.Session int int org.h2.engine.Session[]
StackMap stack: org.h2.message.DbException
6: astore 7
start local 7 7: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
aload 7
ldc "disconnecting session #{0}"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 3
invokevirtual org.h2.engine.Session.getId:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.h2.message.Trace.error:(Ljava/lang/Throwable;Ljava/lang/String;[Ljava/lang/Object;)V
end local 7 end local 3 8: StackMap locals: org.h2.engine.Database org.h2.engine.Session org.h2.engine.Session[] top int int org.h2.engine.Session[]
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
9: iload 4
iload 5
if_icmplt 2
10: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/h2/engine/Database;
0 11 1 except Lorg/h2/engine/Session;
1 11 2 all [Lorg/h2/engine/Session;
3 8 3 s Lorg/h2/engine/Session;
7 8 7 e Lorg/h2/message/DbException;
Exception table:
from to target type
4 5 6 Class org.h2.message.DbException
MethodParameters:
Name Flags
except
void close(boolean);
descriptor: (Z)V
flags: (0x0000)
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Database.backgroundException:Ljava/util/concurrent/atomic/AtomicReference;
aconst_null
invokevirtual java.util.concurrent.atomic.AtomicReference.getAndSet:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.message.DbException
astore 2
start local 2 1: aload 0
iload 1
invokevirtual org.h2.engine.Database.closeImpl:(Z)V
2: goto 7
StackMap locals: org.h2.engine.Database int org.h2.message.DbException
StackMap stack: java.lang.Throwable
3: astore 3
start local 3 4: aload 2
ifnull 6
5: aload 3
aload 2
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
6: StackMap locals: java.lang.Throwable
StackMap stack:
aload 3
athrow
end local 3 7: StackMap locals:
StackMap stack:
aload 2
ifnull 9
8: aload 2
invokevirtual org.h2.message.DbException.getErrorCode:()I
aload 2
iconst_1
anewarray java.lang.String
dup
iconst_0
aload 2
invokevirtual org.h2.message.DbException.getMessage:()Ljava/lang/String;
aastore
invokestatic org.h2.message.DbException.get:(ILjava/lang/Throwable;[Ljava/lang/String;)Lorg/h2/message/DbException;
athrow
9: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/h2/engine/Database;
0 10 1 fromShutdownHook Z
1 10 2 b Lorg/h2/message/DbException;
4 7 3 t Ljava/lang/Throwable;
Exception table:
from to target type
1 2 3 Class java.lang.Throwable
MethodParameters:
Name Flags
fromShutdownHook
private void closeImpl(boolean);
descriptor: (Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=7, args_size=2
start local 0 start local 1 0: aload 0
dup
astore 2
monitorenter
1: aload 0
getfield org.h2.engine.Database.closing:Z
ifeq 4
2: aload 2
monitorexit
3: invokestatic org.h2.engine.Engine.getInstance:()Lorg/h2/engine/Engine;
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokevirtual org.h2.engine.Engine.close:(Ljava/lang/String;)V
return
4: StackMap locals: org.h2.engine.Database
StackMap stack:
aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.SERIALIZED:Lorg/h2/store/FileLockMethod;
if_acmpne 12
5: aload 0
getfield org.h2.engine.Database.reconnectChangePending:Z
ifne 12
6: aload 0
iconst_0
invokevirtual org.h2.engine.Database.closeOpenFilesAndUnlock:(Z)V
7: goto 9
StackMap locals:
StackMap stack: org.h2.message.DbException
8: pop
9: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.traceSystem:Lorg/h2/message/TraceSystem;
invokevirtual org.h2.message.TraceSystem.close:()V
10: aload 2
monitorexit
11: invokestatic org.h2.engine.Engine.getInstance:()Lorg/h2/engine/Engine;
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokevirtual org.h2.engine.Engine.close:(Ljava/lang/String;)V
return
12: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield org.h2.engine.Database.closing:Z
13: aload 0
invokevirtual org.h2.engine.Database.stopServer:()V
14: aload 0
getfield org.h2.engine.Database.userSessions:Ljava/util/Set;
invokeinterface java.util.Set.isEmpty:()Z
ifne 20
15: iload 1
ifne 18
16: aload 2
monitorexit
17: invokestatic org.h2.engine.Engine.getInstance:()Lorg/h2/engine/Engine;
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokevirtual org.h2.engine.Engine.close:(Ljava/lang/String;)V
return
18: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
ldc "closing {0} from shutdown hook"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
aastore
invokevirtual org.h2.message.Trace.info:(Ljava/lang/String;[Ljava/lang/Object;)V
19: aload 0
aconst_null
invokevirtual org.h2.engine.Database.closeAllSessionsException:(Lorg/h2/engine/Session;)V
20: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
ldc "closing {0}"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
aastore
invokevirtual org.h2.message.Trace.info:(Ljava/lang/String;[Ljava/lang/Object;)V
21: aload 0
getfield org.h2.engine.Database.eventListener:Lorg/h2/api/DatabaseEventListener;
ifnull 30
22: aload 0
iconst_0
putfield org.h2.engine.Database.closing:Z
23: aload 0
getfield org.h2.engine.Database.eventListener:Lorg/h2/api/DatabaseEventListener;
astore 3
start local 3 24: aload 0
aconst_null
putfield org.h2.engine.Database.eventListener:Lorg/h2/api/DatabaseEventListener;
25: aload 3
invokeinterface org.h2.api.DatabaseEventListener.closingDatabase:()V
26: aload 0
getfield org.h2.engine.Database.userSessions:Ljava/util/Set;
invokeinterface java.util.Set.isEmpty:()Z
ifne 29
27: aload 2
monitorexit
28: invokestatic org.h2.engine.Engine.getInstance:()Lorg/h2/engine/Engine;
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokevirtual org.h2.engine.Engine.close:(Ljava/lang/String;)V
return
29: StackMap locals: org.h2.api.DatabaseEventListener
StackMap stack:
aload 0
iconst_1
putfield org.h2.engine.Database.closing:Z
end local 3 30: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.engine.Database.isReadOnly:()Z
ifne 32
31: aload 0
invokevirtual org.h2.engine.Database.removeOrphanedLobs:()V
32: StackMap locals:
StackMap stack:
aload 2
monitorexit
33: goto 36
StackMap locals:
StackMap stack: java.lang.Throwable
34: aload 2
monitorexit
35: athrow
36: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
ifnull 68
37: aload 0
getfield org.h2.engine.Database.powerOffCount:I
iconst_m1
if_icmpeq 52
38: aload 0
iconst_0
invokevirtual org.h2.engine.Database.getAllTablesAndViews:(Z)Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 3
goto 44
StackMap locals: org.h2.engine.Database int top java.util.Iterator
StackMap stack:
39: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.table.Table
astore 2
start local 2 40: aload 2
invokevirtual org.h2.table.Table.isGlobalTemporary:()Z
ifeq 43
41: aload 2
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
invokevirtual org.h2.table.Table.removeChildrenAndResources:(Lorg/h2/engine/Session;)V
42: goto 44
43: StackMap locals: org.h2.engine.Database int org.h2.table.Table java.util.Iterator
StackMap stack:
aload 2
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
invokevirtual org.h2.table.Table.close:(Lorg/h2/engine/Session;)V
end local 2 44: StackMap locals: org.h2.engine.Database int top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 39
45: aload 0
46: iconst_3
47: invokevirtual org.h2.engine.Database.getAllSchemaObjects:(I)Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 3
goto 51
StackMap locals:
StackMap stack:
48: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.schema.SchemaObject
astore 2
start local 2 49: aload 2
checkcast org.h2.schema.Sequence
astore 4
start local 4 50: aload 4
invokevirtual org.h2.schema.Sequence.close:()V
end local 4 end local 2 51: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 48
52: StackMap locals: org.h2.engine.Database int
StackMap stack:
aload 0
53: iconst_4
54: invokevirtual org.h2.engine.Database.getAllSchemaObjects:(I)Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 3
goto 61
StackMap locals: org.h2.engine.Database int top java.util.Iterator
StackMap stack:
55: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.schema.SchemaObject
astore 2
start local 2 56: aload 2
checkcast org.h2.schema.TriggerObject
astore 4
start local 4 57: aload 4
invokevirtual org.h2.schema.TriggerObject.close:()V
58: goto 61
StackMap locals: org.h2.engine.Database int org.h2.schema.SchemaObject java.util.Iterator org.h2.schema.TriggerObject
StackMap stack: java.sql.SQLException
59: astore 5
start local 5 60: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
aload 5
ldc "close"
invokevirtual org.h2.message.Trace.error:(Ljava/lang/Throwable;Ljava/lang/String;)V
end local 5 end local 4 end local 2 61: StackMap locals: org.h2.engine.Database int top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 55
62: aload 0
getfield org.h2.engine.Database.powerOffCount:I
iconst_m1
if_icmpeq 68
63: aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
invokevirtual org.h2.table.Table.close:(Lorg/h2/engine/Session;)V
64: aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
iconst_1
invokevirtual org.h2.engine.Session.commit:(Z)V
65: goto 68
StackMap locals: org.h2.engine.Database int
StackMap stack: org.h2.message.DbException
66: astore 2
start local 2 67: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
aload 2
ldc "close"
invokevirtual org.h2.message.Trace.error:(Ljava/lang/Throwable;Ljava/lang/String;)V
end local 2 68: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.tempFileDeleter:Lorg/h2/util/TempFileDeleter;
invokevirtual org.h2.util.TempFileDeleter.deleteAll:()V
69: aload 0
iconst_1
invokevirtual org.h2.engine.Database.closeOpenFilesAndUnlock:(Z)V
70: goto 73
StackMap locals:
StackMap stack: org.h2.message.DbException
71: astore 2
start local 2 72: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
aload 2
ldc "close"
invokevirtual org.h2.message.Trace.error:(Ljava/lang/Throwable;Ljava/lang/String;)V
end local 2 73: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
ldc "closed"
invokevirtual org.h2.message.Trace.info:(Ljava/lang/String;)V
74: aload 0
getfield org.h2.engine.Database.traceSystem:Lorg/h2/message/TraceSystem;
invokevirtual org.h2.message.TraceSystem.close:()V
75: aload 0
invokestatic org.h2.engine.OnExitDatabaseCloser.unregister:(Lorg/h2/engine/Database;)V
76: aload 0
getfield org.h2.engine.Database.deleteFilesOnDisconnect:Z
ifeq 87
aload 0
getfield org.h2.engine.Database.persistent:Z
ifeq 87
77: aload 0
iconst_0
putfield org.h2.engine.Database.deleteFilesOnDisconnect:Z
78: aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokestatic org.h2.store.fs.FileUtils.getParent:(Ljava/lang/String;)Ljava/lang/String;
astore 2
start local 2 79: aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokestatic org.h2.store.fs.FileUtils.getName:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 80: aload 2
aload 3
iconst_1
invokestatic org.h2.tools.DeleteDbFiles.execute:(Ljava/lang/String;Ljava/lang/String;Z)V
end local 3 end local 2 81: goto 87
StackMap locals:
StackMap stack: java.lang.Exception
82: pop
83: goto 87
StackMap locals:
StackMap stack: java.lang.Throwable
84: astore 6
85: invokestatic org.h2.engine.Engine.getInstance:()Lorg/h2/engine/Engine;
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokevirtual org.h2.engine.Engine.close:(Ljava/lang/String;)V
86: aload 6
athrow
87: StackMap locals:
StackMap stack:
invokestatic org.h2.engine.Engine.getInstance:()Lorg/h2/engine/Engine;
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokevirtual org.h2.engine.Engine.close:(Ljava/lang/String;)V
88: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 89 0 this Lorg/h2/engine/Database;
0 89 1 fromShutdownHook Z
24 30 3 e Lorg/h2/api/DatabaseEventListener;
40 44 2 table Lorg/h2/table/Table;
49 51 2 obj Lorg/h2/schema/SchemaObject;
50 51 4 sequence Lorg/h2/schema/Sequence;
56 61 2 obj Lorg/h2/schema/SchemaObject;
57 61 4 trigger Lorg/h2/schema/TriggerObject;
60 61 5 e Ljava/sql/SQLException;
67 68 2 e Lorg/h2/message/DbException;
72 73 2 e Lorg/h2/message/DbException;
79 81 2 directory Ljava/lang/String;
80 81 3 name Ljava/lang/String;
Exception table:
from to target type
6 7 8 Class org.h2.message.DbException
1 3 34 any
4 11 34 any
12 17 34 any
18 28 34 any
29 33 34 any
34 35 34 any
57 58 59 Class java.sql.SQLException
36 65 66 Class org.h2.message.DbException
69 70 71 Class org.h2.message.DbException
78 81 82 Class java.lang.Exception
0 3 84 any
4 11 84 any
12 17 84 any
18 28 84 any
29 84 84 any
MethodParameters:
Name Flags
fromShutdownHook
private void removeOrphanedLobs();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.persistent:Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.infoSchema:Lorg/h2/schema/Schema;
3: aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
ldc "LOB_DATA"
4: invokevirtual org.h2.schema.Schema.findTableOrView:(Lorg/h2/engine/Session;Ljava/lang/String;)Lorg/h2/table/Table;
ifnull 5
iconst_1
goto 6
StackMap locals:
StackMap stack:
5: iconst_0
StackMap locals:
StackMap stack: int
6: istore 1
start local 1 7: iload 1
aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 8
iconst_1
goto 9
StackMap locals: org.h2.engine.Database int
StackMap stack: int
8: iconst_0
StackMap locals: org.h2.engine.Database int
StackMap stack: int int
9: ior
istore 1
10: iload 1
ifne 12
11: return
12: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.engine.Database.getLobStorage:()Lorg/h2/store/LobStorageInterface;
pop
13: aload 0
getfield org.h2.engine.Database.lobStorage:Lorg/h2/store/LobStorageInterface;
14: iconst_m1
15: invokeinterface org.h2.store.LobStorageInterface.removeAllForTable:(I)V
16: goto 19
StackMap locals:
StackMap stack: org.h2.message.DbException
17: astore 2
start local 2 18: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
aload 2
ldc "close"
invokevirtual org.h2.message.Trace.error:(Ljava/lang/Throwable;Ljava/lang/String;)V
end local 2 19: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/h2/engine/Database;
7 20 1 lobStorageIsUsed Z
18 19 2 e Lorg/h2/message/DbException;
Exception table:
from to target type
12 16 17 Class org.h2.message.DbException
private void stopWriter();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.writer:Lorg/h2/store/WriterThread;
ifnull 3
1: aload 0
getfield org.h2.engine.Database.writer:Lorg/h2/store/WriterThread;
invokevirtual org.h2.store.WriterThread.stopThread:()V
2: aload 0
aconst_null
putfield org.h2.engine.Database.writer:Lorg/h2/store/WriterThread;
3: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Database;
private synchronized void closeOpenFilesAndUnlock(boolean);
descriptor: (Z)V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=5, locals=7, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.h2.engine.Database.stopWriter:()V
1: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
ifnull 22
2: iload 1
ifeq 22
3: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
invokevirtual org.h2.store.PageStore.checkpoint:()V
4: aload 0
getfield org.h2.engine.Database.readOnly:Z
ifne 22
5: aload 0
aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
invokevirtual org.h2.store.PageStore.getPageStoreSession:()Lorg/h2/engine/Session;
invokevirtual org.h2.engine.Database.lockMeta:(Lorg/h2/engine/Session;)Z
pop
6: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
aload 0
getfield org.h2.engine.Database.compactMode:I
invokevirtual org.h2.store.PageStore.compact:(I)V
7: aload 0
aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
invokevirtual org.h2.store.PageStore.getPageStoreSession:()Lorg/h2/engine/Session;
invokevirtual org.h2.engine.Database.unlockMeta:(Lorg/h2/engine/Session;)V
8: goto 22
StackMap locals:
StackMap stack: org.h2.message.DbException
9: astore 2
start local 2 10: getstatic org.h2.engine.Database.ASSERT:Z
ifeq 16
11: aload 2
invokevirtual org.h2.message.DbException.getErrorCode:()I
istore 3
start local 3 12: iload 3
ldc 90098
if_icmpeq 16
13: iload 3
ldc 50200
if_icmpeq 16
14: iload 3
ldc 90031
if_icmpeq 16
15: aload 2
invokevirtual org.h2.message.DbException.printStackTrace:()V
end local 3 16: StackMap locals: org.h2.message.DbException
StackMap stack:
aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
aload 2
ldc "close"
invokevirtual org.h2.message.Trace.error:(Ljava/lang/Throwable;Ljava/lang/String;)V
end local 2 17: goto 22
18: StackMap locals: org.h2.engine.Database int
StackMap stack: java.lang.Throwable
astore 2
start local 2 19: getstatic org.h2.engine.Database.ASSERT:Z
ifeq 21
20: aload 2
invokevirtual java.lang.Throwable.printStackTrace:()V
21: StackMap locals: java.lang.Throwable
StackMap stack:
aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
aload 2
ldc "close"
invokevirtual org.h2.message.Trace.error:(Ljava/lang/Throwable;Ljava/lang/String;)V
end local 2 22: StackMap locals:
StackMap stack:
aload 0
iconst_0
invokevirtual org.h2.engine.Database.reconnectModified:(Z)Z
pop
23: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 41
24: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.getMvStore:()Lorg/h2/mvstore/MVStore;
astore 2
start local 2 25: aload 2
ifnull 41
aload 2
invokevirtual org.h2.mvstore.MVStore.isClosed:()Z
ifne 41
26: aload 0
getfield org.h2.engine.Database.compactMode:I
bipush 82
if_icmpeq 30
27: aload 0
getfield org.h2.engine.Database.compactMode:I
bipush 84
if_icmpeq 30
28: aload 0
invokevirtual org.h2.engine.Database.getSettings:()Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.defragAlways:Z
ifne 30
29: iconst_0
goto 31
StackMap locals: org.h2.mvstore.MVStore
StackMap stack:
30: iconst_1
StackMap locals:
StackMap stack: int
31: istore 3
start local 3 32: iload 3
ifne 40
aload 2
invokevirtual org.h2.mvstore.MVStore.isReadOnly:()Z
ifne 40
33: aload 0
getfield org.h2.engine.Database.dbSettings:Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.maxCompactTime:I
ifle 39
34: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
aload 0
getfield org.h2.engine.Database.dbSettings:Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.maxCompactTime:I
i2l
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.compactFile:(J)V
35: goto 40
StackMap locals: org.h2.engine.Database int org.h2.mvstore.MVStore int
StackMap stack: java.lang.Throwable
36: astore 4
start local 4 37: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
aload 4
ldc "compactFile"
invokevirtual org.h2.message.Trace.error:(Ljava/lang/Throwable;Ljava/lang/String;)V
end local 4 38: goto 40
39: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.h2.mvstore.MVStore.commit:()J
pop2
40: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
iload 3
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.close:(Z)V
end local 3 end local 2 41: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
ifnull 44
42: aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
invokevirtual org.h2.engine.Session.close:()V
43: aload 0
aconst_null
putfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
44: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.lobSession:Lorg/h2/engine/Session;
ifnull 47
45: aload 0
getfield org.h2.engine.Database.lobSession:Lorg/h2/engine/Session;
invokevirtual org.h2.engine.Session.close:()V
46: aload 0
aconst_null
putfield org.h2.engine.Database.lobSession:Lorg/h2/engine/Session;
47: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.engine.Database.closeFiles:()V
48: aload 0
getfield org.h2.engine.Database.persistent:Z
ifeq 63
aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
ifnonnull 63
49: aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.NO:Lorg/h2/store/FileLockMethod;
if_acmpeq 63
50: aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.FS:Lorg/h2/store/FileLockMethod;
if_acmpeq 63
51: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
ifnull 62
52: aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.SERIALIZED:Lorg/h2/store/FileLockMethod;
if_acmpne 60
53: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
invokevirtual org.h2.store.FileLock.load:()Ljava/util/Properties;
ldc "changePending"
invokevirtual java.util.Properties.containsKey:(Ljava/lang/Object;)Z
ifeq 60
54: getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
55: aload 0
getfield org.h2.engine.Database.reconnectCheckDelayNs:J
l2d
ldc 1.1
dmul
d2l
invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
56: invokestatic java.lang.Thread.sleep:(J)V
57: goto 60
StackMap locals:
StackMap stack: java.lang.InterruptedException
58: astore 6
start local 6 59: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
aload 6
ldc "close"
invokevirtual org.h2.message.Trace.error:(Ljava/lang/Throwable;Ljava/lang/String;)V
end local 6 60: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
invokevirtual org.h2.store.FileLock.unlock:()V
61: aload 0
aconst_null
putfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
62: StackMap locals:
StackMap stack:
return
63: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.persistent:Z
ifeq 79
64: aload 0
invokevirtual org.h2.engine.Database.deleteOldTempFiles:()V
65: goto 79
StackMap locals:
StackMap stack: java.lang.Throwable
66: astore 5
67: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
ifnull 78
68: aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.SERIALIZED:Lorg/h2/store/FileLockMethod;
if_acmpne 76
69: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
invokevirtual org.h2.store.FileLock.load:()Ljava/util/Properties;
ldc "changePending"
invokevirtual java.util.Properties.containsKey:(Ljava/lang/Object;)Z
ifeq 76
70: getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
71: aload 0
getfield org.h2.engine.Database.reconnectCheckDelayNs:J
l2d
ldc 1.1
dmul
d2l
invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
72: invokestatic java.lang.Thread.sleep:(J)V
73: goto 76
StackMap locals: org.h2.engine.Database int top top top java.lang.Throwable
StackMap stack: java.lang.InterruptedException
74: astore 6
start local 6 75: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
aload 6
ldc "close"
invokevirtual org.h2.message.Trace.error:(Ljava/lang/Throwable;Ljava/lang/String;)V
end local 6 76: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
invokevirtual org.h2.store.FileLock.unlock:()V
77: aload 0
aconst_null
putfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
78: StackMap locals:
StackMap stack:
aload 5
athrow
79: StackMap locals: org.h2.engine.Database int
StackMap stack:
aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
ifnull 90
80: aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.SERIALIZED:Lorg/h2/store/FileLockMethod;
if_acmpne 88
81: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
invokevirtual org.h2.store.FileLock.load:()Ljava/util/Properties;
ldc "changePending"
invokevirtual java.util.Properties.containsKey:(Ljava/lang/Object;)Z
ifeq 88
82: getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
83: aload 0
getfield org.h2.engine.Database.reconnectCheckDelayNs:J
l2d
ldc 1.1
dmul
d2l
invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
84: invokestatic java.lang.Thread.sleep:(J)V
85: goto 88
StackMap locals:
StackMap stack: java.lang.InterruptedException
86: astore 6
start local 6 87: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
aload 6
ldc "close"
invokevirtual org.h2.message.Trace.error:(Ljava/lang/Throwable;Ljava/lang/String;)V
end local 6 88: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
invokevirtual org.h2.store.FileLock.unlock:()V
89: aload 0
aconst_null
putfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
90: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 91 0 this Lorg/h2/engine/Database;
0 91 1 flush Z
10 17 2 e Lorg/h2/message/DbException;
12 16 3 code I
19 22 2 t Ljava/lang/Throwable;
25 41 2 mvStore Lorg/h2/mvstore/MVStore;
32 41 3 compactFully Z
37 38 4 t Ljava/lang/Throwable;
59 60 6 e Ljava/lang/InterruptedException;
75 76 6 e Ljava/lang/InterruptedException;
87 88 6 e Ljava/lang/InterruptedException;
Exception table:
from to target type
3 8 9 Class org.h2.message.DbException
3 8 18 Class java.lang.Throwable
34 35 36 Class java.lang.Throwable
54 57 58 Class java.lang.InterruptedException
0 51 66 any
63 66 66 any
70 73 74 Class java.lang.InterruptedException
82 85 86 Class java.lang.InterruptedException
MethodParameters:
Name Flags
flush
private synchronized void closeFiles();
descriptor: ()V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 2
1: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.closeImmediately:()V
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
ifnull 8
3: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
invokevirtual org.h2.store.PageStore.close:()V
4: aload 0
aconst_null
putfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
5: goto 8
StackMap locals:
StackMap stack: org.h2.message.DbException
6: astore 1
start local 1 7: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
aload 1
ldc "close"
invokevirtual org.h2.message.Trace.error:(Ljava/lang/Throwable;Ljava/lang/String;)V
end local 1 8: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/h2/engine/Database;
7 8 1 e Lorg/h2/message/DbException;
Exception table:
from to target type
0 5 6 Class org.h2.message.DbException
private void checkMetaFree(org.h2.engine.Session, int);
descriptor: (Lorg/h2/engine/Session;I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
iconst_0
invokevirtual org.h2.table.Table.getTemplateSimpleRow:(Z)Lorg/h2/result/SearchRow;
astore 3
start local 3 1: aload 3
iconst_0
iload 2
invokestatic org.h2.value.ValueInt.get:(I)Lorg/h2/value/ValueInt;
invokeinterface org.h2.result.SearchRow.setValue:(ILorg/h2/value/Value;)V
2: aload 0
getfield org.h2.engine.Database.metaIdIndex:Lorg/h2/index/Index;
aload 1
aload 3
aload 3
invokeinterface org.h2.index.Index.find:(Lorg/h2/engine/Session;Lorg/h2/result/SearchRow;Lorg/h2/result/SearchRow;)Lorg/h2/index/Cursor;
astore 4
start local 4 3: aload 4
invokeinterface org.h2.index.Cursor.next:()Z
ifeq 5
4: invokestatic org.h2.message.DbException.throwInternalError:()Ljava/lang/RuntimeException;
pop
5: StackMap locals: org.h2.result.SearchRow org.h2.index.Cursor
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/h2/engine/Database;
0 6 1 session Lorg/h2/engine/Session;
0 6 2 id I
1 6 3 r Lorg/h2/result/SearchRow;
3 6 4 cursor Lorg/h2/index/Cursor;
MethodParameters:
Name Flags
session
id
public int allocateObjectId();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual org.h2.engine.Database.isMVStore:()Z
ifeq 1
aload 0
getfield org.h2.engine.Database.objectIds:Ljava/util/BitSet;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
StackMap locals:
StackMap stack: java.lang.Object
2: astore 1
start local 1 3: aload 1
dup
astore 3
monitorenter
4: aload 0
getfield org.h2.engine.Database.objectIds:Ljava/util/BitSet;
iconst_0
invokevirtual java.util.BitSet.nextClearBit:(I)I
istore 2
start local 2 5: aload 0
getfield org.h2.engine.Database.objectIds:Ljava/util/BitSet;
iload 2
invokevirtual java.util.BitSet.set:(I)V
6: aload 3
monitorexit
7: goto 10
end local 2 StackMap locals: org.h2.engine.Database java.lang.Object top java.lang.Object
StackMap stack: java.lang.Throwable
8: aload 3
monitorexit
9: athrow
start local 2 10: StackMap locals: org.h2.engine.Database java.lang.Object int
StackMap stack:
iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/h2/engine/Database;
3 11 1 lock Ljava/lang/Object;
5 8 2 i I
10 11 2 i I
Exception table:
from to target type
4 7 8 any
8 9 8 any
public org.h2.schema.Schema getMainSchema();
descriptor: ()Lorg/h2/schema/Schema;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.mainSchema:Lorg/h2/schema/Schema;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public java.util.ArrayList<org.h2.engine.UserAggregate> getAllAggregates();
descriptor: ()Ljava/util/ArrayList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.util.ArrayList
dup
aload 0
getfield org.h2.engine.Database.aggregates: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 1 0 this Lorg/h2/engine/Database;
Signature: ()Ljava/util/ArrayList<Lorg/h2/engine/UserAggregate;>;
public java.util.ArrayList<org.h2.engine.Comment> getAllComments();
descriptor: ()Ljava/util/ArrayList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.util.ArrayList
dup
aload 0
getfield org.h2.engine.Database.comments: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 1 0 this Lorg/h2/engine/Database;
Signature: ()Ljava/util/ArrayList<Lorg/h2/engine/Comment;>;
public int getAllowLiterals();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.starting:Z
ifeq 2
1: iconst_2
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.allowLiterals:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Database;
public java.util.ArrayList<org.h2.engine.Right> getAllRights();
descriptor: ()Ljava/util/ArrayList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.util.ArrayList
dup
aload 0
getfield org.h2.engine.Database.rights: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 1 0 this Lorg/h2/engine/Database;
Signature: ()Ljava/util/ArrayList<Lorg/h2/engine/Right;>;
public java.util.ArrayList<org.h2.engine.Role> getAllRoles();
descriptor: ()Ljava/util/ArrayList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.util.ArrayList
dup
aload 0
getfield org.h2.engine.Database.roles: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 1 0 this Lorg/h2/engine/Database;
Signature: ()Ljava/util/ArrayList<Lorg/h2/engine/Role;>;
public java.util.ArrayList<org.h2.schema.SchemaObject> getAllSchemaObjects();
descriptor: ()Ljava/util/ArrayList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual org.h2.engine.Database.initMetaTables:()V
1: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 1
start local 1 2: aload 0
getfield org.h2.engine.Database.schemas:Ljava/util/HashMap;
invokevirtual java.util.HashMap.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 3
goto 5
StackMap locals: org.h2.engine.Database java.util.ArrayList top java.util.Iterator
StackMap stack:
3: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.schema.Schema
astore 2
start local 2 4: aload 2
aload 1
invokevirtual org.h2.schema.Schema.getAll:(Ljava/util/ArrayList;)Ljava/util/ArrayList;
pop
end local 2 5: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
6: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/h2/engine/Database;
2 7 1 list Ljava/util/ArrayList<Lorg/h2/schema/SchemaObject;>;
4 5 2 schema Lorg/h2/schema/Schema;
Signature: ()Ljava/util/ArrayList<Lorg/h2/schema/SchemaObject;>;
public java.util.ArrayList<org.h2.schema.SchemaObject> getAllSchemaObjects(int);
descriptor: (I)Ljava/util/ArrayList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: iload 1
ifne 2
1: aload 0
invokevirtual org.h2.engine.Database.initMetaTables:()V
2: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 3: aload 0
getfield org.h2.engine.Database.schemas:Ljava/util/HashMap;
invokevirtual java.util.HashMap.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 4
goto 6
StackMap locals: org.h2.engine.Database int java.util.ArrayList top java.util.Iterator
StackMap stack:
4: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.schema.Schema
astore 3
start local 3 5: aload 3
iload 1
aload 2
invokevirtual org.h2.schema.Schema.getAll:(ILjava/util/ArrayList;)Ljava/util/ArrayList;
pop
end local 3 6: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
7: 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/Database;
0 8 1 type I
3 8 2 list Ljava/util/ArrayList<Lorg/h2/schema/SchemaObject;>;
5 6 3 schema Lorg/h2/schema/Schema;
Signature: (I)Ljava/util/ArrayList<Lorg/h2/schema/SchemaObject;>;
MethodParameters:
Name Flags
type
public java.util.ArrayList<org.h2.table.Table> getAllTablesAndViews(boolean);
descriptor: (Z)Ljava/util/ArrayList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: iload 1
ifeq 2
1: aload 0
invokevirtual org.h2.engine.Database.initMetaTables:()V
2: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 3: aload 0
getfield org.h2.engine.Database.schemas:Ljava/util/HashMap;
invokevirtual java.util.HashMap.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 4
goto 6
StackMap locals: org.h2.engine.Database int java.util.ArrayList top java.util.Iterator
StackMap stack:
4: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.schema.Schema
astore 3
start local 3 5: aload 2
aload 3
invokevirtual org.h2.schema.Schema.getAllTablesAndViews:()Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
pop
end local 3 6: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
7: 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/Database;
0 8 1 includeMeta Z
3 8 2 list Ljava/util/ArrayList<Lorg/h2/table/Table;>;
5 6 3 schema Lorg/h2/schema/Schema;
Signature: (Z)Ljava/util/ArrayList<Lorg/h2/table/Table;>;
MethodParameters:
Name Flags
includeMeta
public java.util.ArrayList<org.h2.table.TableSynonym> getAllSynonyms();
descriptor: ()Ljava/util/ArrayList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 1
start local 1 1: aload 0
getfield org.h2.engine.Database.schemas:Ljava/util/HashMap;
invokevirtual java.util.HashMap.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 3
goto 4
StackMap locals: org.h2.engine.Database java.util.ArrayList top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.schema.Schema
astore 2
start local 2 3: aload 1
aload 2
invokevirtual org.h2.schema.Schema.getAllSynonyms:()Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
pop
end local 2 4: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/h2/engine/Database;
1 6 1 list Ljava/util/ArrayList<Lorg/h2/table/TableSynonym;>;
3 4 2 schema Lorg/h2/schema/Schema;
Signature: ()Ljava/util/ArrayList<Lorg/h2/table/TableSynonym;>;
public java.util.ArrayList<org.h2.table.Table> getTableOrViewByName(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/util/ArrayList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: new java.util.ArrayList
dup
iconst_1
invokespecial java.util.ArrayList.<init>:(I)V
astore 2
start local 2 1: aload 0
getfield org.h2.engine.Database.schemas:Ljava/util/HashMap;
invokevirtual java.util.HashMap.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 4
goto 6
StackMap locals: org.h2.engine.Database java.lang.String java.util.ArrayList top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.schema.Schema
astore 3
start local 3 3: aload 3
aload 1
invokevirtual org.h2.schema.Schema.getTableOrViewByName:(Ljava/lang/String;)Lorg/h2/table/Table;
astore 5
start local 5 4: aload 5
ifnull 6
5: aload 2
aload 5
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 5 end local 3 6: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
7: 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/Database;
0 8 1 name Ljava/lang/String;
1 8 2 list Ljava/util/ArrayList<Lorg/h2/table/Table;>;
3 6 3 schema Lorg/h2/schema/Schema;
4 6 5 table Lorg/h2/table/Table;
Signature: (Ljava/lang/String;)Ljava/util/ArrayList<Lorg/h2/table/Table;>;
MethodParameters:
Name Flags
name
public java.util.ArrayList<org.h2.schema.Schema> getAllSchemas();
descriptor: ()Ljava/util/ArrayList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.h2.engine.Database.initMetaTables:()V
1: new java.util.ArrayList
dup
aload 0
getfield org.h2.engine.Database.schemas: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 2 0 this Lorg/h2/engine/Database;
Signature: ()Ljava/util/ArrayList<Lorg/h2/schema/Schema;>;
public java.util.ArrayList<org.h2.engine.Setting> getAllSettings();
descriptor: ()Ljava/util/ArrayList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.util.ArrayList
dup
aload 0
getfield org.h2.engine.Database.settings: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 1 0 this Lorg/h2/engine/Database;
Signature: ()Ljava/util/ArrayList<Lorg/h2/engine/Setting;>;
public java.util.ArrayList<org.h2.engine.Domain> getAllDomains();
descriptor: ()Ljava/util/ArrayList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.util.ArrayList
dup
aload 0
getfield org.h2.engine.Database.domains: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 1 0 this Lorg/h2/engine/Database;
Signature: ()Ljava/util/ArrayList<Lorg/h2/engine/Domain;>;
public java.util.ArrayList<org.h2.engine.User> getAllUsers();
descriptor: ()Ljava/util/ArrayList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.util.ArrayList
dup
aload 0
getfield org.h2.engine.Database.users: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 1 0 this Lorg/h2/engine/Database;
Signature: ()Ljava/util/ArrayList<Lorg/h2/engine/User;>;
public java.lang.String getCacheType();
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.Database.cacheType:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public java.lang.String getCluster();
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.Database.cluster:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public org.h2.value.CompareMode getCompareMode();
descriptor: ()Lorg/h2/value/CompareMode;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.compareMode:Lorg/h2/value/CompareMode;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public java.lang.String getDatabasePath();
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.Database.persistent:Z
ifeq 2
1: aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokestatic org.h2.store.fs.FileUtils.toRealPath:(Ljava/lang/String;)Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Database;
public java.lang.String getShortName();
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.Database.databaseShortName:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public java.lang.String getName();
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.Database.databaseName:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public org.h2.engine.Session[] getSessions(boolean);
descriptor: (Z)[Lorg/h2/engine/Session;
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.Database.userSessions:Ljava/util/Set;
dup
astore 3
monitorenter
1: new java.util.ArrayList
dup
aload 0
getfield org.h2.engine.Database.userSessions:Ljava/util/Set;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 2
start local 2 2: aload 3
monitorexit
3: goto 6
end local 2 StackMap locals: org.h2.engine.Database int top java.util.Set
StackMap stack: java.lang.Throwable
4: aload 3
monitorexit
5: athrow
start local 2 6: StackMap locals: org.h2.engine.Database int java.util.ArrayList
StackMap stack:
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
astore 3
start local 3 7: aload 0
getfield org.h2.engine.Database.lobSession:Lorg/h2/engine/Session;
astore 4
start local 4 8: iload 1
ifeq 10
aload 3
ifnull 10
9: aload 2
aload 3
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
10: StackMap locals: org.h2.engine.Session org.h2.engine.Session
StackMap stack:
iload 1
ifeq 12
aload 4
ifnull 12
11: aload 2
aload 4
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
12: StackMap locals:
StackMap stack:
aload 2
iconst_0
anewarray org.h2.engine.Session
invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast org.h2.engine.Session[]
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/h2/engine/Database;
0 13 1 includingSystemSession Z
2 4 2 list Ljava/util/ArrayList<Lorg/h2/engine/Session;>;
6 13 2 list Ljava/util/ArrayList<Lorg/h2/engine/Session;>;
7 13 3 sys Lorg/h2/engine/Session;
8 13 4 lob Lorg/h2/engine/Session;
Exception table:
from to target type
1 3 4 any
4 5 4 any
MethodParameters:
Name Flags
includingSystemSession
public void updateMeta(org.h2.engine.Session, org.h2.engine.DbObject);
descriptor: (Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.h2.engine.Database.isMVStore:()Z
ifeq 15
1: aload 2
invokeinterface org.h2.engine.DbObject.getId:()I
istore 3
start local 3 2: iload 3
ifle 28
3: aload 0
getfield org.h2.engine.Database.starting:Z
ifne 9
aload 2
invokeinterface org.h2.engine.DbObject.isTemporary:()Z
ifne 9
4: aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
invokevirtual org.h2.table.Table.getTemplateRow:()Lorg/h2/result/Row;
astore 4
start local 4 5: aload 2
aload 4
invokestatic org.h2.engine.MetaRecord.populateRowFromDBObject:(Lorg/h2/engine/DbObject;Lorg/h2/result/SearchRow;)V
6: aload 0
getfield org.h2.engine.Database.metaIdIndex:Lorg/h2/index/Index;
aload 1
iload 3
i2l
invokeinterface org.h2.index.Index.getRow:(Lorg/h2/engine/Session;J)Lorg/h2/result/Row;
astore 5
start local 5 7: aload 5
ifnull 9
8: aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
aload 1
aload 5
aload 4
invokevirtual org.h2.table.Table.updateRow:(Lorg/h2/engine/Session;Lorg/h2/result/Row;Lorg/h2/result/Row;)V
end local 5 end local 4 9: StackMap locals: int
StackMap stack:
aload 0
getfield org.h2.engine.Database.objectIds:Ljava/util/BitSet;
dup
astore 4
monitorenter
10: aload 0
getfield org.h2.engine.Database.objectIds:Ljava/util/BitSet;
iload 3
invokevirtual java.util.BitSet.set:(I)V
11: aload 4
monitorexit
12: goto 28
StackMap locals: org.h2.engine.Database org.h2.engine.Session org.h2.engine.DbObject int java.util.BitSet
StackMap stack: java.lang.Throwable
13: aload 4
monitorexit
14: athrow
end local 3 15: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.h2.engine.Database.lockMeta:(Lorg/h2/engine/Session;)Z
istore 3
start local 3 16: aload 0
dup
astore 4
monitorenter
17: aload 2
invokeinterface org.h2.engine.DbObject.getId:()I
istore 5
start local 5 18: aload 0
aload 1
iload 5
invokevirtual org.h2.engine.Database.removeMeta:(Lorg/h2/engine/Session;I)V
19: aload 0
aload 1
aload 2
invokevirtual org.h2.engine.Database.addMeta:(Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
20: iload 5
ifle 22
21: aload 0
getfield org.h2.engine.Database.objectIds:Ljava/util/BitSet;
iload 5
invokevirtual java.util.BitSet.set:(I)V
end local 5 22: StackMap locals: int org.h2.engine.Database
StackMap stack:
aload 4
monitorexit
23: goto 26
StackMap locals:
StackMap stack: java.lang.Throwable
24: aload 4
monitorexit
25: athrow
26: StackMap locals:
StackMap stack:
iload 3
ifne 28
27: aload 0
aload 1
invokevirtual org.h2.engine.Database.unlockMeta:(Lorg/h2/engine/Session;)V
end local 3 28: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lorg/h2/engine/Database;
0 29 1 session Lorg/h2/engine/Session;
0 29 2 obj Lorg/h2/engine/DbObject;
2 15 3 id I
5 9 4 newRow Lorg/h2/result/Row;
7 9 5 oldRow Lorg/h2/result/Row;
16 28 3 metaWasLocked Z
18 22 5 id I
Exception table:
from to target type
10 12 13 any
13 14 13 any
17 23 24 any
24 25 24 any
MethodParameters:
Name Flags
session
obj
public synchronized void renameSchemaObject(org.h2.engine.Session, org.h2.schema.SchemaObject, java.lang.String);
descriptor: (Lorg/h2/engine/Session;Lorg/h2/schema/SchemaObject;Ljava/lang/String;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual org.h2.engine.Database.checkWritingAllowed:()V
1: aload 2
invokeinterface org.h2.schema.SchemaObject.getSchema:()Lorg/h2/schema/Schema;
aload 2
aload 3
invokevirtual org.h2.schema.Schema.rename:(Lorg/h2/schema/SchemaObject;Ljava/lang/String;)V
2: aload 0
aload 1
aload 2
invokevirtual org.h2.engine.Database.updateMetaAndFirstLevelChildren:(Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
3: return
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/Database;
0 4 1 session Lorg/h2/engine/Session;
0 4 2 obj Lorg/h2/schema/SchemaObject;
0 4 3 newName Ljava/lang/String;
MethodParameters:
Name Flags
session
obj
newName
private synchronized void updateMetaAndFirstLevelChildren(org.h2.engine.Session, org.h2.engine.DbObject);
descriptor: (Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=3, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface org.h2.engine.DbObject.getChildren:()Ljava/util/ArrayList;
astore 3
start local 3 1: aload 0
aload 2
invokevirtual org.h2.engine.Database.findComment:(Lorg/h2/engine/DbObject;)Lorg/h2/engine/Comment;
astore 4
start local 4 2: aload 4
ifnull 4
3: aload 4
invokevirtual org.h2.engine.Comment.toString:()Ljava/lang/String;
invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
pop
4: StackMap locals: java.util.ArrayList org.h2.engine.Comment
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual org.h2.engine.Database.updateMeta:(Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
5: aload 3
ifnull 11
6: aload 3
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 6
goto 10
StackMap locals: org.h2.engine.Database org.h2.engine.Session org.h2.engine.DbObject java.util.ArrayList org.h2.engine.Comment top java.util.Iterator
StackMap stack:
7: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.engine.DbObject
astore 5
start local 5 8: aload 5
invokeinterface org.h2.engine.DbObject.getCreateSQL:()Ljava/lang/String;
ifnull 10
9: aload 0
aload 1
aload 5
invokevirtual org.h2.engine.Database.updateMeta:(Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
end local 5 10: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
11: StackMap locals: org.h2.engine.Database org.h2.engine.Session org.h2.engine.DbObject java.util.ArrayList org.h2.engine.Comment
StackMap stack:
return
end local 4 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/Database;
0 12 1 session Lorg/h2/engine/Session;
0 12 2 obj Lorg/h2/engine/DbObject;
1 12 3 list Ljava/util/ArrayList<Lorg/h2/engine/DbObject;>;
2 12 4 comment Lorg/h2/engine/Comment;
8 10 5 o Lorg/h2/engine/DbObject;
MethodParameters:
Name Flags
session
obj
public synchronized void renameDatabaseObject(org.h2.engine.Session, org.h2.engine.DbObject, java.lang.String);
descriptor: (Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;Ljava/lang/String;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual org.h2.engine.Database.checkWritingAllowed:()V
1: aload 2
invokeinterface org.h2.engine.DbObject.getType:()I
istore 4
start local 4 2: aload 0
iload 4
invokevirtual org.h2.engine.Database.getMap:(I)Ljava/util/HashMap;
astore 5
start local 5 3: getstatic org.h2.engine.SysProperties.CHECK:Z
ifeq 8
4: aload 5
aload 2
invokeinterface org.h2.engine.DbObject.getName:()Ljava/lang/String;
invokevirtual java.util.HashMap.containsKey:(Ljava/lang/Object;)Z
ifne 6
5: new java.lang.StringBuilder
dup
ldc "not found: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokeinterface org.h2.engine.DbObject.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
pop
6: StackMap locals: int java.util.HashMap
StackMap stack:
aload 2
invokeinterface org.h2.engine.DbObject.getName:()Ljava/lang/String;
aload 3
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 7
aload 5
aload 3
invokevirtual java.util.HashMap.containsKey:(Ljava/lang/Object;)Z
ifeq 8
7: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "object already exists: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
pop
8: StackMap locals:
StackMap stack:
aload 2
invokeinterface org.h2.engine.DbObject.checkRename:()V
9: aload 5
aload 2
invokeinterface org.h2.engine.DbObject.getName:()Ljava/lang/String;
invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
10: aload 2
aload 3
invokeinterface org.h2.engine.DbObject.rename:(Ljava/lang/String;)V
11: aload 5
aload 3
aload 2
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
12: aload 0
aload 1
aload 2
invokevirtual org.h2.engine.Database.updateMetaAndFirstLevelChildren:(Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
13: 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 14 0 this Lorg/h2/engine/Database;
0 14 1 session Lorg/h2/engine/Session;
0 14 2 obj Lorg/h2/engine/DbObject;
0 14 3 newName Ljava/lang/String;
2 14 4 type I
3 14 5 map Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/engine/DbObject;>;
MethodParameters:
Name Flags
session
obj
newName
public java.lang.String createTempFile();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.readOnly:Z
istore 1
start local 1 1: aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
astore 2
start local 2 2: aload 0
getfield org.h2.engine.Database.persistent:Z
ifne 4
3: new java.lang.StringBuilder
dup
ldc "memFS:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 2
4: StackMap locals: int java.lang.String
StackMap stack:
aload 2
ldc ".temp.db"
iload 1
invokestatic org.h2.store.fs.FileUtils.createTempFile:(Ljava/lang/String;Ljava/lang/String;Z)Ljava/lang/String;
5: areturn
end local 2 end local 1 6: StackMap locals: org.h2.engine.Database
StackMap stack: java.io.IOException
astore 1
start local 1 7: aload 1
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokestatic org.h2.message.DbException.convertIOException:(Ljava/io/IOException;Ljava/lang/String;)Lorg/h2/message/DbException;
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/h2/engine/Database;
1 6 1 inTempDir Z
2 6 2 name Ljava/lang/String;
7 8 1 e Ljava/io/IOException;
Exception table:
from to target type
0 5 6 Class java.io.IOException
private void deleteOldTempFiles();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokestatic org.h2.store.fs.FileUtils.getParent:(Ljava/lang/String;)Ljava/lang/String;
astore 1
start local 1 1: aload 1
invokestatic org.h2.store.fs.FileUtils.newDirectoryStream:(Ljava/lang/String;)Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 6
StackMap locals: org.h2.engine.Database java.lang.String top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 2
start local 2 3: aload 2
ldc ".temp.db"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 6
4: aload 2
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 6
5: aload 2
invokestatic org.h2.store.fs.FileUtils.tryDelete:(Ljava/lang/String;)Z
pop
end local 2 6: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/h2/engine/Database;
1 8 1 path Ljava/lang/String;
3 6 2 name Ljava/lang/String;
public org.h2.schema.Schema getSchema(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/h2/schema/Schema;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.h2.engine.Database.findSchema:(Ljava/lang/String;)Lorg/h2/schema/Schema;
astore 2
start local 2 1: aload 2
ifnonnull 3
2: ldc 90079
aload 1
invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
athrow
3: StackMap locals: org.h2.schema.Schema
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Database;
0 4 1 schemaName Ljava/lang/String;
1 4 2 schema Lorg/h2/schema/Schema;
MethodParameters:
Name Flags
schemaName
public synchronized void removeDatabaseObject(org.h2.engine.Session, org.h2.engine.DbObject);
descriptor: (Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.h2.engine.Database.checkWritingAllowed:()V
1: aload 2
invokeinterface org.h2.engine.DbObject.getName:()Ljava/lang/String;
astore 3
start local 3 2: aload 2
invokeinterface org.h2.engine.DbObject.getType:()I
istore 4
start local 4 3: aload 0
iload 4
invokevirtual org.h2.engine.Database.getMap:(I)Ljava/util/HashMap;
astore 5
start local 5 4: getstatic org.h2.engine.SysProperties.CHECK:Z
ifeq 6
aload 5
aload 3
invokevirtual java.util.HashMap.containsKey:(Ljava/lang/Object;)Z
ifne 6
5: new java.lang.StringBuilder
dup
ldc "not found: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
pop
6: StackMap locals: java.lang.String int java.util.HashMap
StackMap stack:
aload 0
aload 2
invokevirtual org.h2.engine.Database.findComment:(Lorg/h2/engine/DbObject;)Lorg/h2/engine/Comment;
astore 6
start local 6 7: aload 0
aload 1
invokevirtual org.h2.engine.Database.lockMeta:(Lorg/h2/engine/Session;)Z
pop
8: aload 6
ifnull 10
9: aload 0
aload 1
aload 6
invokevirtual org.h2.engine.Database.removeDatabaseObject:(Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
10: StackMap locals: org.h2.engine.Comment
StackMap stack:
aload 2
invokeinterface org.h2.engine.DbObject.getId:()I
istore 7
start local 7 11: aload 2
aload 1
invokeinterface org.h2.engine.DbObject.removeChildrenAndResources:(Lorg/h2/engine/Session;)V
12: aload 5
aload 3
invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
13: aload 0
aload 1
iload 7
invokevirtual org.h2.engine.Database.removeMeta:(Lorg/h2/engine/Session;I)V
14: return
end local 7 end local 6 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 15 0 this Lorg/h2/engine/Database;
0 15 1 session Lorg/h2/engine/Session;
0 15 2 obj Lorg/h2/engine/DbObject;
2 15 3 objName Ljava/lang/String;
3 15 4 type I
4 15 5 map Ljava/util/HashMap<Ljava/lang/String;Lorg/h2/engine/DbObject;>;
7 15 6 comment Lorg/h2/engine/Comment;
11 15 7 id I
MethodParameters:
Name Flags
session
obj
public org.h2.table.Table getDependentTable(org.h2.schema.SchemaObject, org.h2.table.Table);
descriptor: (Lorg/h2/schema/SchemaObject;Lorg/h2/table/Table;)Lorg/h2/table/Table;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface org.h2.schema.SchemaObject.getType:()I
tableswitch { // 1 - 13
1: 1
2: 1
3: 2
4: 1
5: 1
6: 2
7: 2
8: 1
9: 2
10: 2
11: 2
12: 2
13: 1
default: 2
}
1: StackMap locals:
StackMap stack:
aconst_null
areturn
2: StackMap locals:
StackMap stack:
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 3
start local 3 3: aload 0
iconst_0
invokevirtual org.h2.engine.Database.getAllTablesAndViews:(Z)Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 5
goto 13
StackMap locals: org.h2.engine.Database org.h2.schema.SchemaObject org.h2.table.Table java.util.HashSet top java.util.Iterator
StackMap stack:
4: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.table.Table
astore 4
start local 4 5: aload 2
aload 4
if_acmpne 7
6: goto 13
7: StackMap locals: org.h2.engine.Database org.h2.schema.SchemaObject org.h2.table.Table java.util.HashSet org.h2.table.Table java.util.Iterator
StackMap stack:
getstatic org.h2.table.TableType.VIEW:Lorg/h2/table/TableType;
aload 4
invokevirtual org.h2.table.Table.getTableType:()Lorg/h2/table/TableType;
if_acmpne 9
8: goto 13
9: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.util.HashSet.clear:()V
10: aload 4
aload 3
invokevirtual org.h2.table.Table.addDependencies:(Ljava/util/HashSet;)V
11: aload 3
aload 1
invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
ifeq 13
12: aload 4
areturn
end local 4 13: StackMap locals: org.h2.engine.Database org.h2.schema.SchemaObject org.h2.table.Table java.util.HashSet top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
14: aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/h2/engine/Database;
0 15 1 obj Lorg/h2/schema/SchemaObject;
0 15 2 except Lorg/h2/table/Table;
3 15 3 set Ljava/util/HashSet<Lorg/h2/engine/DbObject;>;
5 13 4 t Lorg/h2/table/Table;
MethodParameters:
Name Flags
obj
except
public void removeSchemaObject(org.h2.engine.Session, org.h2.schema.SchemaObject);
descriptor: (Lorg/h2/engine/Session;Lorg/h2/schema/SchemaObject;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface org.h2.schema.SchemaObject.getType:()I
istore 3
start local 3 1: iload 3
ifne 6
2: aload 2
checkcast org.h2.table.Table
astore 4
start local 4 3: aload 4
invokevirtual org.h2.table.Table.isTemporary:()Z
ifeq 18
aload 4
invokevirtual org.h2.table.Table.isGlobalTemporary:()Z
ifne 18
4: aload 1
aload 4
invokevirtual org.h2.engine.Session.removeLocalTempTable:(Lorg/h2/table/Table;)V
5: return
end local 4 6: StackMap locals: int
StackMap stack:
iload 3
iconst_1
if_icmpne 12
7: aload 2
checkcast org.h2.index.Index
astore 4
start local 4 8: aload 4
invokeinterface org.h2.index.Index.getTable:()Lorg/h2/table/Table;
astore 5
start local 5 9: aload 5
invokevirtual org.h2.table.Table.isTemporary:()Z
ifeq 18
aload 5
invokevirtual org.h2.table.Table.isGlobalTemporary:()Z
ifne 18
10: aload 1
aload 4
invokevirtual org.h2.engine.Session.removeLocalTempTableIndex:(Lorg/h2/index/Index;)V
11: return
end local 5 end local 4 12: StackMap locals:
StackMap stack:
iload 3
iconst_5
if_icmpne 18
13: aload 2
checkcast org.h2.constraint.Constraint
astore 4
start local 4 14: aload 4
invokevirtual org.h2.constraint.Constraint.getTable:()Lorg/h2/table/Table;
astore 5
start local 5 15: aload 5
invokevirtual org.h2.table.Table.isTemporary:()Z
ifeq 18
aload 5
invokevirtual org.h2.table.Table.isGlobalTemporary:()Z
ifne 18
16: aload 1
aload 4
invokevirtual org.h2.engine.Session.removeLocalTempTableConstraint:(Lorg/h2/constraint/Constraint;)V
17: return
end local 5 end local 4 18: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.engine.Database.checkWritingAllowed:()V
19: aload 0
aload 1
invokevirtual org.h2.engine.Database.lockMeta:(Lorg/h2/engine/Session;)Z
pop
20: aload 0
dup
astore 4
monitorenter
21: aload 0
aload 2
invokevirtual org.h2.engine.Database.findComment:(Lorg/h2/engine/DbObject;)Lorg/h2/engine/Comment;
astore 5
start local 5 22: aload 5
ifnull 24
23: aload 0
aload 1
aload 5
invokevirtual org.h2.engine.Database.removeDatabaseObject:(Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
24: StackMap locals: org.h2.engine.Database org.h2.engine.Comment
StackMap stack:
aload 2
invokeinterface org.h2.schema.SchemaObject.getSchema:()Lorg/h2/schema/Schema;
aload 2
invokevirtual org.h2.schema.Schema.remove:(Lorg/h2/schema/SchemaObject;)V
25: aload 2
invokeinterface org.h2.schema.SchemaObject.getId:()I
istore 6
start local 6 26: aload 0
getfield org.h2.engine.Database.starting:Z
ifne 32
27: aload 0
aload 2
aconst_null
invokevirtual org.h2.engine.Database.getDependentTable:(Lorg/h2/schema/SchemaObject;Lorg/h2/table/Table;)Lorg/h2/table/Table;
astore 7
start local 7 28: aload 7
ifnull 31
29: aload 2
invokeinterface org.h2.schema.SchemaObject.getSchema:()Lorg/h2/schema/Schema;
aload 2
invokevirtual org.h2.schema.Schema.add:(Lorg/h2/schema/SchemaObject;)V
30: ldc 90107
iconst_2
anewarray java.lang.String
dup
iconst_0
aload 2
iconst_0
invokeinterface org.h2.schema.SchemaObject.getSQL:(Z)Ljava/lang/String;
aastore
dup
iconst_1
aload 7
iconst_0
invokevirtual org.h2.table.Table.getSQL:(Z)Ljava/lang/String;
aastore
invokestatic org.h2.message.DbException.get:(I[Ljava/lang/String;)Lorg/h2/message/DbException;
athrow
31: StackMap locals: int org.h2.table.Table
StackMap stack:
aload 2
aload 1
invokeinterface org.h2.schema.SchemaObject.removeChildrenAndResources:(Lorg/h2/engine/Session;)V
end local 7 32: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 6
invokevirtual org.h2.engine.Database.removeMeta:(Lorg/h2/engine/Session;I)V
end local 6 end local 5 33: aload 4
monitorexit
34: goto 37
StackMap locals: org.h2.engine.Database org.h2.engine.Session org.h2.schema.SchemaObject int org.h2.engine.Database
StackMap stack: java.lang.Throwable
35: aload 4
monitorexit
36: athrow
37: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 38 0 this Lorg/h2/engine/Database;
0 38 1 session Lorg/h2/engine/Session;
0 38 2 obj Lorg/h2/schema/SchemaObject;
1 38 3 type I
3 6 4 table Lorg/h2/table/Table;
8 12 4 index Lorg/h2/index/Index;
9 12 5 table Lorg/h2/table/Table;
14 18 4 constraint Lorg/h2/constraint/Constraint;
15 18 5 table Lorg/h2/table/Table;
22 33 5 comment Lorg/h2/engine/Comment;
26 33 6 id I
28 32 7 t Lorg/h2/table/Table;
Exception table:
from to target type
21 34 35 any
35 36 35 any
MethodParameters:
Name Flags
session
obj
public boolean isPersistent();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.persistent:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public org.h2.message.TraceSystem getTraceSystem();
descriptor: ()Lorg/h2/message/TraceSystem;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.traceSystem:Lorg/h2/message/TraceSystem;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public synchronized void setCacheSize(int);
descriptor: (I)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Database.starting:Z
ifeq 3
1: invokestatic org.h2.util.Utils.getMemoryMax:()J
invokestatic org.h2.util.MathUtils.convertLongToInt:(J)I
iconst_2
idiv
istore 2
start local 2 2: iload 1
iload 2
invokestatic java.lang.Math.min:(II)I
istore 1
end local 2 3: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield org.h2.engine.Database.cacheSize:I
4: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
ifnull 6
5: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
iload 1
invokevirtual org.h2.store.PageStore.setMaxCacheMemory:(I)V
6: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 8
7: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
iconst_1
iload 1
invokestatic java.lang.Math.max:(II)I
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.setCacheSize:(I)V
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/Database;
0 9 1 kb I
2 3 2 max I
MethodParameters:
Name Flags
kb
public synchronized void setMasterUser(org.h2.engine.User);
descriptor: (Lorg/h2/engine/User;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
invokevirtual org.h2.engine.Database.lockMeta:(Lorg/h2/engine/Session;)Z
pop
1: aload 0
aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
aload 1
invokevirtual org.h2.engine.Database.addDatabaseObject:(Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
2: aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
iconst_1
invokevirtual org.h2.engine.Session.commit:(Z)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Database;
0 4 1 user Lorg/h2/engine/User;
MethodParameters:
Name Flags
user
public org.h2.engine.Role getPublicRole();
descriptor: ()Lorg/h2/engine/Role;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.publicRole:Lorg/h2/engine/Role;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public synchronized java.lang.String getTempTableName(java.lang.String, org.h2.engine.Session);
descriptor: (Ljava/lang/String;Lorg/h2/engine/Session;)Ljava/lang/String;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "_COPY_"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual org.h2.engine.Session.getId:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
1: ldc "_"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
dup
getfield org.h2.engine.Database.nextTempTableId:I
dup_x1
iconst_1
iadd
putfield org.h2.engine.Database.nextTempTableId:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
2: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
start local 3 3: aload 0
getfield org.h2.engine.Database.mainSchema:Lorg/h2/schema/Schema;
aload 2
aload 3
invokevirtual org.h2.schema.Schema.findTableOrView:(Lorg/h2/engine/Session;Ljava/lang/String;)Lorg/h2/table/Table;
ifnonnull 0
4: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/h2/engine/Database;
0 5 1 baseName Ljava/lang/String;
0 5 2 session Lorg/h2/engine/Session;
3 5 3 tempName Ljava/lang/String;
MethodParameters:
Name Flags
baseName
session
public void setCompareMode(org.h2.value.CompareMode);
descriptor: (Lorg/h2/value/CompareMode;)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.Database.compareMode:Lorg/h2/value/CompareMode;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 compareMode Lorg/h2/value/CompareMode;
MethodParameters:
Name Flags
compareMode
public void setCluster(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
aload 1
putfield org.h2.engine.Database.cluster:Ljava/lang/String;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 cluster Ljava/lang/String;
MethodParameters:
Name Flags
cluster
public void checkWritingAllowed();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.readOnly:Z
ifeq 2
1: ldc 90097
invokestatic org.h2.message.DbException.get:(I)Lorg/h2/message/DbException;
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.SERIALIZED:Lorg/h2/store/FileLockMethod;
if_acmpne 5
3: aload 0
getfield org.h2.engine.Database.reconnectChangePending:Z
ifne 5
4: ldc 90097
invokestatic org.h2.message.DbException.get:(I)Lorg/h2/message/DbException;
athrow
5: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/h2/engine/Database;
public boolean isReadOnly();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.readOnly:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void setWriteDelay(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
iload 1
putfield org.h2.engine.Database.writeDelay:I
1: aload 0
getfield org.h2.engine.Database.writer:Lorg/h2/store/WriterThread;
ifnull 6
2: aload 0
getfield org.h2.engine.Database.writer:Lorg/h2/store/WriterThread;
iload 1
invokevirtual org.h2.store.WriterThread.setWriteDelay:(I)V
3: aload 0
aload 0
getfield org.h2.engine.Database.writeDelay:I
iconst_5
if_icmpge 4
iconst_1
goto 5
StackMap locals:
StackMap stack: org.h2.engine.Database
4: iconst_0
StackMap locals: org.h2.engine.Database int
StackMap stack: org.h2.engine.Database int
5: putfield org.h2.engine.Database.flushOnEachCommit:Z
6: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 11
7: iload 1
ifge 8
iconst_0
goto 9
StackMap locals:
StackMap stack:
8: iload 1
StackMap locals:
StackMap stack: int
9: istore 2
start local 2 10: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.getMvStore:()Lorg/h2/mvstore/MVStore;
iload 2
invokevirtual org.h2.mvstore.MVStore.setAutoCommitDelay:(I)V
end local 2 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/Database;
0 12 1 value I
10 11 2 millis I
MethodParameters:
Name Flags
value
public int getRetentionTime();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.retentionTime:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void setRetentionTime(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.Database.retentionTime:I
1: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 3
2: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.getMvStore:()Lorg/h2/mvstore/MVStore;
iload 1
invokevirtual org.h2.mvstore.MVStore.setRetentionTime:(I)V
3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Database;
0 4 1 value I
MethodParameters:
Name Flags
value
public void setAllowBuiltinAliasOverride(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.Database.allowBuiltinAliasOverride:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 b Z
MethodParameters:
Name Flags
b
public boolean isAllowBuiltinAliasOverride();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.allowBuiltinAliasOverride:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public boolean getFlushOnEachCommit();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.flushOnEachCommit:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public java.util.ArrayList<org.h2.store.InDoubtTransaction> getInDoubtTransactions();
descriptor: ()Ljava/util/ArrayList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 2
1: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.getInDoubtTransactions:()Ljava/util/ArrayList;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
ifnonnull 3
aconst_null
goto 4
StackMap locals:
StackMap stack:
3: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
invokevirtual org.h2.store.PageStore.getInDoubtTransactions:()Ljava/util/ArrayList;
StackMap locals:
StackMap stack: java.util.ArrayList
4: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/h2/engine/Database;
Signature: ()Ljava/util/ArrayList<Lorg/h2/store/InDoubtTransaction;>;
synchronized void prepareCommit(org.h2.engine.Session, java.lang.String);
descriptor: (Lorg/h2/engine/Session;Ljava/lang/String;)V
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.h2.engine.Database.readOnly:Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 5
3: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
aload 1
aload 2
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.prepareCommit:(Lorg/h2/engine/Session;Ljava/lang/String;)V
4: return
5: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
ifnull 8
6: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
invokevirtual org.h2.store.PageStore.flushLog:()V
7: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
aload 1
aload 2
invokevirtual org.h2.store.PageStore.prepareCommit:(Lorg/h2/engine/Session;Ljava/lang/String;)V
8: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/h2/engine/Database;
0 9 1 session Lorg/h2/engine/Session;
0 9 2 transaction Ljava/lang/String;
MethodParameters:
Name Flags
session
transaction
synchronized void commit(org.h2.engine.Session);
descriptor: (Lorg/h2/engine/Session;)V
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.h2.engine.Database.throwLastBackgroundException:()V
1: aload 0
getfield org.h2.engine.Database.readOnly:Z
ifeq 3
2: return
3: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
ifnull 5
4: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
aload 1
invokevirtual org.h2.store.PageStore.commit:(Lorg/h2/engine/Session;)V
5: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.h2.engine.Session.setAllCommitted:()V
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/h2/engine/Database;
0 7 1 session Lorg/h2/engine/Session;
MethodParameters:
Name Flags
session
private void throwLastBackgroundException();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=2, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.backgroundException:Ljava/util/concurrent/atomic/AtomicReference;
aconst_null
invokevirtual java.util.concurrent.atomic.AtomicReference.getAndSet:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.message.DbException
astore 1
start local 1 1: aload 1
ifnull 3
2: aload 1
invokevirtual org.h2.message.DbException.getErrorCode:()I
aload 1
iconst_1
anewarray java.lang.String
dup
iconst_0
aload 1
invokevirtual org.h2.message.DbException.getMessage:()Ljava/lang/String;
aastore
invokestatic org.h2.message.DbException.get:(ILjava/lang/Throwable;[Ljava/lang/String;)Lorg/h2/message/DbException;
athrow
3: StackMap locals: org.h2.message.DbException
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Database;
1 4 1 b Lorg/h2/message/DbException;
public void setBackgroundException(org.h2.message.DbException);
descriptor: (Lorg/h2/message/DbException;)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.Database.backgroundException:Ljava/util/concurrent/atomic/AtomicReference;
aconst_null
aload 1
invokevirtual java.util.concurrent.atomic.AtomicReference.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 4
1: aload 0
invokevirtual org.h2.engine.Database.getTraceSystem:()Lorg/h2/message/TraceSystem;
astore 2
start local 2 2: aload 2
ifnull 4
3: aload 2
iconst_2
invokevirtual org.h2.message.TraceSystem.getTrace:(I)Lorg/h2/message/Trace;
aload 1
ldc "flush"
invokevirtual org.h2.message.Trace.error:(Ljava/lang/Throwable;Ljava/lang/String;)V
end local 2 4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/h2/engine/Database;
0 5 1 e Lorg/h2/message/DbException;
2 4 2 t Lorg/h2/message/TraceSystem;
MethodParameters:
Name Flags
e
public java.lang.Throwable getBackgroundException();
descriptor: ()Ljava/lang/Throwable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.getMvStore:()Lorg/h2/mvstore/MVStore;
invokevirtual org.h2.mvstore.MVStore.getPanicException:()Ljava/lang/IllegalStateException;
astore 1
start local 1 1: aload 1
ifnull 3
2: aload 1
areturn
3: StackMap locals: java.lang.IllegalStateException
StackMap stack:
aload 0
getfield org.h2.engine.Database.backgroundException:Ljava/util/concurrent/atomic/AtomicReference;
aconst_null
invokevirtual java.util.concurrent.atomic.AtomicReference.getAndSet:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Throwable
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Database;
1 4 1 exception Ljava/lang/IllegalStateException;
public synchronized void flush();
descriptor: ()V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.readOnly:Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
ifnull 4
3: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
invokevirtual org.h2.store.PageStore.flushLog:()V
4: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 10
5: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.flush:()V
6: goto 10
StackMap locals:
StackMap stack: java.lang.RuntimeException
7: astore 1
start local 1 8: aload 0
getfield org.h2.engine.Database.backgroundException:Ljava/util/concurrent/atomic/AtomicReference;
aconst_null
aload 1
invokestatic org.h2.message.DbException.convert:(Ljava/lang/Throwable;)Lorg/h2/message/DbException;
invokevirtual java.util.concurrent.atomic.AtomicReference.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
pop
9: aload 1
athrow
end local 1 10: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/h2/engine/Database;
8 10 1 e Ljava/lang/RuntimeException;
Exception table:
from to target type
5 6 7 Class java.lang.RuntimeException
public void setEventListener(org.h2.api.DatabaseEventListener);
descriptor: (Lorg/h2/api/DatabaseEventListener;)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.Database.eventListener:Lorg/h2/api/DatabaseEventListener;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 eventListener Lorg/h2/api/DatabaseEventListener;
MethodParameters:
Name Flags
eventListener
public void setEventListenerClass(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ifnull 1
aload 1
invokevirtual java.lang.String.isEmpty:()Z
ifeq 3
1: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield org.h2.engine.Database.eventListener:Lorg/h2/api/DatabaseEventListener;
2: goto 15
3: StackMap locals:
StackMap stack:
aload 0
4: aload 1
invokestatic org.h2.util.JdbcUtils.loadUserClass:(Ljava/lang/String;)Ljava/lang/Class;
iconst_0
anewarray java.lang.Class
invokevirtual java.lang.Class.getDeclaredConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
iconst_0
anewarray java.lang.Object
invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.api.DatabaseEventListener
5: putfield org.h2.engine.Database.eventListener:Lorg/h2/api/DatabaseEventListener;
6: aload 0
getfield org.h2.engine.Database.databaseURL:Ljava/lang/String;
astore 2
start local 2 7: aload 0
getfield org.h2.engine.Database.cipher:Ljava/lang/String;
ifnull 9
8: new java.lang.StringBuilder
dup
aload 2
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ";CIPHER="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.h2.engine.Database.cipher:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 2
9: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield org.h2.engine.Database.eventListener:Lorg/h2/api/DatabaseEventListener;
aload 2
invokeinterface org.h2.api.DatabaseEventListener.init:(Ljava/lang/String;)V
end local 2 10: goto 15
StackMap locals: org.h2.engine.Database java.lang.String
StackMap stack: java.lang.Throwable
11: astore 2
start local 2 12: ldc 90099
aload 2
iconst_2
anewarray java.lang.String
dup
iconst_0
13: aload 1
aastore
dup
iconst_1
aload 2
invokevirtual java.lang.Throwable.toString:()Ljava/lang/String;
aastore
14: invokestatic org.h2.message.DbException.get:(ILjava/lang/Throwable;[Ljava/lang/String;)Lorg/h2/message/DbException;
athrow
end local 2 15: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/h2/engine/Database;
0 16 1 className Ljava/lang/String;
7 10 2 url Ljava/lang/String;
12 15 2 e Ljava/lang/Throwable;
Exception table:
from to target type
3 10 11 Class java.lang.Throwable
MethodParameters:
Name Flags
className
public void setProgress(int, java.lang.String, int, int);
descriptor: (ILjava/lang/String;II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, 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.Database.eventListener:Lorg/h2/api/DatabaseEventListener;
ifnull 4
1: aload 0
getfield org.h2.engine.Database.eventListener:Lorg/h2/api/DatabaseEventListener;
iload 1
aload 2
iload 3
iload 4
invokeinterface org.h2.api.DatabaseEventListener.setProgress:(ILjava/lang/String;II)V
2: goto 4
StackMap locals:
StackMap stack: java.lang.Exception
3: pop
4: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/h2/engine/Database;
0 5 1 state I
0 5 2 name Ljava/lang/String;
0 5 3 x I
0 5 4 max I
Exception table:
from to target type
1 2 3 Class java.lang.Exception
MethodParameters:
Name Flags
state
name
x
max
public void exceptionThrown(java.sql.SQLException, java.lang.String);
descriptor: (Ljava/sql/SQLException;Ljava/lang/String;)V
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.Database.eventListener:Lorg/h2/api/DatabaseEventListener;
ifnull 4
1: aload 0
getfield org.h2.engine.Database.eventListener:Lorg/h2/api/DatabaseEventListener;
aload 1
aload 2
invokeinterface org.h2.api.DatabaseEventListener.exceptionThrown:(Ljava/sql/SQLException;Ljava/lang/String;)V
2: goto 4
StackMap locals:
StackMap stack: java.lang.Exception
3: pop
4: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/h2/engine/Database;
0 5 1 e Ljava/sql/SQLException;
0 5 2 sql Ljava/lang/String;
Exception table:
from to target type
1 2 3 Class java.lang.Exception
MethodParameters:
Name Flags
e
sql
public synchronized void sync();
descriptor: ()V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.readOnly:Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 4
3: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.sync:()V
4: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
ifnull 6
5: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
invokevirtual org.h2.store.PageStore.sync:()V
6: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/h2/engine/Database;
public int getMaxMemoryRows();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.maxMemoryRows:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void setMaxMemoryRows(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.Database.maxMemoryRows:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 value I
MethodParameters:
Name Flags
value
public void setMaxMemoryUndo(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.Database.maxMemoryUndo:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 value I
MethodParameters:
Name Flags
value
public int getMaxMemoryUndo();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.maxMemoryUndo:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void setLockMode(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
tableswitch { // 0 - 3
0: 1
1: 5
2: 5
3: 5
default: 6
}
1: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.multiThreaded:Z
ifeq 7
aload 0
invokevirtual org.h2.engine.Database.isMVStore:()Z
ifne 7
2: ldc 90021
3: ldc "MV_STORE=FALSE & LOCK_MODE=0 & MULTI_THREADED=TRUE"
4: invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
athrow
5: StackMap locals:
StackMap stack:
goto 7
6: StackMap locals:
StackMap stack:
ldc "lock mode"
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokestatic org.h2.message.DbException.getInvalidValueException:(Ljava/lang/String;Ljava/lang/Object;)Lorg/h2/message/DbException;
athrow
7: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield org.h2.engine.Database.lockMode:I
8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/h2/engine/Database;
0 9 1 lockMode I
MethodParameters:
Name Flags
lockMode
public int getLockMode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.lockMode:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void setCloseDelay(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.Database.closeDelay:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 value I
MethodParameters:
Name Flags
value
public org.h2.engine.Session getSystemSession();
descriptor: ()Lorg/h2/engine/Session;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public boolean isClosing();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.closing:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void setMaxLengthInplaceLob(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.Database.maxLengthInplaceLob:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 value I
MethodParameters:
Name Flags
value
public int getMaxLengthInplaceLob();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.maxLengthInplaceLob:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void setIgnoreCase(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.Database.ignoreCase:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 b Z
MethodParameters:
Name Flags
b
public boolean getIgnoreCase();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.starting:Z
ifeq 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.ignoreCase:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Database;
public synchronized void setDeleteFilesOnDisconnect(boolean);
descriptor: (Z)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.h2.engine.Database.deleteFilesOnDisconnect:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 b Z
MethodParameters:
Name Flags
b
public java.lang.String getLobCompressionAlgorithm(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Database.lobCompressionAlgorithm:Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
0 1 1 type I
MethodParameters:
Name Flags
type
public void setLobCompressionAlgorithm(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
aload 1
putfield org.h2.engine.Database.lobCompressionAlgorithm:Ljava/lang/String;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 stringValue Ljava/lang/String;
MethodParameters:
Name Flags
stringValue
public synchronized void setMaxLogSize(long);
descriptor: (J)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
ifnull 2
1: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
lload 1
invokevirtual org.h2.store.PageStore.setMaxLogSize:(J)V
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/Database;
0 3 1 value J
MethodParameters:
Name Flags
value
public void setAllowLiterals(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.Database.allowLiterals:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 value I
MethodParameters:
Name Flags
value
public boolean getOptimizeReuseResults();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.optimizeReuseResults:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void setOptimizeReuseResults(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.Database.optimizeReuseResults:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 b Z
MethodParameters:
Name Flags
b
public java.lang.Object getLobSyncObject();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.lobSyncObject:Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public int getSessionCount();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.userSessions:Ljava/util/Set;
invokeinterface java.util.Set.size:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void setReferentialIntegrity(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.Database.referentialIntegrity:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 b Z
MethodParameters:
Name Flags
b
public boolean getReferentialIntegrity();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.referentialIntegrity:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void setQueryStatistics(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.h2.engine.Database.queryStatistics:Z
1: aload 0
dup
astore 2
monitorenter
2: iload 1
ifne 4
3: aload 0
aconst_null
putfield org.h2.engine.Database.queryStatisticsData:Lorg/h2/engine/QueryStatisticsData;
4: StackMap locals: org.h2.engine.Database
StackMap stack:
aload 2
monitorexit
5: goto 8
StackMap locals:
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/Database;
0 9 1 b Z
Exception table:
from to target type
2 5 6 any
6 7 6 any
MethodParameters:
Name Flags
b
public boolean getQueryStatistics();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.queryStatistics:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void setQueryStatisticsMaxEntries(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.h2.engine.Database.queryStatisticsMaxEntries:I
1: aload 0
getfield org.h2.engine.Database.queryStatisticsData:Lorg/h2/engine/QueryStatisticsData;
ifnull 9
2: aload 0
dup
astore 2
monitorenter
3: aload 0
getfield org.h2.engine.Database.queryStatisticsData:Lorg/h2/engine/QueryStatisticsData;
ifnull 5
4: aload 0
getfield org.h2.engine.Database.queryStatisticsData:Lorg/h2/engine/QueryStatisticsData;
aload 0
getfield org.h2.engine.Database.queryStatisticsMaxEntries:I
invokevirtual org.h2.engine.QueryStatisticsData.setMaxQueryEntries:(I)V
5: StackMap locals: org.h2.engine.Database
StackMap stack:
aload 2
monitorexit
6: goto 9
StackMap locals:
StackMap stack: java.lang.Throwable
7: aload 2
monitorexit
8: athrow
9: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/h2/engine/Database;
0 10 1 n I
Exception table:
from to target type
3 6 7 any
7 8 7 any
MethodParameters:
Name Flags
n
public org.h2.engine.QueryStatisticsData getQueryStatisticsData();
descriptor: ()Lorg/h2/engine/QueryStatisticsData;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.queryStatistics:Z
ifne 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.queryStatisticsData:Lorg/h2/engine/QueryStatisticsData;
ifnonnull 10
3: aload 0
dup
astore 1
monitorenter
4: aload 0
getfield org.h2.engine.Database.queryStatisticsData:Lorg/h2/engine/QueryStatisticsData;
ifnonnull 6
5: aload 0
new org.h2.engine.QueryStatisticsData
dup
aload 0
getfield org.h2.engine.Database.queryStatisticsMaxEntries:I
invokespecial org.h2.engine.QueryStatisticsData.<init>:(I)V
putfield org.h2.engine.Database.queryStatisticsData:Lorg/h2/engine/QueryStatisticsData;
6: StackMap locals: org.h2.engine.Database
StackMap stack:
aload 1
monitorexit
7: goto 10
StackMap locals:
StackMap stack: java.lang.Throwable
8: aload 1
monitorexit
9: athrow
10: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.queryStatisticsData:Lorg/h2/engine/QueryStatisticsData;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/h2/engine/Database;
Exception table:
from to target type
4 7 8 any
8 9 8 any
public boolean isStarting();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.starting:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public boolean isMVStore();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.dbSettings:Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.mvStore:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
void opened();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.eventListener:Lorg/h2/api/DatabaseEventListener;
ifnull 2
1: aload 0
getfield org.h2.engine.Database.eventListener:Lorg/h2/api/DatabaseEventListener;
invokeinterface org.h2.api.DatabaseEventListener.opened:()V
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.writer:Lorg/h2/store/WriterThread;
ifnull 4
3: aload 0
getfield org.h2.engine.Database.writer:Lorg/h2/store/WriterThread;
invokevirtual org.h2.store.WriterThread.startThread:()V
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/h2/engine/Database;
public void setMode(org.h2.engine.Mode);
descriptor: (Lorg/h2/engine/Mode;)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.Database.mode:Lorg/h2/engine/Mode;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 mode Lorg/h2/engine/Mode;
MethodParameters:
Name Flags
mode
public org.h2.engine.Mode getMode();
descriptor: ()Lorg/h2/engine/Mode;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.mode:Lorg/h2/engine/Mode;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public boolean isMultiThreaded();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.multiThreaded:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void setMultiThreaded(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ifeq 5
aload 0
getfield org.h2.engine.Database.multiThreaded:Z
iload 1
if_icmpeq 5
1: aload 0
getfield org.h2.engine.Database.lockMode:I
ifne 5
aload 0
invokevirtual org.h2.engine.Database.isMVStore:()Z
ifne 5
2: ldc 90021
3: ldc "MV_STORE=FALSE & LOCK_MODE=0 & MULTI_THREADED=TRUE"
4: invokestatic org.h2.message.DbException.get:(ILjava/lang/String;)Lorg/h2/message/DbException;
athrow
5: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield org.h2.engine.Database.multiThreaded:Z
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/h2/engine/Database;
0 7 1 multiThreaded Z
MethodParameters:
Name Flags
multiThreaded
public void setMaxOperationMemory(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.Database.maxOperationMemory:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 maxOperationMemory I
MethodParameters:
Name Flags
maxOperationMemory
public int getMaxOperationMemory();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.maxOperationMemory:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public org.h2.engine.Session getExclusiveSession();
descriptor: ()Lorg/h2/engine/Session;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.exclusiveSession:Ljava/util/concurrent/atomic/AtomicReference;
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast org.h2.engine.Session
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void setExclusiveSession(org.h2.engine.Session, boolean);
descriptor: (Lorg/h2/engine/Session;Z)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.Database.exclusiveSession:Ljava/util/concurrent/atomic/AtomicReference;
aload 1
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
1: iload 2
ifeq 3
2: aload 0
aload 1
invokevirtual org.h2.engine.Database.closeAllSessionsException:(Lorg/h2/engine/Session;)V
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/Database;
0 4 1 session Lorg/h2/engine/Session;
0 4 2 closeOthers Z
MethodParameters:
Name Flags
session
closeOthers
public org.h2.util.SmallLRUCache<java.lang.String, java.lang.String[]> getLobFileListCache();
descriptor: ()Lorg/h2/util/SmallLRUCache;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.lobFileListCache:Lorg/h2/util/SmallLRUCache;
ifnonnull 2
1: aload 0
sipush 128
invokestatic org.h2.util.SmallLRUCache.newInstance:(I)Lorg/h2/util/SmallLRUCache;
putfield org.h2.engine.Database.lobFileListCache:Lorg/h2/util/SmallLRUCache;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.lobFileListCache:Lorg/h2/util/SmallLRUCache;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Database;
Signature: ()Lorg/h2/util/SmallLRUCache<Ljava/lang/String;[Ljava/lang/String;>;
public boolean isSysTableLocked();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
ifnull 1
aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
invokevirtual org.h2.table.Table.isLockedExclusively:()Z
ifne 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
public boolean isSysTableLockedBy(org.h2.engine.Session);
descriptor: (Lorg/h2/engine/Session;)Z
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.Database.meta:Lorg/h2/table/Table;
ifnull 1
aload 0
getfield org.h2.engine.Database.meta:Lorg/h2/table/Table;
aload 1
invokevirtual org.h2.table.Table.isLockedExclusivelyBy:(Lorg/h2/engine/Session;)Z
ifne 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 session Lorg/h2/engine/Session;
MethodParameters:
Name Flags
session
public org.h2.table.TableLinkConnection getLinkConnection(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/h2/table/TableLinkConnection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, 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.Database.linkConnections:Ljava/util/HashMap;
ifnonnull 2
1: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.h2.engine.Database.linkConnections:Ljava/util/HashMap;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.linkConnections:Ljava/util/HashMap;
aload 1
aload 2
aload 3
3: aload 4
aload 0
getfield org.h2.engine.Database.dbSettings:Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.shareLinkedConnections:Z
4: invokestatic org.h2.table.TableLinkConnection.open:(Ljava/util/HashMap;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Lorg/h2/table/TableLinkConnection;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/h2/engine/Database;
0 5 1 driver Ljava/lang/String;
0 5 2 url Ljava/lang/String;
0 5 3 user Ljava/lang/String;
0 5 4 password Ljava/lang/String;
MethodParameters:
Name Flags
driver
url
user
password
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
aload 0
getfield org.h2.engine.Database.databaseShortName:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)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
invokespecial java.lang.Object.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void shutdownImmediately();
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.Database.closing:Z
1: aload 0
iconst_1
invokevirtual org.h2.engine.Database.setPowerOffCount:(I)V
2: aload 0
invokevirtual org.h2.engine.Database.checkPowerOff:()V
3: goto 5
StackMap locals:
StackMap stack: org.h2.message.DbException
4: pop
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.engine.Database.closeFiles:()V
6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/h2/engine/Database;
Exception table:
from to target type
2 3 4 Class org.h2.message.DbException
public org.h2.util.TempFileDeleter getTempFileDeleter();
descriptor: ()Lorg/h2/util/TempFileDeleter;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.tempFileDeleter:Lorg/h2/util/TempFileDeleter;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public org.h2.store.PageStore getPageStore();
descriptor: ()Lorg/h2/store/PageStore;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=2, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.dbSettings:Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.mvStore:Z
ifeq 4
1: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnonnull 3
2: aload 0
aload 0
invokestatic org.h2.mvstore.db.MVTableEngine.init:(Lorg/h2/engine/Database;)Lorg/h2/mvstore/db/MVTableEngine$Store;
putfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
3: StackMap locals:
StackMap stack:
aconst_null
areturn
4: StackMap locals:
StackMap stack:
aload 0
dup
astore 1
monitorenter
5: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
ifnonnull 15
6: aload 0
new org.h2.store.PageStore
dup
aload 0
new java.lang.StringBuilder
dup
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
7: ldc ".h2.db"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 0
getfield org.h2.engine.Database.accessModeData:Ljava/lang/String;
aload 0
getfield org.h2.engine.Database.cacheSize:I
invokespecial org.h2.store.PageStore.<init>:(Lorg/h2/engine/Database;Ljava/lang/String;Ljava/lang/String;I)V
8: putfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
9: aload 0
getfield org.h2.engine.Database.pageSize:I
sipush 4096
if_icmpeq 11
10: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
aload 0
getfield org.h2.engine.Database.pageSize:I
invokevirtual org.h2.store.PageStore.setPageSize:(I)V
11: StackMap locals: org.h2.engine.Database
StackMap stack:
aload 0
getfield org.h2.engine.Database.readOnly:Z
ifne 13
aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.FS:Lorg/h2/store/FileLockMethod;
if_acmpne 13
12: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
iconst_1
invokevirtual org.h2.store.PageStore.setLockFile:(Z)V
13: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
aload 0
getfield org.h2.engine.Database.logMode:I
invokevirtual org.h2.store.PageStore.setLogMode:(I)V
14: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
invokevirtual org.h2.store.PageStore.open:()V
15: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
aload 1
monitorexit
16: areturn
17: StackMap locals:
StackMap stack: java.lang.Throwable
aload 1
monitorexit
18: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/h2/engine/Database;
Exception table:
from to target type
5 16 17 any
17 18 17 any
public org.h2.table.Table getFirstUserTable();
descriptor: ()Lorg/h2/table/Table;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
iconst_0
invokevirtual org.h2.engine.Database.getAllTablesAndViews:(Z)Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 2
goto 9
StackMap locals: org.h2.engine.Database top java.util.Iterator
StackMap stack:
1: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.table.Table
astore 1
start local 1 2: aload 1
invokevirtual org.h2.table.Table.getCreateSQL:()Ljava/lang/String;
ifnull 9
3: aload 1
invokevirtual org.h2.table.Table.isHidden:()Z
ifeq 5
4: goto 9
5: StackMap locals: org.h2.engine.Database org.h2.table.Table java.util.Iterator
StackMap stack:
aload 1
invokevirtual org.h2.table.Table.getSchema:()Lorg/h2/schema/Schema;
invokevirtual org.h2.schema.Schema.getId:()I
iconst_m1
if_icmpne 8
6: aload 1
invokevirtual org.h2.table.Table.getName:()Ljava/lang/String;
ldc "LOB_BLOCKS"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 8
7: goto 9
8: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 9: StackMap locals: org.h2.engine.Database top java.util.Iterator
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
10: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/h2/engine/Database;
2 9 1 table Lorg/h2/table/Table;
public boolean isReconnectNeeded();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=5, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.SERIALIZED:Lorg/h2/store/FileLockMethod;
if_acmpeq 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.reconnectChangePending:Z
ifeq 4
3: iconst_0
ireturn
4: StackMap locals:
StackMap stack:
invokestatic java.lang.System.nanoTime:()J
lstore 1
start local 1 5: lload 1
aload 0
getfield org.h2.engine.Database.reconnectCheckNext:J
lcmp
ifge 7
6: iconst_0
ireturn
7: StackMap locals: long
StackMap stack:
aload 0
lload 1
aload 0
getfield org.h2.engine.Database.reconnectCheckDelayNs:J
ladd
putfield org.h2.engine.Database.reconnectCheckNext:J
8: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
ifnonnull 12
9: aload 0
new org.h2.store.FileLock
dup
aload 0
getfield org.h2.engine.Database.traceSystem:Lorg/h2/message/TraceSystem;
new java.lang.StringBuilder
dup
aload 0
getfield org.h2.engine.Database.databaseName:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
10: ldc ".lock.db"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
sipush 1000
invokespecial org.h2.store.FileLock.<init>:(Lorg/h2/message/TraceSystem;Ljava/lang/String;I)V
11: putfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
12: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
invokevirtual org.h2.store.FileLock.load:()Ljava/util/Properties;
astore 3
start local 3 13: aload 3
astore 4
start local 4 14: StackMap locals: java.util.Properties java.util.Properties
StackMap stack:
aload 3
aload 0
getfield org.h2.engine.Database.reconnectLastLock:Ljava/util/Properties;
invokevirtual java.util.Properties.equals:(Ljava/lang/Object;)Z
ifeq 16
15: iconst_0
ireturn
16: StackMap locals:
StackMap stack:
aload 3
ldc "changePending"
aconst_null
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
ifnonnull 18
17: goto 28
18: StackMap locals:
StackMap stack:
invokestatic java.lang.System.nanoTime:()J
19: lload 1
aload 0
getfield org.h2.engine.Database.reconnectCheckDelayNs:J
ldc 10
lmul
ladd
lcmp
ifle 24
20: aload 4
aload 3
invokevirtual java.util.Properties.equals:(Ljava/lang/Object;)Z
ifeq 24
21: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
ldc "changePending"
aconst_null
invokevirtual org.h2.store.FileLock.setProperty:(Ljava/lang/String;Ljava/lang/String;)V
22: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
invokevirtual org.h2.store.FileLock.save:()Ljava/util/Properties;
pop
23: goto 28
24: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
ldc "delay (change pending)"
invokevirtual org.h2.message.Trace.debug:(Ljava/lang/String;)V
25: getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
aload 0
getfield org.h2.engine.Database.reconnectCheckDelayNs:J
invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
invokestatic java.lang.Thread.sleep:(J)V
26: aload 0
getfield org.h2.engine.Database.lock:Lorg/h2/store/FileLock;
invokevirtual org.h2.store.FileLock.load:()Ljava/util/Properties;
astore 3
27: goto 14
28: StackMap locals:
StackMap stack:
aload 0
aload 3
putfield org.h2.engine.Database.reconnectLastLock:Ljava/util/Properties;
end local 4 end local 3 29: goto 32
StackMap locals: org.h2.engine.Database long
StackMap stack: java.lang.Exception
30: astore 3
start local 3 31: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
aload 3
ldc "readOnly {0}"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.h2.engine.Database.readOnly:Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aastore
invokevirtual org.h2.message.Trace.error:(Ljava/lang/Throwable;Ljava/lang/String;[Ljava/lang/Object;)V
end local 3 32: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 this Lorg/h2/engine/Database;
5 33 1 now J
13 29 3 prop Ljava/util/Properties;
14 29 4 first Ljava/util/Properties;
31 32 3 e Ljava/lang/Exception;
Exception table:
from to target type
12 15 30 Class java.lang.Exception
16 29 30 Class java.lang.Exception
public void checkpointIfRequired();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.SERIALIZED:Lorg/h2/store/FileLockMethod;
if_acmpne 2
1: aload 0
getfield org.h2.engine.Database.readOnly:Z
ifne 2
aload 0
getfield org.h2.engine.Database.reconnectChangePending:Z
ifeq 2
aload 0
getfield org.h2.engine.Database.closing:Z
ifeq 3
2: StackMap locals:
StackMap stack:
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.Database.reconnectCheckNext:J
aload 0
getfield org.h2.engine.Database.reconnectCheckDelayNs:J
ladd
lcmp
ifle 32
5: aload 0
getfield org.h2.engine.Database.checkpointAllowed:I
ifge 7
6: aload 0
getfield org.h2.engine.Database.checkpointAllowed:I
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
pop
7: StackMap locals: long
StackMap stack:
aload 0
getfield org.h2.engine.Database.reconnectSync:Ljava/lang/Object;
dup
astore 3
monitorenter
8: aload 0
getfield org.h2.engine.Database.checkpointAllowed:I
ifle 11
9: aload 3
monitorexit
10: return
11: StackMap locals: java.lang.Object
StackMap stack:
aload 0
iconst_1
putfield org.h2.engine.Database.checkpointRunning:Z
12: aload 3
monitorexit
13: goto 16
StackMap locals:
StackMap stack: java.lang.Throwable
14: aload 3
monitorexit
15: athrow
16: StackMap locals:
StackMap stack:
aload 0
dup
astore 3
monitorenter
17: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
ldc "checkpoint start"
invokevirtual org.h2.message.Trace.debug:(Ljava/lang/String;)V
18: aload 0
invokevirtual org.h2.engine.Database.flushSequences:()V
19: aload 0
invokevirtual org.h2.engine.Database.checkpoint:()V
20: aload 0
iconst_0
invokevirtual org.h2.engine.Database.reconnectModified:(Z)Z
pop
21: aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
ldc "checkpoint end"
invokevirtual org.h2.message.Trace.debug:(Ljava/lang/String;)V
22: aload 3
monitorexit
23: goto 26
StackMap locals: org.h2.engine.Database long org.h2.engine.Database
StackMap stack: java.lang.Throwable
24: aload 3
monitorexit
25: athrow
26: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.reconnectSync:Ljava/lang/Object;
dup
astore 3
monitorenter
27: aload 0
iconst_0
putfield org.h2.engine.Database.checkpointRunning:Z
28: aload 3
monitorexit
29: goto 32
StackMap locals: org.h2.engine.Database long java.lang.Object
StackMap stack: java.lang.Throwable
30: aload 3
monitorexit
31: athrow
32: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 this Lorg/h2/engine/Database;
4 33 1 now J
Exception table:
from to target type
8 10 14 any
11 13 14 any
14 15 14 any
17 23 24 any
24 25 24 any
27 29 30 any
30 31 30 any
public boolean isFileLockSerialized();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.SERIALIZED:Lorg/h2/store/FileLockMethod;
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/Database;
private void flushSequences();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
iconst_3
invokevirtual org.h2.engine.Database.getAllSchemaObjects:(I)Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 2
goto 4
StackMap locals: org.h2.engine.Database top java.util.Iterator
StackMap stack:
1: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.schema.SchemaObject
astore 1
start local 1 2: aload 1
checkcast org.h2.schema.Sequence
astore 3
start local 3 3: aload 3
invokevirtual org.h2.schema.Sequence.flushWithoutMargin:()V
end local 3 end local 1 4: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/h2/engine/Database;
2 4 1 obj Lorg/h2/schema/SchemaObject;
3 4 3 sequence Lorg/h2/schema/Sequence;
public void checkpoint();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.persistent:Z
ifeq 10
1: aload 0
dup
astore 1
monitorenter
2: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
ifnull 4
3: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
invokevirtual org.h2.store.PageStore.checkpoint:()V
4: StackMap locals: org.h2.engine.Database
StackMap stack:
aload 1
monitorexit
5: goto 8
StackMap locals:
StackMap stack: java.lang.Throwable
6: aload 1
monitorexit
7: athrow
8: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 10
9: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
invokevirtual org.h2.mvstore.db.MVTableEngine$Store.flush:()V
10: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.engine.Database.getTempFileDeleter:()Lorg/h2/util/TempFileDeleter;
invokevirtual org.h2.util.TempFileDeleter.deleteUnused:()V
11: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/h2/engine/Database;
Exception table:
from to target type
2 5 6 any
6 7 6 any
public boolean beforeWriting();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.SERIALIZED:Lorg/h2/store/FileLockMethod;
if_acmpeq 5
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
bipush 10
invokestatic java.lang.Math.random:()D
ldc 10.0
dmul
d2i
iadd
i2l
invokestatic java.lang.Thread.sleep:(J)V
3: goto 5
StackMap locals:
StackMap stack: java.lang.Exception
4: pop
5: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.checkpointRunning:Z
ifne 2
6: aload 0
getfield org.h2.engine.Database.reconnectSync:Ljava/lang/Object;
dup
astore 1
monitorenter
7: aload 0
iconst_1
invokevirtual org.h2.engine.Database.reconnectModified:(Z)Z
ifeq 12
8: aload 0
dup
getfield org.h2.engine.Database.checkpointAllowed:I
iconst_1
iadd
dup_x1
putfield org.h2.engine.Database.checkpointAllowed:I
bipush 20
if_icmple 10
9: aload 0
getfield org.h2.engine.Database.checkpointAllowed:I
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
10: StackMap locals: java.lang.Object
StackMap stack:
aload 1
monitorexit
11: iconst_1
ireturn
12: StackMap locals:
StackMap stack:
aload 1
monitorexit
13: goto 16
StackMap locals:
StackMap stack: java.lang.Throwable
14: aload 1
monitorexit
15: athrow
16: StackMap locals:
StackMap stack:
aload 0
invokestatic java.lang.System.nanoTime:()J
lconst_1
lsub
putfield org.h2.engine.Database.reconnectCheckNext:J
17: aload 0
aconst_null
putfield org.h2.engine.Database.reconnectLastLock:Ljava/util/Properties;
18: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/h2/engine/Database;
Exception table:
from to target type
2 3 4 Class java.lang.Exception
7 11 14 any
12 13 14 any
14 15 14 any
public void afterWriting();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.fileLockMethod:Lorg/h2/store/FileLockMethod;
getstatic org.h2.store.FileLockMethod.SERIALIZED:Lorg/h2/store/FileLockMethod;
if_acmpeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.reconnectSync:Ljava/lang/Object;
dup
astore 1
monitorenter
3: aload 0
dup
getfield org.h2.engine.Database.checkpointAllowed:I
iconst_1
isub
putfield org.h2.engine.Database.checkpointAllowed:I
4: aload 1
monitorexit
5: goto 8
StackMap locals: org.h2.engine.Database java.lang.Object
StackMap stack: java.lang.Throwable
6: aload 1
monitorexit
7: athrow
8: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.checkpointAllowed:I
ifge 10
9: aload 0
getfield org.h2.engine.Database.checkpointAllowed:I
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
10: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/h2/engine/Database;
Exception table:
from to target type
3 5 6 any
6 7 6 any
public void setReadOnly(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.Database.readOnly:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 readOnly Z
MethodParameters:
Name Flags
readOnly
public void setCompactMode(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.Database.compactMode:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 compactMode I
MethodParameters:
Name Flags
compactMode
public org.h2.util.SourceCompiler getCompiler();
descriptor: ()Lorg/h2/util/SourceCompiler;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.compiler:Lorg/h2/util/SourceCompiler;
ifnonnull 2
1: aload 0
new org.h2.util.SourceCompiler
dup
invokespecial org.h2.util.SourceCompiler.<init>:()V
putfield org.h2.engine.Database.compiler:Lorg/h2/util/SourceCompiler;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.compiler:Lorg/h2/util/SourceCompiler;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Database;
public org.h2.store.LobStorageInterface getLobStorage();
descriptor: ()Lorg/h2/store/LobStorageInterface;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.lobStorage:Lorg/h2/store/LobStorageInterface;
ifnonnull 5
1: aload 0
getfield org.h2.engine.Database.dbSettings:Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.mvStore:Z
ifeq 4
2: aload 0
new org.h2.store.LobStorageMap
dup
aload 0
invokespecial org.h2.store.LobStorageMap.<init>:(Lorg/h2/engine/Database;)V
putfield org.h2.engine.Database.lobStorage:Lorg/h2/store/LobStorageInterface;
3: goto 5
4: StackMap locals:
StackMap stack:
aload 0
new org.h2.store.LobStorageBackend
dup
aload 0
invokespecial org.h2.store.LobStorageBackend.<init>:(Lorg/h2/engine/Database;)V
putfield org.h2.engine.Database.lobStorage:Lorg/h2/store/LobStorageInterface;
5: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.lobStorage:Lorg/h2/store/LobStorageInterface;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/h2/engine/Database;
public org.h2.jdbc.JdbcConnection getLobConnectionForInit();
descriptor: ()Lorg/h2/jdbc/JdbcConnection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: ldc "jdbc:default:connection"
astore 1
start local 1 1: new org.h2.jdbc.JdbcConnection
dup
2: aload 0
getfield org.h2.engine.Database.systemSession:Lorg/h2/engine/Session;
aload 0
getfield org.h2.engine.Database.systemUser:Lorg/h2/engine/User;
invokevirtual org.h2.engine.User.getName:()Ljava/lang/String;
aload 1
3: invokespecial org.h2.jdbc.JdbcConnection.<init>:(Lorg/h2/engine/SessionInterface;Ljava/lang/String;Ljava/lang/String;)V
astore 2
start local 2 4: aload 2
iconst_0
invokevirtual org.h2.jdbc.JdbcConnection.setTraceLevel:(I)V
5: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/h2/engine/Database;
1 6 1 url Ljava/lang/String;
4 6 2 conn Lorg/h2/jdbc/JdbcConnection;
public org.h2.jdbc.JdbcConnection getLobConnectionForRegularUse();
descriptor: ()Lorg/h2/jdbc/JdbcConnection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: ldc "jdbc:default:connection"
astore 1
start local 1 1: new org.h2.jdbc.JdbcConnection
dup
2: aload 0
getfield org.h2.engine.Database.lobSession:Lorg/h2/engine/Session;
aload 0
getfield org.h2.engine.Database.systemUser:Lorg/h2/engine/User;
invokevirtual org.h2.engine.User.getName:()Ljava/lang/String;
aload 1
3: invokespecial org.h2.jdbc.JdbcConnection.<init>:(Lorg/h2/engine/SessionInterface;Ljava/lang/String;Ljava/lang/String;)V
astore 2
start local 2 4: aload 2
iconst_0
invokevirtual org.h2.jdbc.JdbcConnection.setTraceLevel:(I)V
5: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/h2/engine/Database;
1 6 1 url Ljava/lang/String;
4 6 2 conn Lorg/h2/jdbc/JdbcConnection;
public org.h2.engine.Session getLobSession();
descriptor: ()Lorg/h2/engine/Session;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.lobSession:Lorg/h2/engine/Session;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void setLogMode(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: iload 1
iflt 1
iload 1
iconst_2
if_icmple 2
1: StackMap locals:
StackMap stack:
ldc "LOG"
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokestatic org.h2.message.DbException.getInvalidValueException:(Ljava/lang/String;Ljava/lang/Object;)Lorg/h2/message/DbException;
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 5
3: aload 0
iload 1
putfield org.h2.engine.Database.logMode:I
4: return
5: StackMap locals:
StackMap stack:
aload 0
dup
astore 2
monitorenter
6: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
ifnull 12
7: iload 1
iconst_2
if_icmpne 9
8: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
invokevirtual org.h2.store.PageStore.getLogMode:()I
iconst_2
if_icmpeq 10
9: StackMap locals: org.h2.engine.Database
StackMap stack:
aload 0
getfield org.h2.engine.Database.trace:Lorg/h2/message/Trace;
aconst_null
ldc "log {0}"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.h2.message.Trace.error:(Ljava/lang/Throwable;Ljava/lang/String;[Ljava/lang/Object;)V
10: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield org.h2.engine.Database.logMode:I
11: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
iload 1
invokevirtual org.h2.store.PageStore.setLogMode:(I)V
12: StackMap locals:
StackMap stack:
aload 2
monitorexit
13: goto 16
StackMap locals:
StackMap stack: java.lang.Throwable
14: aload 2
monitorexit
15: athrow
16: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/h2/engine/Database;
0 17 1 log I
Exception table:
from to target type
6 13 14 any
14 15 14 any
MethodParameters:
Name Flags
log
public int getLogMode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.store:Lorg/h2/mvstore/db/MVTableEngine$Store;
ifnull 2
1: aload 0
getfield org.h2.engine.Database.logMode:I
ireturn
2: StackMap locals:
StackMap stack:
aload 0
dup
astore 1
monitorenter
3: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
ifnull 6
4: aload 0
getfield org.h2.engine.Database.pageStore:Lorg/h2/store/PageStore;
invokevirtual org.h2.store.PageStore.getLogMode:()I
aload 1
monitorexit
5: ireturn
6: StackMap locals: org.h2.engine.Database
StackMap stack:
aload 1
monitorexit
7: goto 10
StackMap locals:
StackMap stack: java.lang.Throwable
8: aload 1
monitorexit
9: athrow
10: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/h2/engine/Database;
Exception table:
from to target type
3 5 8 any
6 7 8 any
8 9 8 any
public int getDefaultTableType();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.defaultTableType:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void setDefaultTableType(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.Database.defaultTableType:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
0 2 1 defaultTableType I
MethodParameters:
Name Flags
defaultTableType
public org.h2.engine.DbSettings getSettings();
descriptor: ()Lorg/h2/engine/DbSettings;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.dbSettings:Lorg/h2/engine/DbSettings;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public <V> java.util.HashMap<java.lang.String, V> newStringMap();
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.Database.dbSettings:Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.caseInsensitiveIdentifiers:Z
ifeq 1
new org.h2.value.CaseInsensitiveMap
dup
invokespecial org.h2.value.CaseInsensitiveMap.<init>:()V
goto 2
StackMap locals:
StackMap stack:
1: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
StackMap locals:
StackMap stack: java.util.HashMap
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Database;
Signature: <V:Ljava/lang/Object;>()Ljava/util/HashMap<Ljava/lang/String;TV;>;
public <V> java.util.concurrent.ConcurrentHashMap<java.lang.String, V> newConcurrentStringMap();
descriptor: ()Ljava/util/concurrent/ConcurrentHashMap;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.dbSettings:Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.caseInsensitiveIdentifiers:Z
ifeq 1
new org.h2.value.CaseInsensitiveConcurrentMap
dup
invokespecial org.h2.value.CaseInsensitiveConcurrentMap.<init>:()V
goto 2
1: StackMap locals:
StackMap stack:
new java.util.concurrent.ConcurrentHashMap
dup
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
2: StackMap locals:
StackMap stack: java.util.concurrent.ConcurrentHashMap
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Database;
Signature: <V:Ljava/lang/Object;>()Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;TV;>;
public boolean equalsIdentifiers(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 2
aload 0
getfield org.h2.engine.Database.dbSettings:Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.caseInsensitiveIdentifiers:Z
ifeq 1
aload 1
aload 2
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 2
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
StackMap locals:
StackMap stack:
2: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Database;
0 3 1 a Ljava/lang/String;
0 3 2 b Ljava/lang/String;
MethodParameters:
Name Flags
a
b
public java.lang.String sysIdentifier(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.h2.engine.Database.$assertionsDisabled:Z
ifne 1
aload 1
invokestatic org.h2.engine.Database.isUpperSysIdentifier:(Ljava/lang/String;)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.Database.dbSettings:Lorg/h2/engine/DbSettings;
getfield org.h2.engine.DbSettings.databaseToLower:Z
ifeq 2
aload 1
invokestatic org.h2.util.StringUtils.toLowerEnglish:(Ljava/lang/String;)Ljava/lang/String;
goto 3
StackMap locals:
StackMap stack:
2: aload 1
StackMap locals:
StackMap stack: java.lang.String
3: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Database;
0 4 1 upperName Ljava/lang/String;
MethodParameters:
Name Flags
upperName
private static boolean isUpperSysIdentifier(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.String.length:()I
istore 1
start local 1 1: iload 1
ifne 3
2: iconst_0
ireturn
3: StackMap locals: int
StackMap stack:
iconst_0
istore 2
start local 2 4: goto 9
5: StackMap locals: int
StackMap stack:
aload 0
iload 2
invokevirtual java.lang.String.charAt:(I)C
istore 3
start local 3 6: iload 3
bipush 65
if_icmplt 7
iload 3
bipush 90
if_icmple 8
iload 3
bipush 95
if_icmpeq 8
7: StackMap locals: int
StackMap stack:
iconst_0
ireturn
end local 3 8: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
9: iload 2
iload 1
if_icmplt 5
end local 2 10: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 upperName Ljava/lang/String;
1 11 1 l I
4 10 2 i I
6 8 3 ch I
MethodParameters:
Name Flags
upperName
public int readLob(long, byte[], long, byte[], int, int);
descriptor: (J[BJ[BII)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=9, args_size=7
start local 0 start local 1 start local 3 start local 4 start local 6 start local 7 start local 8 0: invokestatic org.h2.message.DbException.throwInternalError:()Ljava/lang/RuntimeException;
athrow
end local 8 end local 7 end local 6 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
0 1 1 lobId J
0 1 3 hmac [B
0 1 4 offset J
0 1 6 buff [B
0 1 7 off I
0 1 8 length I
MethodParameters:
Name Flags
lobId
hmac
offset
buff
off
length
public byte[] getFileEncryptionKey();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.fileEncryptionKey:[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public int getPageSize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.pageSize:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public org.h2.api.JavaObjectSerializer getJavaObjectSerializer();
descriptor: ()Lorg/h2/api/JavaObjectSerializer;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.h2.engine.Database.initJavaObjectSerializer:()V
1: aload 0
getfield org.h2.engine.Database.javaObjectSerializer:Lorg/h2/api/JavaObjectSerializer;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/engine/Database;
private void initJavaObjectSerializer();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.javaObjectSerializerInitialized:Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
dup
astore 1
monitorenter
3: aload 0
getfield org.h2.engine.Database.javaObjectSerializerInitialized:Z
ifeq 6
4: aload 1
monitorexit
5: return
6: StackMap locals: org.h2.engine.Database
StackMap stack:
aload 0
getfield org.h2.engine.Database.javaObjectSerializerName:Ljava/lang/String;
astore 2
start local 2 7: aload 2
ifnull 17
8: aload 2
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 2
9: aload 2
invokevirtual java.lang.String.isEmpty:()Z
ifne 17
10: aload 2
ldc "null"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 17
11: aload 0
12: aload 2
invokestatic org.h2.util.JdbcUtils.loadUserClass:(Ljava/lang/String;)Ljava/lang/Class;
iconst_0
anewarray java.lang.Class
invokevirtual java.lang.Class.getDeclaredConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
iconst_0
anewarray java.lang.Object
invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.api.JavaObjectSerializer
13: putfield org.h2.engine.Database.javaObjectSerializer:Lorg/h2/api/JavaObjectSerializer;
14: goto 17
StackMap locals: org.h2.engine.Database org.h2.engine.Database java.lang.String
StackMap stack: java.lang.Exception
15: astore 3
start local 3 16: aload 3
invokestatic org.h2.message.DbException.convert:(Ljava/lang/Throwable;)Lorg/h2/message/DbException;
athrow
end local 3 17: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield org.h2.engine.Database.javaObjectSerializerInitialized:Z
end local 2 18: aload 1
monitorexit
19: goto 22
StackMap locals: org.h2.engine.Database org.h2.engine.Database
StackMap stack: java.lang.Throwable
20: aload 1
monitorexit
21: athrow
22: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lorg/h2/engine/Database;
7 18 2 serializerName Ljava/lang/String;
16 17 3 e Ljava/lang/Exception;
Exception table:
from to target type
11 14 15 Class java.lang.Exception
3 5 20 any
6 19 20 any
20 21 20 any
public void setJavaObjectSerializerName(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
dup
astore 2
monitorenter
1: aload 0
iconst_0
putfield org.h2.engine.Database.javaObjectSerializerInitialized:Z
2: aload 0
aload 1
putfield org.h2.engine.Database.javaObjectSerializerName:Ljava/lang/String;
3: aload 2
monitorexit
4: goto 7
StackMap locals: org.h2.engine.Database java.lang.String org.h2.engine.Database
StackMap stack: java.lang.Throwable
5: aload 2
monitorexit
6: athrow
7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/h2/engine/Database;
0 8 1 serializerName Ljava/lang/String;
Exception table:
from to target type
1 4 5 any
5 6 5 any
MethodParameters:
Name Flags
serializerName
public org.h2.api.TableEngine getTableEngine(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/h2/api/TableEngine;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: getstatic org.h2.engine.Database.$assertionsDisabled:Z
ifne 1
aload 0
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.Database.tableEngines:Ljava/util/HashMap;
aload 1
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.api.TableEngine
astore 2
start local 2 2: aload 2
ifnonnull 8
3: aload 1
invokestatic org.h2.util.JdbcUtils.loadUserClass:(Ljava/lang/String;)Ljava/lang/Class;
iconst_0
anewarray java.lang.Class
invokevirtual java.lang.Class.getDeclaredConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
iconst_0
anewarray java.lang.Object
invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.api.TableEngine
astore 2
4: goto 7
StackMap locals: org.h2.engine.Database java.lang.String org.h2.api.TableEngine
StackMap stack: java.lang.Exception
5: astore 3
start local 3 6: aload 3
invokestatic org.h2.message.DbException.convert:(Ljava/lang/Throwable;)Lorg/h2/message/DbException;
athrow
end local 3 7: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.engine.Database.tableEngines:Ljava/util/HashMap;
aload 1
aload 2
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
8: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/h2/engine/Database;
0 9 1 tableEngine Ljava/lang/String;
2 9 2 engine Lorg/h2/api/TableEngine;
6 7 3 e Ljava/lang/Exception;
Exception table:
from to target type
3 4 5 Class java.lang.Exception
MethodParameters:
Name Flags
tableEngine
public org.h2.security.auth.Authenticator getAuthenticator();
descriptor: ()Lorg/h2/security/auth/Authenticator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.engine.Database.authenticator:Lorg/h2/security/auth/Authenticator;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Database;
public void setAuthenticator(org.h2.security.auth.Authenticator);
descriptor: (Lorg/h2/security/auth/Authenticator;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnull 2
1: aload 1
aload 0
invokeinterface org.h2.security.auth.Authenticator.init:(Lorg/h2/engine/Database;)V
2: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield org.h2.engine.Database.authenticator:Lorg/h2/security/auth/Authenticator;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/engine/Database;
0 4 1 authenticator Lorg/h2/security/auth/Authenticator;
MethodParameters:
Name Flags
authenticator
}
SourceFile: "Database.java"
NestMembers:
org.h2.engine.Database$1
InnerClasses:
org.h2.engine.Database$1
public Store = org.h2.mvstore.db.MVTableEngine$Store of org.h2.mvstore.db.MVTableEngine