forked from arthurblake/log4jdbc
-
Notifications
You must be signed in to change notification settings - Fork 1
/
CHANGES
executable file
·209 lines (142 loc) · 8.89 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
2015-09-30 1.3 release
o add new option, "log4jdbc.trim.sql.lines" which when set,
will trim SQL line by line (for beginning of line, only trimming
consistent white space) If this option is selected, the TrimSql
option will be ignored.
o remove JDBC 3 version (not all scripts updated yet.)
o getArray method improperly labeled as getURL (Issue 61.)
o bug fix ResultSetSpy.getStatement should return wrapped Statement,
not real Statement (Issue 55.)
o move to GitHub (Google Code shutting down.)
2012-02-17 1.2 Release
o escape single quotes in PreparedStatement/CallableStatement bind variables (Issue 36.)
o process SQL consistently when the sql is dumped because an exception occurred.
o new SQL formatter to more reliably dump sql that can be run for MySql (Issue 34.)
o don't show debug info in sql timing dump unless debug is enabled on the logger
(to make the sql timing dump consistent with the way other the loggers work)
o add new option, log4jdbc.trim.sql.extrablanklines for removing
extra blank lines from sql output.
o fix issue where extra connection was being created when
ResultSet.getStatement was being called (Issue 33.)
o performance enhancement when logging not enabled (Issue 29.)
2010-06-09 1.2 beta 2 Release
o add new option, log4jdbc.auto.load.popular.drivers for
disabling auto-loading of drivers
o look first for log4jdbc property settings in optional
log4jdbc.properties file in the classpath.
o Fix non-threadsafe usage of SimpleDateFormat (Issue 18)
o add new option, log4jdbc.trim.sql to trim the SQL before logging
it.
o add new option, log4jdbc.suppress.generated.keys.exception that
will ignore any exception produced by the method,
Statement.getGeneratedKeys(). This flag is useful in Coldfusion
environments which typically call this method after every update,
even if unwarranted, and ignoring the exception, thus clogging up
the logs with these exception reports.
o add support for the newer oracle.jdbc.OracleDriver driver (the
older oracle.jdbc.driver.OracleDriver driver is still supported
as well) and add corrected date formatting for Oracle.
o fix possible null pointer issue with setBlob and setClob (Issue 21)
2010-03-20 1.2 beta 1 Release
o Check for exception that should not, but in some cases could
occur when trying to format parameter arguments.
o Use only one type of date format so that time portion of Date
types is not dropped!
o use to_date function for Oracle (Issue 14)
o performance improvements
o fix: respect DumpSqlMaxLineLength option.
o various other fixes (including Issues 8 and 9)
2009-02-26 1.2 alpha 2 Release
o (Issue 1) fix bug where batch of logged SQL wasn't cleared
properly when using batched SQL.
o Added log4jdbc.statement.warn system property; defaults to false.
This is a new option to control the SQL Statement warnings in the
log. When Statement objects are used by the application, the SQL
in the log is preceded by "{WARNING: Statement used to run SQL}"
This was always on in previous releases. Now it
is off by default, and can be turned on by setting this property.
o (Issue 2) add getter methods across the board for the real
wrapped object.
2008-11-08 1.2 alpha 1 Release
o added a new logger "jdbc.connection" to dump connection open and
close events as well as dumping all open connection numbers. This
is very useful for hunting down connection leak problems.
o several new options to produce better SQL output:
log4jdbc.dump.booleanastruefalse - many RDBMS's don't have a
native boolean type and store booleans as a 1 or 0. Setting this
option to false will show boolean bind variables as 1 or 0.
Setting this to true will show the boolean as true or false.
(Note that the default for this setting is false, contrary to the
previous way log4jdbc worked.)
log4jdbc.dump.sql.maxlinelength - can be used to insert line
breaks into long running SQL (at white space positions.)
previous versions of log4jdbc did this automatically with a value
of 90 (the default value is 90.) This line breaking can be turned
off completely by setting this to 0.
log4jdbc.dump.fulldebugstacktrace - can be used in extreme
debugging circumstances when you want to be able to see the full
stack trace in the debug output. Be extra careful when using
this as it will obviously produce much much more logging output.
o dump a null bind variable as NULL instead of <null> for more
accurate and reuseable SQL output.
o several new options for controlling what types of SQL statements
are logged:
log4jdbc.dump.sql.select default value is true
log4jdbc.dump.sql.insert default value is true
log4jdbc.dump.sql.update default value is true
log4jdbc.dump.sql.delete default value is true
log4jdbc.dump.sql.create default value is true
The default values for all of these are true, but they can be
selectively turned on and off to filter out unwanted types of sql
statements. For example, setting log4jdbc.dump.sql.delete will
cause all DELETE sql commands to not be logged.
o A new option to add a semi colon to the end of the dumped sql:
log4jdbc.dump.sql.addsemicolon default value is false
Sometimes it's useful to use log4jdbc to produce sql scripts that
can later be fed back into a SQL tool to execute against a
database and this option can help to produce more re-useable sql
output script data from a log file.
o added Microsoft SQL Server 2005 Driver
(com.microsoft.sqlserver.jdbc.SQLServerDriver) to
list of "well known" drivers that log4jdbc looks for at startup.
(thanks to Rob Richards for pointing this out)
Note that the SQL Server 2000 Driver with the confusing name
of (com.microsoft.jdbc.sqlserver.SQLServerDriver) is also still
supported.
o other miscellaneous improvements.
2008-04-11 1.1 Release
o upgrade to SLF4J 1.5. Note that log4jdbc should still work with
any older (or newer) version of SLF4J too.
o slightly better fault tolerance for when loading/probing of
popular JDBC drivers fails for any reason.
2007-11-10 1.1 beta 1 Release
o added HSQLDB (org.hsqldb.jdbcDriver) and H2 (org.h2.Driver) to
list of "well known" drivers that log4jdbc looks for at startup.
o added log4jdbc.sqltiming.warn.threshold and
log4jdbc.sqltiming.error.threshold system property settings to
greatly aid in finding slow running sql. Special thanks to
Lilianne E. Blaze for the idea and initial implementation.
2007-07-25 1.1 alpha 2 Release
o JDBC 4.0 support!
o fix Null pointer exception bug that could happen with setObject
call on PreparedStatementSpy
o added MySQL (com.mysql.jdbc.Driver) and PostgreSQL
(org.postgresql.Driver) to list of "well known" drivers that
log4jdbc looks for at startup.
2007-05-29 1.1 alpha 1 Release
o Fixed problem where when sql timing log was the only log turned
on, log4jdbc would not recognize that logging was on at all.
o report sql exceptions in the sql timing log as well (when they
occured during sql execution) and prominently show that the sql
FAILED, and display how long it tried to chug on the sql before
the exception was thrown.
o Switch to Simple Logging Facade for Java SLF4J instead of using
log4j directly, so that any underlying logging system can be
easily used.
o option added to ant build script to generate javadoc with ydoc
to include UML diagrams within the javadoc.
o dump batched sql correctly.
o add simple command line program (PostLogProfilerProcessor) for
processing sqltiming log files to create a simple profiling
report from log data.
2007-04-21 Initial 1.0 Release