-
Notifications
You must be signed in to change notification settings - Fork 39
/
ReleaseNotes.txt
232 lines (181 loc) · 8.33 KB
/
ReleaseNotes.txt
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
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
Aprof 32
** Defect Report
APROF-121: VerifyError on delegating constructors
Aprof 31
** Defect Report
APROF-120: Type annotations are not supported
APROF-119: Deadlock with custom ClassLoader [github #3]
Aprof 30
** Change Request
APROF-68: Add Hashtable, Vector and xxFormat methods to default tracking configuration
APROF-115: Lambda capture memory allocations are not tracked nor reported in any way
APROF-116: Distinguish transformed and analyzed classes in "verbose" log
** Defect Report
APROF-117: Invocations to runtime classes (like collections) are not properly tracked via interfaces
** Improvement
APROF-118: Drop "arrays" and "location" configuration options (they are always true) and streamline analyze/transform code
Aprof 29
** Change Request
APROF-113: Check for allocations that were eliminated by HotSpot and mark them separately in reports
APROF-114: Migrate to ASM 5.0.3, support Java 8
** Improvement
APROF-112: Experimental system option to count regular object and array allocations after their "new" bytecode (not before)
Aprof 28
** Change Request
APROF-104: Drop support for an empty list of tracked methods with a meaning of all methods. Use "*" to track all methods.
** Defect Report
APROF-106: Fix "signature" configuration option. String constructor signatures shall be distinguished by default.
APROF-108: Tracking of calls to tracked methods via interface/super-classes fails when they are loaded in non-default class loader
** Improvement
APROF-102: Improve arrays size tracking, so that it does not prevent stack allocation
APROF-103: More benchmarks to test JVM escape analysis capabilities
APROF-105: A system option to track allocation details during class transformation at a very small performance penalty on all allocations
APROF-107: Selftests for basic details tracking configuration
APROF-109: Option to log into file
APROF-110: Completely redesign tracked classes info loading/caching (multiple classloaders support, performance)
APROF-111: "noframes" option to omit stackframes generation (very fast, but does not work with Swing)
Aprof 27
** Change Request
APROF-83: Option to dump aprof-instrumented classes
APROF-97: Add timestamp to aprof output in the same format as GC date stamps (-XX:+PrintGCDateStamps)
** Defect Report
APROF-85: "Allocated objects in xxx locations of yyy classes" stats in report are wrong
APROF-86: Array allocations are counted twice
APROF-87: Reflection allocation location stack is not tracked
APROF-88: Arrays.copyOf and Arrays.copyOfRange HotSpot intrinsic memory allocation is not tracked
APROF-99: Unknown locations shall be attributed to their parent known locations in "Top allocation-inducing locations" section
** Improvement
APROF-82: JMH benchmarks module with simple microbenchmarks to measure aprof performance impact
APROF-84: Support "size" without "unknown", improve performance, turn "unknown" off by default
APROF-89: Allocations during aprof transformation shall be always recorded under a separate location
APROF-90: Object.clone invocation locations shall be counted in overall location totals together with regular allocation locations
APROF-91: Optimize transformation performance
APROF-92: Reduce internal locations that are tracked without details to an absolute minimum
APROF-93: Use long size counters to simplify code and avoid overflows on allocation mirco-tests
APROF-94: Rewrite IndexedMap children hash for speed and memory footprint
APROF-95: Allocations during aprof dumps shall be tracked
APROF-96: Optimize array allocation tracking (don't use extra arrays without histograms)
APROF-98: Print average objects sizes in "Top allocation-inducing locations" section
APROF-100: Print last report with the configured threshold and set default threshold to 0.01%
APROF-101: Run aprof selftests during "integration-test" of the project build
Aprof 26
** Change Request
APROF-78: Add more methods to the default tracked list (formatting, i/o, thread)
APROF-81: Report top allocation-inducing locations with data types allocated from them
** Defect Report
APROF-80: Counters in <unknown> locations are incorrectly tracked (forgotten)
** Improvement
APROF-79: Reduce garbage during report generation
Aprof 25
- Updated Copyright dates to 2014
** Change Request
APROF-76: Print total allocation percentages
** Defect Report
APROF-73: Broken reports (totals do not add up)
APROF-75: Selftest does not pass on 64bit JVM
** Improvement
APROF-74: Improve memory consumption
Aprof 24
- NoClassDefFoundError for java.lang.Object fixed
Aprof 23
- Rebuild under Java 1.5.
- Minor NullPointerException in AprofTransformed fixed.
Aprof 22
** Defect Reports
[APROF-65] Aprof does not work for code that is compiled with Java 7
Aprof 21
** Change Request
APROF-59: Add toString methods and other garabage-producers in standard boxing class to the default config
APROF-63: Improve format of details configurations
APROF-67: Analyze details of all allocations that Aprof performs itself during class transformation phase
** Defect Report
APROF-61: Unknown locations in simple code
APROF-62: Failed to transform while tracking java.lang.Integer methods
** Improvement
APROF-60: Improve aprof garbage rate by getting rid of extra location string concatenation and parsing
APROF-66: Improve runtime performance and memory footprint by using Unsafe instead of AtomicXXX classes
Aprof 20
** Change Request
APROF-52: Core: improve performance of tracked methods
APROF-58: Core: improve logging during class transformation
** Defect Report
APROF-50: Core: exception is printed on application shutdown
APROF-53: Core: incorrect statistics after exception in tracked method
APROF-56: Core: close open resources
** Improvement
APROF-57: Core: migrate to improved version of jar class loader
** Task
APROF-55: Core: investigate serialization/deserialization
Aprof 19
** Change Request
APROF-46: Apply GPLv3 license
APROF-47: Core: by default 'fileconfig' parameter shall be zero
APROF-48: Core: track boxing methods
** Defect Report
APROF-49: Core: incorrect uptime duration is shown in statistics dumps
Aprof 18
** Change Request
APROF-38: Add ASM licence notice
APROF-40: Core: transformer shall print notification when any problems arise
APROF-41: Core: aprof internal object allocations shall be collected under appropriate location instead of <unknown>
APROF-43: Core: remove 'frames' configuration parameter
APROF-45: Core: add ability to store multiple snapshot dumps in one file
** Defect Report
APROF-39: Core: transformer shall use EXPAND_FRAMES flag when reading classes
APROF-44: Core: network dump does not flush its output
Aprof 17
** Change Request
APROF-22: Add Aprof sources to release bundle
APROF-35: Core: default configuration enhancements
APROF-37: Mozilla Public Licence Version 2.0 header
** Defect Report
APROF-34: Core: number of classes and locations is not shown
Aprof 16
** Change Request
APROF-33: Core: dumper thread should not die on thrown exceptions
** Defect Report
APROF-32: Core: NPE during snapshot generation
Aprof 15
** Defect Report
APROF-29: Core: no allocation statistics is collected
APROF-30: Core: memory leak on snapshot generation
APROF-31: Core: NPE on checking overflow threshold
Aprof 14
** Defect Report
APROF-28: Core: incorrect statistics is shown
Aprof 13
** Change Request
APROF-23: Mozilla Public Licence Version 1.1 header
APROF-24: Core: external configuration file
APROF-25: Core: histograms should be supported on per-class basis
APROF-27: Core: aggregate statistics for Proxy classes
** Improvement
APROF-26: Core: improve tracked classes resolving process
Aprof 12
** Change Request
APROF-19: Core: add transformer configuration
Aprof 11
** Change Request
APROF-21: Core: aggregate statistics for similar class names
** Defect Report
APROF-20: Core: out of memory in PermGen space
Aprof 10
** Change Request
APROF-18: Core: add rotation to snapshots file
** Task
APROF-17: Migrate to maven for release building
Aprof 9
** Change Request
APROF-16: Core: array length histograms should be disabled by default
Aprof 8
** Change Request
APROF-11: Core: all libraries should be loaded in a separate ClassLoader
APROF-12: Core: migrate to ASM 3.3
APROF-14: Core: add ability to configure usage of ASM parameter COMPUTE_FRAMES
APROF-15: Core: add array length histograms
** Defect Report
APROF-13: Core: Aprof does not work on Java 6
** Improvement
APROF-9: Existing code cleanup
** Task
APROF-8: Core, GUI: merge core and GUI repositories