public class io.ebeaninternal.server.query.QueryPlanLoggerSqlServer extends io.ebeaninternal.server.query.QueryPlanLogger
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.ebeaninternal.server.query.QueryPlanLoggerSqlServer
super_class: io.ebeaninternal.server.query.QueryPlanLogger
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial io.ebeaninternal.server.query.QueryPlanLogger.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/query/QueryPlanLoggerSqlServer;
public io.ebeaninternal.api.SpiDbQueryPlan collectPlan(java.sql.Connection, io.ebeaninternal.api.SpiQueryPlan, io.ebeaninternal.server.type.bindcapture.BindCapture);
descriptor: (Ljava/sql/Connection;Lio/ebeaninternal/api/SpiQueryPlan;Lio/ebeaninternal/server/type/bindcapture/BindCapture;)Lio/ebeaninternal/api/SpiDbQueryPlan;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=16, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aconst_null
astore 4
aconst_null
astore 5
1: aload 1
invokeinterface java.sql.Connection.createStatement:()Ljava/sql/Statement;
astore 6
start local 6 2: aload 6
ldc "set statistics xml on"
invokeinterface java.sql.Statement.execute:(Ljava/lang/String;)Z
pop
3: aload 6
ldc "begin transaction"
invokeinterface java.sql.Statement.execute:(Ljava/lang/String;)Z
pop
4: aconst_null
astore 7
aconst_null
astore 8
5: aload 1
aload 2
invokeinterface io.ebeaninternal.api.SpiQueryPlan.getSql:()Ljava/lang/String;
invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
astore 9
start local 9 6: aload 3
aload 9
aload 1
invokevirtual io.ebeaninternal.server.type.bindcapture.BindCapture.prepare:(Ljava/sql/PreparedStatement;Ljava/sql/Connection;)V
7: aconst_null
astore 10
aconst_null
astore 11
8: aload 9
invokeinterface java.sql.PreparedStatement.executeQuery:()Ljava/sql/ResultSet;
astore 12
start local 12 9: aload 12
ifnull 15
aload 12
invokeinterface java.sql.ResultSet.close:()V
goto 15
StackMap locals: io.ebeaninternal.server.query.QueryPlanLoggerSqlServer java.sql.Connection io.ebeaninternal.api.SpiQueryPlan io.ebeaninternal.server.type.bindcapture.BindCapture java.lang.Throwable java.lang.Throwable java.sql.Statement java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement java.lang.Throwable java.lang.Throwable java.sql.ResultSet
StackMap stack: java.lang.Throwable
10: astore 10
aload 12
ifnull 11
aload 12
invokeinterface java.sql.ResultSet.close:()V
end local 12 StackMap locals:
StackMap stack:
11: aload 10
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
12: astore 11
aload 10
ifnonnull 13
aload 11
astore 10
goto 14
StackMap locals:
StackMap stack:
13: aload 10
aload 11
if_acmpeq 14
aload 10
aload 11
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
14: aload 10
athrow
15: StackMap locals:
StackMap stack:
aload 6
ldc "rollback transaction"
invokeinterface java.sql.Statement.execute:(Ljava/lang/String;)Z
pop
16: aconst_null
astore 10
start local 10 17: aload 9
invokeinterface java.sql.PreparedStatement.getMoreResults:()Z
ifeq 28
18: aconst_null
astore 11
aconst_null
astore 12
19: aload 9
invokeinterface java.sql.PreparedStatement.getResultSet:()Ljava/sql/ResultSet;
astore 13
start local 13 20: aload 13
invokeinterface java.sql.ResultSet.next:()Z
ifeq 22
21: aload 13
iconst_1
invokeinterface java.sql.ResultSet.getString:(I)Ljava/lang/String;
astore 10
22: StackMap locals: io.ebeaninternal.server.query.QueryPlanLoggerSqlServer java.sql.Connection io.ebeaninternal.api.SpiQueryPlan io.ebeaninternal.server.type.bindcapture.BindCapture java.lang.Throwable java.lang.Throwable java.sql.Statement java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement java.lang.String java.lang.Throwable java.lang.Throwable java.sql.ResultSet
StackMap stack:
aload 13
ifnull 28
aload 13
invokeinterface java.sql.ResultSet.close:()V
goto 28
StackMap locals:
StackMap stack: java.lang.Throwable
23: astore 11
aload 13
ifnull 24
aload 13
invokeinterface java.sql.ResultSet.close:()V
end local 13 StackMap locals:
StackMap stack:
24: aload 11
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
25: astore 12
aload 11
ifnonnull 26
aload 12
astore 11
goto 27
StackMap locals:
StackMap stack:
26: aload 11
aload 12
if_acmpeq 27
aload 11
aload 12
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
27: aload 11
athrow
28: StackMap locals:
StackMap stack:
aload 0
aload 2
aload 3
invokevirtual io.ebeaninternal.server.type.bindcapture.BindCapture.toString:()Ljava/lang/String;
aload 10
invokevirtual io.ebeaninternal.server.query.QueryPlanLoggerSqlServer.createPlan:(Lio/ebeaninternal/api/SpiQueryPlan;Ljava/lang/String;Ljava/lang/String;)Lio/ebeaninternal/api/SpiDbQueryPlan;
astore 15
29: aload 9
ifnull 30
aload 9
invokeinterface java.sql.PreparedStatement.close:()V
30: StackMap locals: io.ebeaninternal.server.query.QueryPlanLoggerSqlServer java.sql.Connection io.ebeaninternal.api.SpiQueryPlan io.ebeaninternal.server.type.bindcapture.BindCapture java.lang.Throwable java.lang.Throwable java.sql.Statement java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement java.lang.String top top top top io.ebeaninternal.api.SpiDbQueryPlan
StackMap stack:
aload 6
ldc "set statistics xml off"
invokeinterface java.sql.Statement.execute:(Ljava/lang/String;)Z
pop
31: aload 6
ifnull 32
aload 6
invokeinterface java.sql.Statement.close:()V
32: StackMap locals:
StackMap stack:
aload 15
areturn
end local 10 StackMap locals: io.ebeaninternal.server.query.QueryPlanLoggerSqlServer java.sql.Connection io.ebeaninternal.api.SpiQueryPlan io.ebeaninternal.server.type.bindcapture.BindCapture java.lang.Throwable java.lang.Throwable java.sql.Statement java.lang.Throwable java.lang.Throwable java.sql.PreparedStatement
StackMap stack: java.lang.Throwable
33: astore 7
34: aload 9
ifnull 35
aload 9
invokeinterface java.sql.PreparedStatement.close:()V
end local 9 StackMap locals:
StackMap stack:
35: aload 7
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
36: astore 8
aload 7
ifnonnull 37
aload 8
astore 7
goto 38
StackMap locals:
StackMap stack:
37: aload 7
aload 8
if_acmpeq 38
aload 7
aload 8
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
38: aload 7
athrow
StackMap locals: io.ebeaninternal.server.query.QueryPlanLoggerSqlServer java.sql.Connection io.ebeaninternal.api.SpiQueryPlan io.ebeaninternal.server.type.bindcapture.BindCapture java.lang.Throwable java.lang.Throwable java.sql.Statement
StackMap stack: java.sql.SQLException
39: astore 7
start local 7 40: getstatic io.ebeaninternal.server.query.QueryPlanLoggerSqlServer.queryPlanLog:Lorg/slf4j/Logger;
ldc "Could not log query plan"
aload 7
invokeinterface org.slf4j.Logger.error:(Ljava/lang/String;Ljava/lang/Throwable;)V
41: aload 6
ldc "set statistics xml off"
invokeinterface java.sql.Statement.execute:(Ljava/lang/String;)Z
pop
42: aload 6
ifnull 43
aload 6
invokeinterface java.sql.Statement.close:()V
43: StackMap locals: java.sql.SQLException
StackMap stack:
aconst_null
areturn
end local 7 44: StackMap locals: io.ebeaninternal.server.query.QueryPlanLoggerSqlServer java.sql.Connection io.ebeaninternal.api.SpiQueryPlan io.ebeaninternal.server.type.bindcapture.BindCapture java.lang.Throwable java.lang.Throwable java.sql.Statement
StackMap stack: java.lang.Throwable
astore 14
45: aload 6
ldc "set statistics xml off"
invokeinterface java.sql.Statement.execute:(Ljava/lang/String;)Z
pop
46: aload 14
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
47: astore 4
48: aload 6
ifnull 49
aload 6
invokeinterface java.sql.Statement.close:()V
end local 6 StackMap locals:
StackMap stack:
49: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
50: astore 5
aload 4
ifnonnull 51
aload 5
astore 4
goto 52
StackMap locals:
StackMap stack:
51: aload 4
aload 5
if_acmpeq 52
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
52: aload 4
athrow
StackMap locals: io.ebeaninternal.server.query.QueryPlanLoggerSqlServer java.sql.Connection io.ebeaninternal.api.SpiQueryPlan io.ebeaninternal.server.type.bindcapture.BindCapture
StackMap stack: java.sql.SQLException
53: astore 4
start local 4 54: getstatic io.ebeaninternal.server.query.QueryPlanLoggerSqlServer.queryPlanLog:Lorg/slf4j/Logger;
ldc "Could not log query plan"
aload 4
invokeinterface org.slf4j.Logger.error:(Ljava/lang/String;Ljava/lang/Throwable;)V
55: aconst_null
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 56 0 this Lio/ebeaninternal/server/query/QueryPlanLoggerSqlServer;
0 56 1 conn Ljava/sql/Connection;
0 56 2 plan Lio/ebeaninternal/api/SpiQueryPlan;
0 56 3 bind Lio/ebeaninternal/server/type/bindcapture/BindCapture;
2 49 6 stmt Ljava/sql/Statement;
6 35 9 explainStmt Ljava/sql/PreparedStatement;
9 11 12 rset Ljava/sql/ResultSet;
17 33 10 xml Ljava/lang/String;
20 24 13 rset Ljava/sql/ResultSet;
40 44 7 e Ljava/sql/SQLException;
54 56 4 e Ljava/sql/SQLException;
Exception table:
from to target type
8 12 12 any
20 22 23 any
19 25 25 any
6 29 33 any
5 30 36 any
33 36 36 any
4 30 39 Class java.sql.SQLException
33 39 39 Class java.sql.SQLException
4 30 44 any
33 41 44 any
2 31 47 any
33 42 47 any
44 47 47 any
1 32 50 any
33 43 50 any
44 50 50 any
0 32 53 Class java.sql.SQLException
33 43 53 Class java.sql.SQLException
44 53 53 Class java.sql.SQLException
MethodParameters:
Name Flags
conn
plan
bind
}
SourceFile: "QueryPlanLoggerSqlServer.java"