RFR: 8276904: Optional.toString() is unnecessarily expensive

2021-11-10 Thread Eamonn McManus
Use string concatenation instead of `String.format`. - Commit messages: - 8276904: Optional.toString() is unnecessarily expensive Changes: https://git.openjdk.java.net/jdk/pull/6337/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=6337&range=00 Issue: https://bugs.open

Integrated: 8231490: Ugly racy writes to ZipUtils.defaultBuf

2021-11-08 Thread Eamonn McManus
On Wed, 3 Nov 2021 21:46:08 GMT, Eamonn McManus wrote: > This change applies the minimal fix suggested in > https://bugs.openjdk.java.net/browse/JDK-8231490. > The bug text suggests possibilities for reworking, but notes that > this change is enough to fix the data race. > Addi

RFR: 8231490: Ugly racy writes to ZipUtils.defaultBuf

2021-11-03 Thread Eamonn McManus
This change applies the minimal fix suggested in https://bugs.openjdk.java.net/browse/JDK-8231490. The bug text suggests possibilities for reworking, but notes that this change is enough to fix the data race. Adding a regression test is probaby not feasible but we do observe that Java TSAN no longe

Re: RFR: 8188044: We need Math.unsignedMultiplyHigh [v2]

2021-07-01 Thread Eamonn McManus
On Thu, 1 Jul 2021 18:08:22 GMT, Brian Burkhalter wrote: >> Please consider this proposal to add a method >> `unsignedMultiplyHigh(long,long)` to each of `java.lang.Math` and >> `java.lang.StrictMath`. > > Brian Burkhalter has updated the pull request incrementally with one > additional commit

Re: RFR: 8188044: We need Math.unsignedMultiplyHigh [v2]

2021-07-01 Thread Eamonn McManus
On Thu, 1 Jul 2021 18:08:22 GMT, Brian Burkhalter wrote: >> Please consider this proposal to add a method >> `unsignedMultiplyHigh(long,long)` to each of `java.lang.Math` and >> `java.lang.StrictMath`. > > Brian Burkhalter has updated the pull request incrementally with one > additional commit

Re: RFR 9: 8138696 : java.lang.ref.Cleaner - an easy to use alternative to finalization

2015-10-01 Thread Eamonn McManus
I think this is a great idea. In addition to the NetBeans precedent cited in the Issue, I'll note that Guava has FinalizableReferenceQueue. Like the NetBeans solution, that has proved tricky to make collectable in a context where its ClassLoader might become otherwise unreferenced. Having the facil

Re: Enum.valueOf(String)

2013-08-20 Thread Eamonn McManus
this >> method to map from a name to the corresponding enum constant. All the >> constants of an enum type can be obtained by calling the implicit public >> static T[] values() method of that type. > > > -- Jon > > On 08/20/2013 11:00 AM, Eamonn McManus wrote: >>

Re: Enum.valueOf(String)

2013-08-20 Thread Eamonn McManus
As I mentioned earlier in the thread, it's kind of user-hostile for the Enum javadoc to send the user to the JLS instead of just saying, even briefly, what the methods are. Even more so since it doesn't actually link to the relevant section of the JLS or in fact to the JLS at all. This is not a com

Re: Enum.valueOf(String)

2013-08-16 Thread Eamonn McManus
The valueOf method in Enum subclasses is static, so Enum itself can't usefully declare it. But the description of the Enum class could say in text what the generated methods are, rather than referring the reader to the JLS without even a link. If you forget what the methods are you can always look

Re: JDK 8 code review request for JDK-8020095: Fix doclint warnings in java.util.regex

2013-07-09 Thread Eamonn McManus
While you are at it, ... is a lot simpler than Éamonn 2013/7/8 Joe Darcy > > PS Updated webrev so that the ... structure don't have an > empty "..." portion. > > http://cr.openjdk.java.net/~darcy/8020095.1/ > > -Joe > > > On 07/08/2013 07:10 PM, Joe Darcy wrote: >> >> Hello, >> >> Ple

Re: CloneNotSupportedException should extends RuntimeException not Exception

2012-10-14 Thread Eamonn McManus
Brian Goetz writes: > try { clone() } > catch (RuntimeException e) { ... } > catch (CloneNotSupportedException e1) { } I guess that means the change is not binary compatible either, since before the change the second catch block would run but after it the first one would. Éamonn 2012/10/1

Re: Reviewer needed: 6282196 There should be Math.mod(number, modulo) methods

2012-10-10 Thread Eamonn McManus
One edge case: the spec for floorDiv implies that floorDiv(Integer.MIN_VALUE, -1) should be Integer.MAX_VALUE but I believe the code produces Integer.MIN_VALUE. EIther the spec or the code should be fixed. Éamonn 2012/10/10 Roger Riggs : > A reviewer is needed for: > > 6282196 There should be Ma

Re: HashMap bug for large sizes

2012-06-01 Thread Eamonn McManus
at accesses start becoming linear once there are more than 1 << 30 entries, but fixing that is substantially harder than just fixing size(), and ConcurrentHashMap already provides a better alternative for such huge maps. Éamonn On 1 June 2012 12:28, Kasper Nielsen wrote: > On 01-06-2012 21

Re: HashMap bug for large sizes

2012-06-01 Thread Eamonn McManus
It seems to me that since the serialization of HashMaps with more than Integer.MAX_VALUE entries produces an output that cannot be deserialized, nobody can be using it, and we are free to change it. For example we could say that if the read size is -1 then the next item in the stream is a long that

Re: Request for review : 7121314 : Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec

2012-03-13 Thread Eamonn McManus
>>> Why don't we have >>> public T[] toArray(T[] a) ? >>> This would prevent from the cast >>> r[i] = (T)it.next(); >> >> It's too late to change the method signature now. > > Sorry about my english, I meant why don't we have had ... > In other words, has there been a reason that it was not like t

Re: RFR: 6988220: java.lang.ObjectName use of String.intern() causes major performance issues at scale

2012-02-24 Thread Eamonn McManus
wrote: > > I think I have not been clear enough here. > > I Agree with Eammon's argument, and anyway ok with this change. > > Olivier. > > > Olivier Lagneau said  on date 2/24/2012 12:38 PM: > > Hi Éamonn, > > Eamonn McManus said  on date 2/23/2012 8:44 P

Re: RFR: 6988220: java.lang.ObjectName use of String.intern() causes major performance issues at scale

2012-02-23 Thread Eamonn McManus
I am not sure it is worth the complexity of extra checks. Do you have data showing that ObjectName.equals usually returns false? In a successful HashMap lookup, for example, it will usually return true since the equals method is used to guard against collisions, and collisions are rare by design. M

Re: Review: JDK 8 CR for Support Integer overflow updated

2012-02-16 Thread Eamonn McManus
Reviewed-by: emcmanus Éamonn On 16 February 2012 08:23, Xueming Shen wrote: > I can do the commit. > > > On 2/16/2012 8:09 AM, Roger Riggs wrote: >> >> I don't anticipate making any more changes though a few of the >> comments deserve followup as a separate CR. >> >> Is there an OpenJDK commit

Re: Need reviewer: JDK 8 CR for Support Integer overflow

2012-02-13 Thread Eamonn McManus
Hacker's Delight gives a formula equivalent to this one on page 27: ((x ^ r) & (y ^ r)) < 0 Having said that, I think Florian's assertion that such a rewrite will be faster needs proof. In the original form... (x ^ r) < 0 && (x ^ y) >= 0 ...the first condition will be false half the time for ra

Re: Review: JDK 8 CR for Support Integer overflow

2012-02-06 Thread Eamonn McManus
I'm with Roger on this. > Sorry, but I can't agree with this. Developers get negation of numbers > wrong all the time by ignoring the special case. Its a big source of > hidden bugs. Increment/decrement are replaceable by add/subtract (with > less readability), but negate is not. First of all, ne

Re: Review: JDK 8 CR for Support Integer overflow

2012-02-06 Thread Eamonn McManus
Looks good to me (emcmanus). One really trivial thing is that Math.java:830 is indented one space too far. I thought that the common (int)value subexpression could be put in a variable in toIntExact but it turns out that javac generates more code in that case. Éamonn On 6 February 2012 13:16, R

Re: Need reviewer: JDK 8 CR for Support Integer overflow

2012-02-04 Thread Eamonn McManus
eloper needs to carefully implement and check where appropriate. > > The checking for overflow in addition, subtraction, and multiplication > are subtle or complex enough to warrant support in the runtime. > > Roger > > > > > On 02/03/2012 01:00 PM, Stephen Colebour

Re: Need reviewer: JDK 8 CR for Support Integer overflow

2012-02-03 Thread Eamonn McManus
== Integer.MIN_VALUE should be faster than x == -x as it's a cmp against a > constant whereas the latter requires negating x (that's a dependency too), > tying up a register to store the negation, and then doing the cmp. > > Sent from my phone > > On Feb 3, 2012 12:

Re: Need reviewer: JDK 8 CR for Support Integer overflow

2012-02-03 Thread Eamonn McManus
My initial remarks: In negateExact, the condition x == -x should be faster to evaluate than x == Integer.MIN_VALUE and reflects the intent just as well. In addExact and subtractExact, I would be inclined to implement the int versions using long arithmetic, like this: long lr = x + y; int r = (in

Re: Need reviewer: JDK 8 CR for Support Integer overflow

2012-02-03 Thread Eamonn McManus
On 3 February 2012 00:11, Florian Weimer wrote: > Would it make sense to replace (x ^ r) < 0 && (x ^ y) >= 0 > with (x ^ y ^ r) < 0? That would not be correct. For example, it would signal overflow for -1 + 1. Éamonn On 3 February 2012 00:11, Florian Weimer wrote: > * Roger Riggs: > > > to s

Re: JDK 8 code review request for initial unsigned integer arithmetic library support

2012-01-20 Thread Eamonn McManus
On 20 January 2012 17:53, Ulf Zibis wrote: > Am 21.01.2012 01:35, schrieb Joseph Darcy: > >> On 1/19/2012 8:05 AM, Ulf Zibis wrote: >> >>> But again, moving the entire method to BigInteger would additionally >>> avoid to clown around with the available BigInteger's public APIs. Having >>> the met

Re: JDK 8 code review request for initial unsigned integer arithmetic library support

2012-01-18 Thread Eamonn McManus
Ulf Zibis writes: > What about: > private static final BigInteger BEYOND_UNSIGNED_LONG = BigInteger.valueOf(1).**shiftLeft(64); > private static BigInteger toUnsignedBigInteger(long i) { > BigInteger result = BigInteger.valueOf(i); > if (i < 0L) > result = result.add(BEYOND_UNS

Re: JDK 8 code review request for initial unsigned integer arithmetic library support

2012-01-17 Thread Eamonn McManus
separate bug to update the spec there. The phrase "If the string cannot be parsed as a long" does not cover this case as obviously as it might. Cheers, Éamonn On 17 January 2012 18:54, Joe Darcy wrote: > Hi Eamonn, > > > On 01/15/2012 09:53 AM, Eamonn McManus wrote: >

Re: JDK 8 code review request for initial unsigned integer arithmetic library support

2012-01-15 Thread Eamonn McManus
It's great to see this! The API looks reasonable to me. > For the first cut, I've favored keeping the code straightforward over trickier but potentially faster algorithms. The code looks clean and correct to me. But I think we could afford one or two cheap improvements to Long without diving into

Re: Cleanup fallthrough in FilePermission and PropertyPermission was: Request for Review of 7116890 (Warning Cleanup java.io)

2011-12-05 Thread Eamonn McManus
To my mind, introducing a new shared parent means defining a new API that can be used by third-party subclasses. The point is that these permissions have an action list like "read,write,delete", with parsing code that converts this into a bitmask and toString() code that converts it back. I think t

Re: Expected behavior with -esa

2011-11-23 Thread Eamonn McManus
Isn't an AssertionError *always* a bug? Éamonn On 23 November 2011 12:04, Brandon Passanisi wrote: > > I'm currently looking at a bug report: > http://monaco.sfbay.sun.com/detail.jsf?cr=5066854 which describes an issue > where a simple program was run with the option -esa to enable system >

Re: hg: jdk8/tl/jdk: 7080020: Add conventional constructors to InternalError and VirtualMachineError

2011-08-25 Thread Eamonn McManus
Yeah, I guess so. We'd have to add @SuppressWarnings("serial") to some non-public classes but so what. Éamonn On 25/8/11 6:01 PM, Joe Darcy wrote: Eamonn McManus wrote: Could we perhaps have the JDK build use an annotation processor that requires every public class in jav

Re: hg: jdk8/tl/jdk: 7080020: Add conventional constructors to InternalError and VirtualMachineError

2011-08-25 Thread Eamonn McManus
Could we perhaps have the JDK build use an annotation processor that requires every public class in java.* javax.* etc that is serializable to either declare a serialVersionUID or have @SuppressWarnings("serial")? The amount of grief we have had over the years with this would easily justify the

Re: JDK 8 code review request for 7082231 "Put a @since 1.7 on System.lineSeparator"

2011-08-24 Thread Eamonn McManus
Looks good. But I am thinking that this shows we need a regression test that ensures that there are no missing @since tags, given that JDK 7 went out without this one. I am imagining two doclets, one of which creates a file with a list of the signatures of every public element (class, method, c

Re: Review for CR 6728865 : Improved heuristics for Collections.disjoint() [updated]

2010-12-21 Thread Eamonn McManus
I think that is still not quite right. The spec for Collection says that a Collection that does not support adding null values may or may not support looking them up. So in both places where you say "does not permit null values" I think you should probably say "does not permit looking up null v

Re: Review request for 6977034 Thread.getState() very slow

2010-12-06 Thread Eamonn McManus
On 12/04/10 04:22, Eamonn McManus wrote: Hi Mandy, This test: if ((threadStatus & JVMTI_THREAD_STATE_RUNNABLE) == 1) { is always false, since JVMTI_THREAD_STATE_RUNNABLE is 4. (NetBeans 7.0 helpfully flags this

Re: Review request for 6977034 Thread.getState() very slow

2010-12-05 Thread Eamonn McManus
never cache miss as the lookup table will be hot.) On 12/4/2010 7:22 AM, Eamonn McManus wrote: Hi Mandy, This test: if ((threadStatus&  JVMTI_THREAD_STATE_RUNNABLE) == 1) {

Re: Review request for 6977034 Thread.getState() very slow

2010-12-04 Thread Eamonn McManus
Hi Mandy, This test: if ((threadStatus & JVMTI_THREAD_STATE_RUNNABLE) == 1) { is always false, since JVMTI_THREAD_STATE_RUNNABLE is 4. (NetBeans 7.0 helpfully flags this; I'm not sure if earlier versions do.) But, once corrected, I think yo

hg: jdk7/tl/jdk: 6984037: jmx/management rebranding vendor changes needed

2010-10-29 Thread eamonn . mcmanus
Changeset: 7fee717f4707 Author:emcmanus Date: 2010-10-29 12:35 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/7fee717f4707 6984037: jmx/management rebranding vendor changes needed Reviewed-by: ohair ! make/netbeans/jmx/build.properties ! src/share/classes/com/sun/jmx/default

Re: Removing a layer of synchronization on Math.random

2010-06-05 Thread Eamonn McManus
It seems to me that if two threads call this Math.random() at the same time then two instances of Random() can be constructed. That contradicts the specification of the method, and is theoretically observable because the two values from Math.random() will typically not be a pair of values that

hg: jdk7/tl/jdk: 6851617: Remove JSR 255 (JMX API 2.0) from JDK 7

2009-10-21 Thread eamonn . mcmanus
Changeset: f23a3ae59169 Author:emcmanus Date: 2009-10-21 17:33 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/f23a3ae59169 6851617: Remove JSR 255 (JMX API 2.0) from JDK 7 Summary: See http://weblogs.java.net/blog/2009/06/16/jsr-255-jmx-api-20-postponed Reviewed-by: dfuchs

Re: j.u.Objects follow-up: deepEquals(Object, Object)?

2009-10-09 Thread Eamonn McManus
e importantly that it is easier to find than the new Object[] {x} trick. Éamonn McManus · JMX Spec Lead · http://weblogs.java.net/blog/emcmanus Ulf Zibis wrote: Am 09.10.2009 11:30, Eamonn McManus schrieb: Joseph D. Darcy wrote: > What are scenarios where this method would be used? I use a

Re: First round of java.util.Objects for code review (bug 6797535)

2009-10-09 Thread Eamonn McManus
saying violates the spec. Éamonn McManus · JMX Spec Lead · http://weblogs.java.net/blog/emcmanus Ulf Zibis wrote: Am 09.10.2009 10:56, Eamonn McManus schrieb: Hi, Marek Kozieł wrote: >> +public static boolean equals(Object a, Object b) { >> +return (a == b)

Re: j.u.Objects follow-up: deepEquals(Object, Object)?

2009-10-09 Thread Eamonn McManus
Joseph D. Darcy wrote: > What are scenarios where this method would be used? I use a similar method fairly often in unit tests. JUnit's assertEquals doesn't do the right thing if its arguments happen to be arrays, so I use the following simple if inefficient implementation: static void deepEqua

Re: Objects.toString [Re: What methods should go into a java.util.Objects class in JDK 7?]

2009-10-09 Thread Eamonn McManus
David Holmes - Sun Microsystems wrote: > So to me: String toString(Object o, String useIfNull) is the only method > that provides true utility in this case. I agree with that, and would just suggest to the person specifying the method to add a @see String#valueOf(Object). I find that the behavio

Re: First round of java.util.Objects for code review (bug 6797535)

2009-10-09 Thread Eamonn McManus
Hi, Marek Kozieł wrote: >> +public static boolean equals(Object a, Object b) { >> +return (a == b) || (a != null && a.equals(b)); >> +} > > Hello, > I would suggest other implementation of equals method: > >public static boolean equals(Object a, Object b) { >if (a

Re: Spec update for Class#getDeclaredMethods()

2009-07-16 Thread Eamonn McManus
Code that relies on Class.getDeclaredMethods() returning the methods in source-code order is currently wrong not just in theory but in practice. That the JDK appears to return them in that order is a fragile coincidence, as I explained in this blog entry. Apparently unrelated changes anywhere e

hg: jdk7/tl/jdk: 6456269: Add a GenericMBeanException so clients don't have to have server's exception classes present

2008-12-10 Thread eamonn . mcmanus
Changeset: c8db1ddbdba4 Author:emcmanus Date: 2008-12-10 11:59 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/c8db1ddbdba4 6456269: Add a GenericMBeanException so clients don't have to have server's exception classes present Reviewed-by: jfdenise, dfuchs ! src/share/classes

hg: jdk7/tl/jdk: 6780803: Wrong parameter name in description of EventClient::addListeners(); ...

2008-12-09 Thread eamonn . mcmanus
Changeset: 0b1c7f982cc0 Author:emcmanus Date: 2008-12-09 18:30 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/0b1c7f982cc0 6780803: Wrong parameter name in description of EventClient::addListeners() 6470295: Misleading exception message says context classloader when it isn't

hg: jdk7/tl/jdk: 6774918: @NotificationInfo is ineffective on MBeans that cannot send notifications

2008-12-09 Thread eamonn . mcmanus
Changeset: b4bf1806ee66 Author:emcmanus Date: 2008-12-09 12:01 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/b4bf1806ee66 6774918: @NotificationInfo is ineffective on MBeans that cannot send notifications Reviewed-by: jfdenise ! src/share/classes/com/sun/jmx/mbeanserver/MB

hg: jdk7/tl/jdk: 6776225: JMX.isNotificationSource wrong when DynamicWrapperMBean + SendNotification injection

2008-11-27 Thread eamonn . mcmanus
Changeset: 24a31530683d Author:emcmanus Date: 2008-11-27 15:44 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/24a31530683d 6776225: JMX.isNotificationSource wrong when DynamicWrapperMBean + SendNotification injection Reviewed-by: dfuchs, jfdenise ! src/share/classes/com/sun

hg: jdk7/tl/jdk: 6772779: @NotificationInfo does not create MBeanNotificationInfo in the MBean's MBeanInfo; ...

2008-11-20 Thread eamonn . mcmanus
Changeset: 098e456e860e Author:emcmanus Date: 2008-11-20 10:10 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/098e456e860e 6772779: @NotificationInfo does not create MBeanNotificationInfo in the MBean's MBeanInfo 6773593: CompositeDataSupport constructor javadoc is not in sy

hg: jdk7/tl/jdk: 6336968: Methods to convert AttributeList to/from Map; ...

2008-11-07 Thread eamonn . mcmanus
Changeset: 2410a0b48d06 Author:emcmanus Date: 2008-11-07 19:19 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/2410a0b48d06 6336968: Methods to convert AttributeList to/from Map 6750008: Add JMX.getSpecificationVersion(MBeanServerConnection) and document interop 6750472: Add

hg: jdk7/tl/jdk: 5072267: A way to communicate client context such as locale to the JMX server

2008-11-07 Thread eamonn . mcmanus
Changeset: 810a95940b99 Author:emcmanus Date: 2008-11-07 11:48 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/810a95940b99 5072267: A way to communicate client context such as locale to the JMX server Summary: Support for client contexts and also for localization of descripti

hg: jdk7/tl/jdk: 6766173: Spec should say that createMBean wraps a constructor RuntimeException in a RuntimeMBeanException

2008-10-31 Thread eamonn . mcmanus
Changeset: 8d17cc67a857 Author:emcmanus Date: 2008-10-31 17:34 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/8d17cc67a857 6766173: Spec should say that createMBean wraps a constructor RuntimeException in a RuntimeMBeanException Summary: JMX spec clarification Reviewed-by: d

hg: jdk7/tl/jdk: 6450848: make it easier to get the ObjectName of a JMX Proxy

2008-10-30 Thread eamonn . mcmanus
Changeset: cdfb6f963a60 Author:emcmanus Date: 2008-10-30 18:19 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/cdfb6f963a60 6450848: make it easier to get the ObjectName of a JMX Proxy Summary: Rework proxy javadoc to explain how to do this. Reviewed-by: sjiang ! src/share/cl

hg: jdk7/tl/jdk: 6252609: Two different default descriptor forms defined for ModelMBeanInfoSupport; ...

2008-10-30 Thread eamonn . mcmanus
Changeset: 8dcde0b16199 Author:emcmanus Date: 2008-10-30 17:46 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/8dcde0b16199 6252609: Two different default descriptor forms defined for ModelMBeanInfoSupport 6253137: Documentation for NotificationListener's handback parameter i

hg: jdk7/tl/jdk: 6763051: MXBean: Incorrect type names for parametrized dealing with arrays (openType); ...

2008-10-28 Thread eamonn . mcmanus
Changeset: 58e52eb46bd3 Author:emcmanus Date: 2008-10-28 18:21 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/58e52eb46bd3 6763051: MXBean: Incorrect type names for parametrized dealing with arrays (openType) 6713777: developer diagnosability of errors in uncompliant mxbean

hg: jdk7/tl/jdk: 6763639: Remove "rawtypes" warnings from JMX code

2008-10-27 Thread eamonn . mcmanus
Changeset: 76ecb928e83a Author:emcmanus Date: 2008-10-27 14:02 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/76ecb928e83a 6763639: Remove "rawtypes" warnings from JMX code Reviewed-by: dfuchs ! make/netbeans/jmx/build.xml ! src/share/classes/com/sun/jmx/event/LeaseManager.j

Re: Maintenance Reviews was: [PATCH] Enhance ServiceLoader to understand factory methods

2008-10-22 Thread Eamonn McManus
Jaroslav, I can act as sponsor for this change. My understanding from looking at the code is that the change is as follows. Today, you can supply an implementation of the SPI com.example.Foo by putting a jar file in the classpath (etc) that contains a file called META-INF/services/com.example.

hg: jdk7/tl/jdk: 6757225: MXBean: Incorrect type names for parametrized types, dealing with arrays

2008-10-08 Thread eamonn . mcmanus
Changeset: 86799e45c230 Author:emcmanus Date: 2008-10-08 18:38 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/86799e45c230 6757225: MXBean: Incorrect type names for parametrized types, dealing with arrays Reviewed-by: sjiang ! src/share/classes/com/sun/jmx/mbeanserver/MXBea

hg: jdk7/tl/jdk: 6750935: The expected NotCompliantMBeanException is not thrown for the custom MXBeanMappingFactory; ...

2008-09-24 Thread eamonn . mcmanus
Changeset: 48a790c67659 Author:emcmanus Date: 2008-09-24 15:19 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/48a790c67659 6750935: The expected NotCompliantMBeanException is not thrown for the custom MXBeanMappingFactory 6751872: MXBeanMappingFactory example says "implement

hg: jdk7/tl/jdk: 6747411: EventClient causes thread leaks

2008-09-12 Thread eamonn . mcmanus
Changeset: ebc38225b4a9 Author:emcmanus Date: 2008-09-12 15:17 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/ebc38225b4a9 6747411: EventClient causes thread leaks Summary: Reworked thread management in EventClient and related classes. Reviewed-by: sjiang, dfuchs ! src/share

hg: jdk7/tl/jdk: 6746759: Fix for 6734813 introduced build break

2008-09-10 Thread eamonn . mcmanus
Changeset: b35ccd203a7e Author:emcmanus Date: 2008-09-10 14:56 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/b35ccd203a7e 6746759: Fix for 6734813 introduced build break Reviewed-by: dfuchs ! src/share/classes/sun/management/ClassLoadingImpl.java ! src/share/classes/sun/man

hg: jdk7/tl/jdk: 6734813: Provide a way to construct an ObjectName without checked exceptions; ...

2008-09-10 Thread eamonn . mcmanus
Changeset: 2b44dd8ed72d Author:emcmanus Date: 2008-09-10 13:36 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/2b44dd8ed72d 6734813: Provide a way to construct an ObjectName without checked exceptions 6746649: ObjectName constructors and methods declare unchecked exceptions in

hg: jdk7/tl/jdk: 6746196: Some JMX classes do not compile with Eclipse compiler

2008-09-09 Thread eamonn . mcmanus
Changeset: 1643868af837 Author:emcmanus Date: 2008-09-09 14:57 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/1643868af837 6746196: Some JMX classes do not compile with Eclipse compiler Reviewed-by: dfuchs Contributed-by: [EMAIL PROTECTED] ! src/share/classes/com/sun/jmx/mbe

hg: jdk7/tl/jdk: 6744132: Spurious failures from test/javax/management/MBeanInfo/NotificationInfoTest.java

2008-09-03 Thread eamonn . mcmanus
Changeset: 00ea8fc81867 Author:emcmanus Date: 2008-09-03 14:31 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/00ea8fc81867 6744132: Spurious failures from test/javax/management/MBeanInfo/NotificationInfoTest.java Reviewed-by: dfuchs ! test/javax/management/MBeanInfo/Notific

hg: jdk7/tl/jdk: 6405862: Allow CompositeType to have zero items; ...

2008-09-02 Thread eamonn . mcmanus
Changeset: 1d1d66438d11 Author:emcmanus Date: 2008-09-02 14:14 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/1d1d66438d11 6405862: Allow CompositeType to have zero items 6737133: Compilation failure of test/javax/management/eventService/LeaseManagerDeadlockTest.java 6737140

hg: jdk7/tl/jdk: 6731410: JMXServiceURL cannot use @ConstructorProperties for compatibility reasons

2008-09-01 Thread eamonn . mcmanus
Changeset: 0a427d0e70a7 Author:emcmanus Date: 2008-09-01 17:11 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/0a427d0e70a7 6731410: JMXServiceURL cannot use @ConstructorProperties for compatibility reasons Reviewed-by: dfuchs ! src/share/classes/javax/management/MXBean.java

hg: jdk7/tl/jdk: 5041784: (reflect) generic signature methods needlessly return generic arrays

2008-08-27 Thread eamonn . mcmanus
Changeset: 7afa7314d883 Author:emcmanus Date: 2008-08-27 11:03 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/7afa7314d883 5041784: (reflect) generic signature methods needlessly return generic arrays Reviewed-by: darcy ! src/share/classes/sun/reflect/generics/factory/CoreRe

hg: jdk7/tl/jdk: 6610174: Improve CompositeDataSupport.toString when it includes arrays

2008-08-08 Thread eamonn . mcmanus
Changeset: 343d63bb2609 Author:emcmanus Date: 2008-08-08 18:36 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/343d63bb2609 6610174: Improve CompositeDataSupport.toString when it includes arrays Reviewed-by: dfuchs ! src/share/classes/javax/management/openmbean/CompositeDataS

hg: jdk7/tl/jdk: 2 new changesets

2008-08-08 Thread eamonn . mcmanus
Changeset: e9de9ae8c214 Author:emcmanus Date: 2008-08-08 15:08 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/e9de9ae8c214 6334663: TabularDataSupport should be able to return values in the insertion order Reviewed-by: dfuchs ! src/share/classes/com/sun/jmx/mbeanserver/Defa

hg: jdk7/tl/jdk: 6717257: MBeanServer doesn't describe RuntimeException for methods inherited from MBeanServerConnection

2008-08-07 Thread eamonn . mcmanus
Changeset: afe18ad188a1 Author:emcmanus Date: 2008-08-07 16:25 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/afe18ad188a1 6717257: MBeanServer doesn't describe RuntimeException for methods inherited from MBeanServerConnection Reviewed-by: dfuchs ! src/share/classes/javax/m

hg: jdk7/tl/jdk: 6734273: Minor updates to documentation of Custom MXBean Mappings

2008-08-06 Thread eamonn . mcmanus
Changeset: 13b8426bb0cd Author:emcmanus Date: 2008-08-06 18:28 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/13b8426bb0cd 6734273: Minor updates to documentation of Custom MXBean Mappings Reviewed-by: dfuchs ! src/share/classes/javax/management/MXBean.java ! src/share/class

hg: jdk7/tl/jdk: 6733589: Intermittent failure of test/javax/management/eventService/SharingThreadTest.java

2008-08-05 Thread eamonn . mcmanus
Changeset: 00c40e393a75 Author:emcmanus Date: 2008-08-05 10:49 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/00c40e393a75 6733589: Intermittent failure of test/javax/management/eventService/SharingThreadTest.java Reviewed-by: sjiang ! test/javax/management/eventService/Sha

hg: jdk7/tl/jdk: 5108776: Add reliable event handling to the JMX API; ...

2008-07-31 Thread eamonn . mcmanus
Changeset: 8f52c4d1d934 Author:sjiang Date: 2008-07-31 15:31 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/8f52c4d1d934 5108776: Add reliable event handling to the JMX API 6218920: API bug - impossible to delete last MBeanServerForwarder on a connector Reviewed-by: emcmanus

hg: jdk7/tl/jdk: 6323980: Annotations to simplify MBean development

2008-07-09 Thread eamonn . mcmanus
Changeset: afa8b71365aa Author:emcmanus Date: 2008-07-09 10:36 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/afa8b71365aa 6323980: Annotations to simplify MBean development Reviewed-by: jfdenise, dfuchs ! src/share/classes/com/sun/jmx/interceptor/DefaultMBeanServerIntercept

hg: jdk7/tl/jdk: 6601652: MXBeans: no IllegalArgumentException in the ex. chain for SortedSet/Map with a non-null comparator()

2008-07-04 Thread eamonn . mcmanus
Changeset: a031e88c72ec Author:emcmanus Date: 2008-07-04 18:55 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/a031e88c72ec 6601652: MXBeans: no IllegalArgumentException in the ex. chain for SortedSet/Map with a non-null comparator() Summary: Forward-port this bug fix from JD

hg: jdk7/tl/jdk: 2 new changesets

2008-06-05 Thread eamonn . mcmanus
Changeset: b715e82ef7e1 Author:emcmanus Date: 2008-06-05 13:40 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/b715e82ef7e1 6701498: Change JMX query language to use * and ? as wildcards rather than % and _ Reviewed-by: dfuchs ! src/share/classes/javax/management/MatchQueryE

hg: jdk7/tl/jdk: 6703552: Missing files from changeset for 6701459

2008-05-16 Thread eamonn . mcmanus
Changeset: 1483094a7c17 Author:emcmanus Date: 2008-05-16 11:34 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/1483094a7c17 6703552: Missing files from changeset for 6701459 Summary: Previous push missed a small number of files. Reviewed-by: dfuchs ! src/share/classes/javax/

Re: hg: jdk7/tl/jdk: 6701459: Synchronization bug pattern found in javax.management.relation.RelationService

2008-05-15 Thread Eamonn McManus
Rob, You write: In the change sets some variable postfixes were renamed Nbr -> No Example: Long seqNbr = getNotificationSequenceNumber(); + Long seqNo = atomicSeqNo.incrementAndGet(); The abbreviation No could also could mean: No as in 'Yes'/'No' , No as in 'Notation', besides 'Numb

hg: jdk7/tl/jdk: 6701459: Synchronization bug pattern found in javax.management.relation.RelationService

2008-05-14 Thread eamonn . mcmanus
Changeset: 94ded5c8cfba Author:emcmanus Date: 2008-05-14 18:38 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/94ded5c8cfba 6701459: Synchronization bug pattern found in javax.management.relation.RelationService Summary: Fixed this and many other problems found by FindBugs. R

hg: jdk7/tl/jdk: 6692027: Custom subclasses of QueryEval don't serialize

2008-04-22 Thread eamonn . mcmanus
Changeset: 92ea0ac77d2f Author:emcmanus Date: 2008-04-22 18:58 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/92ea0ac77d2f 6692027: Custom subclasses of QueryEval don't serialize Summary: Remove non-public superclass of QueryEval Reviewed-by: dfuchs ! src/share/classes/javax

hg: jdk7/tl/jdk: 6610917: Define a generic NotificationFilter

2008-04-01 Thread eamonn . mcmanus
Changeset: 2965459a8ee7 Author:emcmanus Date: 2008-04-01 14:45 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/2965459a8ee7 6610917: Define a generic NotificationFilter Summary: Adds javax.management.QueryNotificationFilter Reviewed-by: dfuchs ! src/share/classes/com/sun/jmx/

hg: jdk7/tl/jdk: 6643627: JMX source code includes incorrect Java code

2008-03-21 Thread eamonn . mcmanus
Changeset: 01f7eeea81f1 Author:emcmanus Date: 2008-03-21 18:07 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/01f7eeea81f1 6643627: JMX source code includes incorrect Java code Summary: javac compiler bug accepts incorrect code; JMX code inadvertently has such code Reviewed-

hg: jdk7/tl/jdk: 6649542: Document explicitly in registerMBean etc that MBeanServerNotification is emitted

2008-03-21 Thread eamonn . mcmanus
Changeset: 9a97ca4eb8b7 Author:emcmanus Date: 2008-03-21 09:49 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/9a97ca4eb8b7 6649542: Document explicitly in registerMBean etc that MBeanServerNotification is emitted Summary: Make spec more readable by adding cross-references.

hg: jdk7/tl/jdk: 6675768: NoSuchElementException thrown in RequiredModelMBean when tracing enabled

2008-03-19 Thread eamonn . mcmanus
Changeset: 0d4923ce2707 Author:emcmanus Date: 2008-03-19 15:17 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/0d4923ce2707 6675768: NoSuchElementException thrown in RequiredModelMBean when tracing enabled Summary: Rewrite logging in RequiredModelMBean.addAttributeChangeNoti

hg: jdk7/tl/jdk: 6670375: Missing unit test for 6607114 (Make JMXServiceURL reconstructible)

2008-03-03 Thread eamonn . mcmanus
Changeset: 302cbd0a8ace Author:emcmanus Date: 2008-03-03 15:44 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/302cbd0a8ace 6670375: Missing unit test for 6607114 (Make JMXServiceURL reconstructible) Summary: Current setup doesn't allow two pushes with same CR number Reviewed-

hg: jdk7/tl/jdk: 2 new changesets

2008-03-03 Thread eamonn . mcmanus
Changeset: 10256bd4afcd Author:emcmanus Date: 2008-03-03 15:28 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/10256bd4afcd 6607114: Make JMXServiceURL reconstructible in MXBeans Summary: Add @ConstructorProperties tag to JMXServiceURL Reviewed-by: dfuchs ! src/share/classes/

hg: jdk7/tl/jdk: 6602310: Extensions to Query API for JMX 2.0; ...

2008-03-03 Thread eamonn . mcmanus
Changeset: 41d9c673dd9d Author:emcmanus Date: 2008-03-03 10:32 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/41d9c673dd9d 6602310: Extensions to Query API for JMX 2.0 6604768: IN queries require their arguments to be constants Summary: New JMX query language and support for

Re: jmx-dev [Fwd: Fix compiler problem]

2007-12-19 Thread Eamonn McManus
Thanks for bringing this to our attention, Alan. Roman is right - the code in question should not compile and we should change it as he suggests so that it is correct. (For people interested in the gory details, the method T getAnnotation(Class annotationClass) returns T only if it is called