class org.hsqldb.test.TestBench$ClientThreadProcedure extends java.lang.Thread
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.hsqldb.test.TestBench$ClientThreadProcedure
super_class: java.lang.Thread
{
int ntrans;
descriptor: I
flags: (0x0000)
java.sql.Connection Conn;
descriptor: Ljava/sql/Connection;
flags: (0x0000)
java.sql.CallableStatement pstmt1;
descriptor: Ljava/sql/CallableStatement;
flags: (0x0000)
final org.hsqldb.test.TestBench this$0;
descriptor: Lorg/hsqldb/test/TestBench;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(org.hsqldb.test.TestBench, int, java.lang.String, java.lang.String, java.lang.String, int);
descriptor: (Lorg/hsqldb/test/TestBench;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=7
start local 0 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
aload 1
putfield org.hsqldb.test.TestBench$ClientThreadProcedure.this$0:Lorg/hsqldb/test/TestBench;
1: aload 0
invokespecial java.lang.Thread.<init>:()V
2: aload 0
iconst_0
putfield org.hsqldb.test.TestBench$ClientThreadProcedure.ntrans:I
3: aload 0
aconst_null
putfield org.hsqldb.test.TestBench$ClientThreadProcedure.pstmt1:Ljava/sql/CallableStatement;
4: getstatic java.lang.System.out:Ljava/io/PrintStream;
iload 2
invokevirtual java.io.PrintStream.println:(I)V
5: aload 0
iload 2
putfield org.hsqldb.test.TestBench$ClientThreadProcedure.ntrans:I
6: aload 0
aload 3
aload 4
aload 5
invokestatic org.hsqldb.test.TestBench.connect:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/Connection;
putfield org.hsqldb.test.TestBench$ClientThreadProcedure.Conn:Ljava/sql/Connection;
7: aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.Conn:Ljava/sql/Connection;
ifnonnull 9
8: return
9: StackMap locals: org.hsqldb.test.TestBench$ClientThreadProcedure org.hsqldb.test.TestBench int java.lang.String java.lang.String java.lang.String int
StackMap stack:
aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.Conn:Ljava/sql/Connection;
iconst_0
invokeinterface java.sql.Connection.setAutoCommit:(Z)V
10: aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.Conn:Ljava/sql/Connection;
iload 6
invokeinterface java.sql.Connection.setTransactionIsolation:(I)V
11: aload 0
invokevirtual org.hsqldb.test.TestBench$ClientThreadProcedure.prepareStatements:()V
12: goto 16
StackMap locals:
StackMap stack: java.lang.Exception
13: astore 7
start local 7 14: getstatic java.lang.System.out:Ljava/io/PrintStream;
aload 7
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
15: aload 7
invokevirtual java.lang.Exception.printStackTrace:()V
end local 7 16: StackMap locals:
StackMap stack:
return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/hsqldb/test/TestBench$ClientThreadProcedure;
0 17 2 number_of_txns I
0 17 3 url Ljava/lang/String;
0 17 4 user Ljava/lang/String;
0 17 5 password Ljava/lang/String;
0 17 6 transactionMode I
14 16 7 E Ljava/lang/Exception;
Exception table:
from to target type
9 12 13 Class java.lang.Exception
MethodParameters:
Name Flags
this$0 final
number_of_txns
url
user
password
transactionMode
void prepareStatements();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=1
start local 0 0: ldc "CALL UPDATE_PROC(?, ?, ?, ?, ?)"
astore 1
start local 1 1: aload 0
aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.Conn:Ljava/sql/Connection;
aload 1
invokeinterface java.sql.Connection.prepareCall:(Ljava/lang/String;)Ljava/sql/CallableStatement;
putfield org.hsqldb.test.TestBench$ClientThreadProcedure.pstmt1:Ljava/sql/CallableStatement;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/hsqldb/test/TestBench$ClientThreadProcedure;
1 3 1 Query Ljava/lang/String;
Exceptions:
throws java.sql.SQLException
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=1
start local 0 0: aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.ntrans:I
istore 1
start local 1 1: goto 8
2: StackMap locals: int
StackMap stack:
aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.this$0:Lorg/hsqldb/test/TestBench;
iconst_2
invokevirtual org.hsqldb.test.TestBench.getRandomID:(I)I
istore 2
start local 2 3: iload 2
aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.this$0:Lorg/hsqldb/test/TestBench;
getfield org.hsqldb.test.TestBench.naccounts:I
idiv
istore 3
start local 3 4: aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.this$0:Lorg/hsqldb/test/TestBench;
iconst_0
invokevirtual org.hsqldb.test.TestBench.getRandomID:(I)I
istore 4
start local 4 5: sipush -1000
sipush 1000
invokestatic org.hsqldb.test.TestBench.getRandomInt:(II)I
istore 5
start local 5 6: aload 0
iload 3
iload 4
iload 2
iload 5
invokevirtual org.hsqldb.test.TestBench$ClientThreadProcedure.doOne:(IIII)I
pop
7: aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.this$0:Lorg/hsqldb/test/TestBench;
invokevirtual org.hsqldb.test.TestBench.incrementTransactionCount:()V
end local 5 end local 4 end local 3 end local 2 8: StackMap locals:
StackMap stack:
iload 1
iinc 1 -1
ifgt 2
9: aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.pstmt1:Ljava/sql/CallableStatement;
ifnull 15
10: aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.pstmt1:Ljava/sql/CallableStatement;
invokeinterface java.sql.CallableStatement.close:()V
11: goto 15
StackMap locals:
StackMap stack: java.lang.Exception
12: astore 2
start local 2 13: getstatic java.lang.System.out:Ljava/io/PrintStream;
aload 2
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
14: aload 2
invokevirtual java.lang.Exception.printStackTrace:()V
end local 2 15: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.Conn:Ljava/sql/Connection;
invokestatic org.hsqldb.test.TestBench.connectClose:(Ljava/sql/Connection;)V
16: aload 0
aconst_null
putfield org.hsqldb.test.TestBench$ClientThreadProcedure.Conn:Ljava/sql/Connection;
17: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/hsqldb/test/TestBench$ClientThreadProcedure;
1 18 1 count I
3 8 2 account I
4 8 3 branch I
5 8 4 teller I
6 8 5 delta I
13 15 2 E Ljava/lang/Exception;
Exception table:
from to target type
9 11 12 Class java.lang.Exception
int doOne(int, int, int, int);
descriptor: (IIII)I
flags: (0x0000)
Code:
stack=4, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iconst_0
istore 5
start local 5 1: aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.Conn:Ljava/sql/Connection;
ifnonnull 4
2: aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.this$0:Lorg/hsqldb/test/TestBench;
invokevirtual org.hsqldb.test.TestBench.incrementFailedTransactionCount:()V
3: iconst_0
ireturn
4: StackMap locals: int
StackMap stack:
aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.pstmt1:Ljava/sql/CallableStatement;
iconst_1
iload 3
invokeinterface java.sql.CallableStatement.setInt:(II)V
5: aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.pstmt1:Ljava/sql/CallableStatement;
iconst_2
iload 2
invokeinterface java.sql.CallableStatement.setInt:(II)V
6: aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.pstmt1:Ljava/sql/CallableStatement;
iconst_3
iload 1
invokeinterface java.sql.CallableStatement.setInt:(II)V
7: aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.pstmt1:Ljava/sql/CallableStatement;
iconst_4
iload 4
invokeinterface java.sql.CallableStatement.setInt:(II)V
8: aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.pstmt1:Ljava/sql/CallableStatement;
invokeinterface java.sql.CallableStatement.execute:()Z
pop
9: aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.pstmt1:Ljava/sql/CallableStatement;
invokeinterface java.sql.CallableStatement.getUpdateCount:()I
pop
10: aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.pstmt1:Ljava/sql/CallableStatement;
invokeinterface java.sql.CallableStatement.getMoreResults:()Z
ifeq 16
11: aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.pstmt1:Ljava/sql/CallableStatement;
invokeinterface java.sql.CallableStatement.getResultSet:()Ljava/sql/ResultSet;
astore 6
start local 6 12: goto 14
13: StackMap locals: java.sql.ResultSet
StackMap stack:
aload 6
iconst_1
invokeinterface java.sql.ResultSet.getInt:(I)I
istore 5
14: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.sql.ResultSet.next:()Z
ifne 13
15: aload 6
invokeinterface java.sql.ResultSet.close:()V
end local 6 16: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.pstmt1:Ljava/sql/CallableStatement;
invokeinterface java.sql.CallableStatement.clearWarnings:()V
17: aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.Conn:Ljava/sql/Connection;
invokeinterface java.sql.Connection.commit:()V
18: iload 5
19: ireturn
20: StackMap locals:
StackMap stack: java.lang.Exception
astore 6
start local 6 21: aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.this$0:Lorg/hsqldb/test/TestBench;
getfield org.hsqldb.test.TestBench.verbose:Z
ifeq 26
22: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Transaction failed: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
23: aload 6
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
24: invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
25: aload 6
invokevirtual java.lang.Exception.printStackTrace:()V
26: StackMap locals: java.lang.Exception
StackMap stack:
aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.this$0:Lorg/hsqldb/test/TestBench;
invokevirtual org.hsqldb.test.TestBench.incrementFailedTransactionCount:()V
27: aload 0
getfield org.hsqldb.test.TestBench$ClientThreadProcedure.Conn:Ljava/sql/Connection;
invokeinterface java.sql.Connection.rollback:()V
28: goto 30
StackMap locals:
StackMap stack: java.sql.SQLException
29: pop
end local 6 30: StackMap locals:
StackMap stack:
iconst_0
ireturn
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 31 0 this Lorg/hsqldb/test/TestBench$ClientThreadProcedure;
0 31 1 bid I
0 31 2 tid I
0 31 3 aid I
0 31 4 delta I
1 31 5 aBalance I
12 16 6 rs Ljava/sql/ResultSet;
21 30 6 E Ljava/lang/Exception;
Exception table:
from to target type
4 19 20 Class java.lang.Exception
27 28 29 Class java.sql.SQLException
MethodParameters:
Name Flags
bid
tid
aid
delta
}
SourceFile: "TestBench.java"
NestHost: org.hsqldb.test.TestBench
InnerClasses:
ClientThreadProcedure = org.hsqldb.test.TestBench$ClientThreadProcedure of org.hsqldb.test.TestBench