Bug 72154 - Support for simple dump file
Summary: Support for simple dump file
Status: RESOLVED FIXED
Alias: None
Product: AspectJ
Classification: Tools
Component: Compiler (show other bugs)
Version: 1.2.1   Edit
Hardware: All All
: P3 enhancement (vote)
Target Milestone: 1.2.1   Edit
Assignee: Adrian Colyer CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-08-18 06:00 EDT by Matthew Webster CLA
Modified: 2004-10-21 04:32 EDT (History)
1 user (show)

See Also:


Attachments
Dump class and testcases (9.58 KB, application/octet-stream)
2004-08-19 13:04 EDT, Matthew Webster CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Matthew Webster CLA 2004-08-18 06:00:35 EDT
When the compiler terminates abnormally (exception) or behaves unexpectedly 
(warning/error/abort) a simple dump of the compiler state should be produced 
to aid problem diagnosis. The content and conditions under which the dump is 
produced should be configurable by the user but the facility should be enabled 
by default for exceptions. Consequently its inclusion should have negligible 
impact on compiler performance and footprint. The file should be attached to 
bug reports to give a complete and objective description of the user’s 
environment and support problem resolution where a testcase cannot be provided.

One approach is to write a uniquely name file (using date & time) in the 
current directory e.g “ajcore.20040818.105200.txt” which should be human 
readable (it can be zipped if large) to allow the user to potentially diagnose 
their own problems or remove potentially sensitive data before submission. It 
should contain basic information such as AspectJ version, system properties 
and command line as well as failure information such as _full_ exception stack 
trace, compiler messages and internal compiler state.
Comment 1 Matthew Webster CLA 2004-08-19 13:04:53 EDT
Created attachment 14077 [details]
Dump class and testcases

A new Dump facility consisting of a single org.aspectj.weaver.Dump class with
static methods to generate dump files. Configuration methods and system
properties determine whether a file is produced. By default the file contains
the AspectJ version, system properties, command line, full classpath and
compiler messages. An extensible visitor mechanism allows classes to provide
additional state information.
Comment 2 Andrew Clement CLA 2004-08-27 12:30:24 EDT
Matthews code is now fully integrated.
Comment 3 Adrian Colyer CLA 2004-10-21 04:32:08 EDT
Fix released as part of AspectJ 1.2.1