Am 17.08.2011 03:11, schrieb joe.da...@oracle.com:
Hello.
On 8/14/2011 11:17 PM, Sebastian Sickelmann wrote:
Hi,
some time ago, i wrote[5] with Joe and David about advancing some
exception-types to the 4 standard ctors.
The first Exception i have looked at was InternalError and now(after
some struggeling with gnumake and hg) my patches for reviewing are
ready.
I uploaded them at [4]
I split the changes into 3 parts.
1. Added 2 ctors to InternalError and VirtualMachineError****[1]
2. Use the two ctors of InternalError****[2] (based on [1])
3. Chain Rootcause into InternalError**[3] (based also on [1])
I think part 1 and 2 are uncritical. Part 3 is more critical because
it changes behavior (exception-chaining). But i don't think that part
3 is unimportable, because in case of an InternalError (use should
not be able to recover) there shouldn't be a problem with a little
longer exception-chain.
Is there someone who what to sponsor this or parts of it?
[1] https://bugs.openjdk.java.net/attachment.cgi?id=233
[2] https://bugs.openjdk.java.net/attachment.cgi?id=234
[3] https://bugs.openjdk.java.net/attachment.cgi?id=235
[4] https://bugs.openjdk.java.net/show_bug.cgi?id=100201
[5]
http://mail.openjdk.java.net/pipermail/core-libs-dev/2011-August/007304.html
I am willing to sponsor this work and I've filed bug 7080020 "Add
conventional constructors to InternalError" for it.
For adding constructors to InternalError (or VirtualMachineError), the
push that adds the constructors should include some usage of them.
Therefore, at least portions of 1) and 2) above should be combined.
If there are easy to find usages of a cause for VirtualMachineError,
then those should be included at the same time any new constructors
are added there.
VirtualMachineError is changed because it is the abstract super class of
InternalError so use of the VirtualMachineError ctors is inside of the
InternalError ctors
There is some currently Oracle-internal paperwork which needs to be
filed to make an API change; I'll file that paperwork once there is
verification on whether updates to both InternalError and
VirtualMachineError will be included in this round of work. The
paperwork needs to be approved before the change is pushed and
typically takes a few days to be processed.
OK. That much work for just chaining up exceptions.
I am happy that i needn't to do this paperwork. I hope it's virtual
paperwork. ;-)
I will post the change in 2 webrevs than.
One for the smaller part (Change of the InternalError itself + some
small changes "initCause usage to ctor parameter")
And one for the bigger part (Chain all uses of InternalError with the
root-cause if any root-cause exists)
i must rebase it again. Will post webrev url at the other thread in short.
Cheers,
-Joe
-- Sebastian