Re: New IBM VME available soon
Olivier dixit: ok, I just tested myself on Windows and it seems that the RI ignores environment variable changes, so I guess it's fine if we stick with what we have in Harmony. Now that I think about it, I remember someone complaining once on a Java newsgroup that changing the CLASSPATH environment variable had no effect on a running JVM. He got an education in Java class loading. :-) Chris -- Chris Gray/k/ Embedded Java Solutions BE0503765045 Embedded Mobile Java, OSGihttp://www.k-embedded-java.com/ [EMAIL PROTECTED] +32 3 216 0369 - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: New IBM VME available soon
Chris Gray wrote: Olivier dixit: ok, I just tested myself on Windows and it seems that the RI ignores environment variable changes, so I guess it's fine if we stick with what we have in Harmony. Now that I think about it, I remember someone complaining once on a Java newsgroup that changing the CLASSPATH environment variable had no effect on a running JVM. He got an education in Java class loading. :-) On Windows at least this actually has nothing to do with class loading. You simply cannot modify an environment variable of a running process (at least not from outside that process). Every process has its own copy, so changing the parent process' environment makes no difference, nor does changing the environment of a child process. Regards, Jeroen - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Bringing License arguments to Sun
On Wednesday 23 August 2006 13:22, Leo Simons wrote: Licensing - On Sat, Aug 19, 2006 at 07:38:36PM -0700, Stefano Mazzocchi wrote: [what license should Sun use to open source java] I'll bite: the MIT license. +1, for all the reasons Stefano described. Along with the neccessary, explicit, relevant patent grants, preferably with GPL-compatible terms (eg non-reciprocical; would probably automatically meet requirements off standards bodies and open source orgs worldwide). Typically standards orgs have a patent policy already in place, see e.g. [1], [2]. These are probably the result of quite a lot of thought and discussion, so they should be read not just as something with which a proposed patent grant needs to be compatible but also as prior art in this field. [1] http://www.ecma-international.org/memento/codeofconduct.htm [2] http://www.niso.org/committees/OpenURL/PATPOL.pdf -- Chris Gray/k/ Embedded Java Solutions BE0503765045 Embedded Mobile Java, OSGihttp://www.k-embedded-java.com/ [EMAIL PROTECTED] +32 3 216 0369 - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[classlib][rmi] javax.rmi.PortableRemoteObject
Does anybody know when will be implemented javax.rmi.PortableRemoteObject? -- Igor V. Stolyarov Intel Middleware Products Division
[ClassLib][Instrument]Put tests to Harmony (and Support_Exec)
Hi, The development on instrument is going to an end (I may still apply a few patches of refine). And the tests for it do help a lot in finding bugs and applying compatibility with RI, and special thanks to Stepan and Support_Exec. :) However, I still have a problem with Support_Exec, it usually, if not always, meets a problem in loading kernel classes. Tracing into the code, I find it add a parameter -Xbootclasspath: to launcher with a System Property(com.ibm.oti.system.class.path, I'm using J9 for DRLVM not ready for jvmti yet). But the property was null on my workspace. After deleting that parameter, I get all tests pass using both Ant and eclipse. So can someone tell me how to handle this? Or can I make a little update to it? All existing tests has pass on both Harmony and RI in my workspace(Linux/windows) when make a little change to lib name. Though VM may not be updated for it very soon, I'd like to add tests to Harmony, make it excluded first until VM ready, in order that some one who is interested can check by making a little change and run tests. Any comments/suggestions? -- Best Regards! Jimmy, Jing Lv China Software Development Lab, IBM - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [classlib][rmi] javax.rmi.PortableRemoteObject
It will be implemented when somebody will implement it :) Do you need it for some specific reason? Application? SY, Alexey 2006/8/24, Igor Stolyarov [EMAIL PROTECTED]: Does anybody know when will be implemented javax.rmi.PortableRemoteObject? -- Igor V. Stolyarov Intel Middleware Products Division -- Alexey A. Petrenko Intel Middleware Products Division - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [classlib][rmi] javax.rmi.PortableRemoteObject
Yes, this class is necessary for work of Java Web Applications Igor 2006/8/24, Alexey Petrenko [EMAIL PROTECTED]: It will be implemented when somebody will implement it :) Do you need it for some specific reason? Application? SY, Alexey 2006/8/24, Igor Stolyarov [EMAIL PROTECTED]: Does anybody know when will be implemented javax.rmi.PortableRemoteObject? -- Igor V. Stolyarov Intel Middleware Products Division -- Alexey A. Petrenko Intel Middleware Products Division - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Igor V. Stolyarov Intel Middleware Products Division
Re: [vm] ArgoUML application crashes IBM VME
On 8/23/06, Oliver Deakin [EMAIL PROTECTED] wrote: Hi Vladimir, Ive taken a quick look at your bug report, and at first glance the Windows stack trace says: Caused by: java.lang.UnsatisfiedLinkError: gl (Not found in com.ibm.oti.vm.bootstrap.library.path) at java.lang.ClassLoader.loadLibraryWithPath(ClassLoader.java:113) at java.lang.ClassLoader.loadLibraryWithClassLoader( ClassLoader.java:97) at java.lang.System.loadLibrary(System.java:758) at org.apache.harmony.awt.gl.windows.WinGraphicsEnvironment .clinit(WiGraphicsEnvironment.java:38) which basically tells me that you are missing gl.dll. In fact, if you look at WinGraphicsEnvironment at line 38, there is a System.loadLibrary (gl) call. You need to build with the -Dwith.awt.swing=true flag set on the ant command line to get this. If you do this and rerun argouml, the app. splash screen comes up, but is halted after a short time by the following error: Exception in thread main java.lang.reflect.InvocationTargetException at java.lang.reflect.AccessibleObject.invokeV(AccessibleObject.java:27) at java.lang.reflect.Method.invoke(Method.java:258) at com.ibm.oti.vm.JarRunner.main(JarRunner.java:42) Caused by: java.lang.NoSuchMethodError: java/applet/Applet.getAppletContext()Ljava/applet/AppletContext; at org.tigris.gef.base.Globals.getAppletContext(Globals.java:86) at org.tigris.gef.base.Globals.showStatus(Globals.java:145) at org.tigris.gef.base.Editor.pushMode(Editor.java:282) at org.tigris.gef.base.Editor.init(Editor.java:191) at org.tigris.gef.base.Editor.init(Editor.java:172) SNIP! which is not a surprise since our Applet class is just an empty shell. Looks like we cannot run this until we have Applet. It might be interesting if you ran one of the class load investigation tools contributed to Harmony (I think there might be two) to see how far away we are from running this - perhaps the results could be added to the website? The JIRAs containing these tools are listed at the bottom of [1] Uhhh... It's not very easy to build GL on Windows. Obviously this process should (and can) be rendered automatic. Oliver, I've got same result as you have. I also have info about all classes have not been implemented in the Harmony for this application (argoUML). At least the filter_classes tool (H-165) generates the following list: cat missing_classes.txt javax/xml/parsers/SAXParserFactory javax/xml/parsers/ParserConfigurationException javax/xml/parsers/DocumentBuilderFactory javax/xml/parsers/DocumentBuilder javax/xml/parsers/SAXParser javax/xml/transform/Source javax/xml/transform/Result javax/xml/transform/TransformerException javax/xml/transform/TransformerConfigurationException org/w3c/dom/Node org/w3c/dom/NodeList org/w3c/dom/Document org/w3c/dom/Element org/w3c/dom/TypeInfo org/w3c/dom/CharacterData org/w3c/dom/Comment org/w3c/dom/DocumentType org/w3c/dom/NamedNodeMap org/w3c/dom/Attr org/w3c/dom/Text org/w3c/dom/events/EventTarget org/w3c/dom/events/DocumentEvent org/xml/sax/AttributeList org/xml/sax/EntityResolver org/xml/sax/InputSource org/xml/sax/SAXException org/xml/sax/DTDHandler org/xml/sax/ContentHandler org/xml/sax/ErrorHandler org/xml/sax/Parser org/xml/sax/XMLReader org/xml/sax/Attributes org/xml/sax/Locator org/xml/sax/ext/EntityResolver2 org/xml/sax/ext/Attributes2 org/xml/sax/ext/Locator2 org/xml/sax/helpers/DefaultHandler org/xml/sax/helpers/AttributesImpl Thanks, Vladimir. I will take a look at the Linux crash next and see if I can get anywhere with that. Ill add the above stack trace to the JIRA. Regards, Oli [1] http://incubator.apache.org/harmony/roadmap.html Vladimir Gorr wrote: ArgoUML application (http://argouml.tigris.org) crashes IBM VME. I've created new issue (H-1257) where the logs are. Could anybody please look at this problem and fix it? Thanks, Vladimir. -- Oliver Deakin IBM United Kingdom Limited - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [classlib][rmi] javax.rmi.PortableRemoteObject
I've tried to launch JBoss's bank example application on JBoss and didn't can do it, because javax.rmi.PortableRemoteObject doesn't exist. Igor. 2006/8/24, Igor Stolyarov [EMAIL PROTECTED]: Yes, this class is necessary for work of Java Web Applications Igor 2006/8/24, Alexey Petrenko [EMAIL PROTECTED]: It will be implemented when somebody will implement it :) Do you need it for some specific reason? Application? SY, Alexey 2006/8/24, Igor Stolyarov [EMAIL PROTECTED]: Does anybody know when will be implemented javax.rmi.PortableRemoteObject? -- Igor V. Stolyarov Intel Middleware Products Division -- Alexey A. Petrenko Intel Middleware Products Division - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Igor V. Stolyarov Intel Middleware Products Division -- Igor V. Stolyarov Intel Middleware Products Division
Re: [general][DGC] Java Distributed Garbage Collection in RMI
[let's add prefix to the subject line] Hi Vikram, I've attached test.txt file containing all necessary java sources as well as test output on Harmony (actually, it's the same on RMI also). Regards, Mikhail On 8/23/06, FaeLLe [EMAIL PROTECTED] wrote: Hello Mikhail,Thanks for the reply !However your email only contained the attachement of the output do not see the modified sources. If you could reply with them it would be nice.Thanks,- Vikram MohanOn 8/23/06, Mikhail Markov [EMAIL PROTECTED] wrote: Hi Vikram, First of all, what rmi module are you using: rmi or rmi2? rmi module does not support sun.* properties. Instead it supports a parallel structure of harmony.* ones. About your question about DGC (i'll use rmi module as an example): Remote object (on server side!) could be collected if all the conditions below are met: 1) (Of course) no hard references in local VM 2) no remote references from from other VMs 3) no in-progress remoted calls Here is one of the simplest test scenarious showing how to check these conditions: - run rmi-registry in separate VM - export remote object, register it in the registry and remove hard references to this object - kill rmi-registry VM - wait for a period of time longer than the one specified by java.rmi.dgc.leaseValue property (the default is 10 min) - if remote object implements Unreferenced then it's unreferenced() method should be called here - run GC - the object should be collected and it's finalize() method should be called I think your code is doing a lot of extra staff so i've modified it to implement this test scenarious (see attachment). I did not use ProcessBuilder class as Harmony does not have it yet. The output of the test is also attached. Hope this helps. Regards, Mikhail Intel MIddleware Products Division Been experimenting with the DGC interface of Java RMI and as far as I have understood there is no way to make a remote object be garbage collected other than invoke System.gc() and let it be collected over time. I however notice that the internal calls can be tracked by setting the following system properties, System.setProperty(java.rmi.server.logCalls, true); System.setProperty (sun.rmi.dgc.logLevel , VERBOSE); System.setProperty(sun.rmi.dgc.logCalls, true); What I was wondering is if you had any suggestions on how to actually ensure that the remote object has been collected. I tried placing System.out.println() statements in the finalize() and unreferenced() methods (the client also implements the Unreferenced interface) however it seems to generate no such output. Neither do the internal rmi logs that should be displayed in output in verbose mode show any indication of this happening. I have attached the code if you would be willing to examine it and let me know what I am not doing correctly. Ps. I have included them in zip format and as Java sources whichever is convinient for you. TestDistributedGarbageCollection.java is the RMI server and the EchoClient.java is the RMI client. Regards, - Vikram Mohan - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]--www.FaeLLe.comwww.VikramMohan.com EchoInterface.java: -- import java.rmi.Remote; import java.rmi.RemoteException; public interface EchoInterface extends Remote { public String echo(String msg) throws RemoteException; } -- EchoObject.java: --- import java.rmi.Remote; import java.rmi.RemoteException; import java.rmi.server.UnicastRemoteObject; import java.rmi.server.Unreferenced; public class EchoObject implements EchoInterface, Unreferenced { public EchoObject() throws RemoteException { UnicastRemoteObject.exportObject(this); } public String echo(String msg) throws RemoteException { System.out.println(msg); return this.getClass() + - Have said: + msg; } public void unreferenced() { System.out.println(EchoObject unreferenced); } public void finalize() throws Throwable { super.finalize(); System.out.println(EchoObject finalized); } } -- RMIRegistryStarter.java: --- import java.rmi.registry.LocateRegistry; public class RMIRegistryStarter { public static void main(String[] args) throws Exception { // time to sleep after rmiregistry creation //int sleepTime = args[0]; // create registry LocateRegistry.createRegistry(1099); // wait for 1 s and then exit Thread.sleep(1000); System.exit(0); } } -- Test.java: - import java.rmi.Naming; import
Re: [app-bug] NIO problems when running Apache MINA examples
2006/8/24, Richard Liang [EMAIL PROTECTED]: Sian January wrote: Hi Andrew, Thanks very much for looking at this. I have synchronised and tried with a new build and those two examples are working now. I will make sure I do everything with a fresh build in future! Anyway it looks like we have some good results with MINA so I will update the Wiki page with the new information (http://wiki.apache.org/harmony/ClassLibrary). On a separate note I'm not sure how to close the bug report. I'm used to Bugzilla where the person who raised the bug can close it, but maybe you have to be a committer to close a bug with JIRA. Can anyone help me with this? Hello Sian, Please comment in JIRA to indicate the bug has been fixed, then committers will help to close it. :-) And mark it as duplicate of HARMONY-1186 SY, Alexey Best regards, Richard Thanks, Sian On 24/08/06, Andrew Zhang [EMAIL PROTECTED] wrote: Hi Sian, Thanks for reporting the error. But it works well on my machine when running org.apache.mina.examples.echoserver.Main. The error can not be reproduced in my machine with latest code. After looking the error statck trace, I noticed the bug is mostly possible the same as Harmony-1186 ( http://issues.apache.org/jira/browse/HARMONY-1186). If I restore harmony code with early revision (before Harmony-1186, revision 431877), the error can be reproduced exactly the same as you reported. Harmony-1186 was fixed on Aug.16, but you built the snapshot on Aug.21...(So I'm not sure whether they are the same bug). So could you please check whether your source code is updated with latest revision, if you built the snapshot by yourself? Othewise, it may work if you download the snapshot from harmony website (I checked the snapshot was made on Aug.17). Or would anyone update the snapshot on the website? I hope it works. If you still fail to run mina examples, please let us know. Any information are highly appreciated! Thank you! Best regards, Andrew On 8/23/06, Sian January [EMAIL PROTECTED] wrote: Hello, I have recently downloaded Apache MINA, which is a framework for writing network applications, and tried to run some of the examples with Harmony. There were some problems getting the examples to run and if anyone is interested in taking a look I think I have found an NIO bug - http://issues.apache.org/jira/browse/HARMONY-1270. Regards, Sian January IBM Java Technology Centre, UK -- Andrew Zhang China Software Development Lab, IBM -- Richard Liang China Software Development Lab, IBM - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Alexey A. Petrenko Intel Middleware Products Division - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [general][DGC] Java Distributed Garbage Collection in RMI
Wow - true DGC is really a cool thing! And i agree with you that there is very few RMI DGC docs. If your need some details about Harmony rmi dgc implementation - feel free to ask. Regards, Mikhail On 8/24/06, FaeLLe [EMAIL PROTECTED] wrote: Yes I should have the implementation completed by October by which time I will produce performance testing statistics and code to the community. At the moment the highly undocumented nature of the Java RMI dgc interfaces is proving to be a stumbling point hence I have turned to the Harmony mailing list for expertise. Regards, - Vikram Mohan On 8/24/06, Weldon Washburn [EMAIL PROTECTED] wrote: Vikram, I believe the right place to look for MMTk is on the JikesRVM web page at jikesrvm.sourceforge.net. MMTk contains a bunch of different garbage collectors and is written in Java. Its interesting what you are discovering in distributed GC. Do you plan to do an Apache open source version of the correct algorithm? :) On 8/23/06, FaeLLe [EMAIL PROTECTED] wrote: Hello Weldon, I am currently working on the DGC interface on a Java level so that it can work on top of the JVM. My modification is entirely is on the Java level. What I am working on the implementeation of a Distributed Reference Listing algorithm for RMI DGC. We have identified faults in the algorithm Sun currently uses and have explained them in the paper I mentioned before. It is called a revised version of Birrell's algorithm. Not currently worked with MMTk but perhaps you can point me towards the project page of the toolkit you are describing. I have only heard about it before not exactly ventured into it. Regards, - Vikram Mohan On 8/23/06, Weldon Washburn [EMAIL PROTECTED] wrote: On 8/22/06, FaeLLe [EMAIL PROTECTED] wrote: Forwarding message to Harmony list as it was rejected previously as spam probably due to ZIP attachement and links in body. From: FaeLLe [mailto:[EMAIL PROTECTED] Sent: Tuesday, July 25, 2006 2:27 PM To: Morozova, Nadezhda Subject: Java Garbage Collection I obtained your email address from the Harmony mailing lists and noticed the document you released on the Harmony mailing list about plugging in a custom GC implementation. The reason I am writing to you is that at the moment I am undergoing my Msc project at the University of Kent with my supervisor being Dr. Richard Jones and am working on an implementation of Birrell's distributed reference listing algorithm. We have worked on a formalization of the algorithm (TOPLAS paper ) and my task is the implementation of it. But I am confused as to what approach I would undertake towards the implementation as to what part of the current Java code holds the current algorithm etc. Is there any paper or resource you could point me to for garbage collector implementation. Your document talks about implementing a GC written in C but I was wondering would it not be possible for me to merely edit the JDK source code under the JRL license for academic purposes and rewrite my own code merely editing the method content. Your cooperation in this matter would be most appreciated. Vikram, It would be great if you gave more details about what you are trying to do. For example, do you need to modify the garbage collector that is internal to a standard JVM? Or will all your work be at Java API level? In terms of what is in DRLVM, the GC is written in C. I am currently working on porting MMTk to DRLVM. Let me know if MMTk is interesting to you. Yours Sincierly, - Vikram Mohan Msc. Distributed Systems and Networks University of Kent Canterbury, Kent UK +44-(0)77-37592552 - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Weldon Washburn Intel Middleware Products Division - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- www.FaeLLe.com www.VikramMohan.com -- Weldon Washburn Intel Middleware Products Division - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- www.FaeLLe.com www.VikramMohan.com
RE: [doc] Intrim solution
Geir, all, This is the first step to creating a site-wide CSS. I've created a short version of the CSS file (see site.css) with the major elements that a webpage might need. This is surely only a draft. I'll need to work a bit more on table elements and also import additional styles from drl.css to enable extended presentation facilities for big docs that go with contribs. I've also changed the .vsl accordingly (see patch attached). Most changes concern removing redundant styles, assigning classes to specific elements, etc. IMPORTANT NOTE: YOUR HELP NEEDED. The .vsl file now has the link to the CSS hard-coded into the output HTML code so it only works for HTML page of one level (currently, for those that are two folder-levels down from the CSS). This bug can be fixed by adding a relative path variable instead of the hard-coded path. However, I am new to VSL and not sure I'll do it the right way. Perhaps, it would be much easier for you. Let me know what you think of this. I have some specific considerations of how we could adjust the VSL file and the CSS styles set further, but we should first decide whether we need it at all :) Again, any help welcomed! Best regards, Nadya Morozova -Original Message- From: Geir Magnusson Jr. [mailto:[EMAIL PROTECTED] Sent: Wednesday, August 23, 2006 4:29 PM To: harmony-dev@incubator.apache.org Subject: Re: [doc] Intrim solution Morozova, Nadezhda wrote: Geir, Thanks for your effort in migrating docs to a more stable state inside the website. I've been examining your solution, and here are my comments: 1) Nice and quick way to import new docs into the website without converting them into XML for internal processing. Never thought of it :) 2) Source of resulting file is not optimal because: - Doctype declarations, metatags and head content are copied from the imported document into the middle of the resulting HTML code - body of the page HTML has a nested body of imported document Yep, but has there been any reported bad effects? 3) Stylesheet referenced in resulting document is applied to the whole page, including the left navigation menu. Yep. This last point can be workarounded easily by making minor changes in the referenced stylesheet (I could do this and send you a patch). However, I don't like this solution and would rather vote for a common CSS for the whole website. Yep! A major obstacle to having one CSS for the Harmony website is that there's no such CSS at the moment! LF of page content is set in the .vsl file that Anakia uses. I suggest that we move away from this by reducing .vsl to processing only and move out all presentation tags into a Harmony-wide CSS. This would help us: - reduce file size (and consequently i-net traffic) for Harmony website: you load only one file instead of loading the same styles for each page - reduce effort of integrating more docs into the website: each doc references the same stylesheet and is displayed in the same way - simplify doc structure: no nested body and meta elements; numerous font tags replaced with a hierarchical HTML tag and class structure - clarify website functioning mechanism: distinguish processing macros and presentation of resulting output If the community agrees, I could try and implement this solution. That would take a relatively significant amount of time as it would include: 1) Editing .vsl to remove presentation info and improving structure of resulting HTML code 2) Creating a .css and testing it to fit existing files and new ones 3) Going through all current XML files making up the website to make adjustments in body content per new CSS requirements (can be done by a script or auto-replacement but still) The last one I don't understand. Rarely is there any LF info in the XML - that's the point of this approach - that the document content - the XML - is independent of the rendering. All in all, this seems like a serious effort. Help most welcomed! Sounds good - I wouldn't try to bite it all off at once - I'd start with seeing what it takes to get a basic CSS applied in the .vsl and start looking at it from there. Lets try to do this incrementally, so if we decide not to do it, the investment is as small as possible. (IOW, go for it!) geir - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] From 72957bcf0c39d6e1de8d985deb9e3c5a1b82e23d Mon Sep 17 00:00:00 2001 From: nmorozov [EMAIL PROTECTED] Date: Thu, 24 Aug 2006 14:23:53 +0400 Subject: [PATCH] Removing presentation info from doc model --- xdocs/stylesheets/site.vsl | 114 +++- 1 files changed, 48 insertions(+), 66 deletions(-) diff --git a/xdocs/stylesheets/site.vsl
[classlib][TestNG] How to handle bootclasspath tests
Hello All, I'm investigating the possibilities of migrating Harmony tests from JUnit/Directory layout to TestNG while reviewing all the related thread in mailing list. And I will try to answer the open issues. To make things simple, I will post the issues one by one. ;-) Question: How to handle bootclasspath tests? IMHO, I'm not sure whether it is a good idea to use TestNG groups to differentiate the bootclasspath tests and classpath tests. If we put bootclasspath and classpath tests in the same directory, and use TestNG groups to differentiate them. When we want to run the bootclasspath tests, we have to put all tests in bootclasspath including the classpath tests. I don't think it's a good approach. And I cannot find any ways to compile the java sources from one directory into several different directories (ANT or Eclipse). So I suggest we put bootclasspath tests and classpath tests into different directories. But if we think putting all tests into bootclasspath is not a problem, we may have a workaround: running bootclasspath and classpath tests in separate tasks. I mean:1) Running bootclasspath tests with all tests in bootclasspath 2) running all classpath tests with all tests in classpath Please correct me if I'm wrong. Here is sample of how to launch TestNG in ANT: testng outputDir=${testng.report.dir} sourcedir=${test.src.dir} haltOnfailure=true verbose=3 jvm=${HarmonyVM}/bin/java bootclasspath pathelement path=../bin/tests.boot / /bootclasspath classpath pathelement path=../bin/tests / /classpath xmlfileset dir=. includes=suite.xml / /testng Thanks for reading this far. ;-) -- Richard Liang China Software Development Lab, IBM - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [classlib][html] Please evaluate proposed ASN.1 notation for HTML DTD
On 8/24/06, Miguel Montes wrote: Thanks Stepan. So, it should be BDTD ::= SEQUENCE { name UTF8String, entity SET OF HTMLEntity, element SET OF HTMLElement } HTMLEntity ::= SEQUENCE { name UTF8String, value INTEGER, general [0] IMPLICIT BOOLEAN DEFAULT FALSE, parameter [1] IMPLICIT BOOLEAN DEFAULT FALSE, data UTF8String } HTMLElement ::= SEQUENCE { index INTEGER, name UTF8String, type INTEGER, oStart BOOLEAN, oEnd BOOLEAN, exclusions SET OF INTEGER, inclusions SET OF INTEGER, attributes SET OF HTMLElementAttributes OPTIONAL, contentModel HTMLContentModel } HTMLContentModel ::= SEQUENCE OF SEQUENCE { type INTEGER, index INTEGER } HTMLElementAttributes ::= SEQUENCE { name UTF8String, type INTEGER, modifier INTEGER, defaultValue UTF8String OPTIONAL, possibleValues SET OF UTF8String OPTIONAL } If we want exclusions and inclusions in HTMLElement to be optional, it should be something like HTMLElement ::= SEQUENCE { index INTEGER, name UTF8String, type INTEGER, oStart BOOLEAN, oEnd BOOLEAN, exclusions [0] IMPLICIT SET OF INTEGER OPTIONAL, inclusions [1] IMPLICIT SET OF INTEGER OPTIONAL, attributes SET OF HTMLElementAttributes OPTIONAL, contentModel HTMLContentModel } Is this right? Yes, that is right. - Stepan. On 8/23/06, Stepan Mishura wrote: Hi Miguel, I've looked thought proposed ASN.1 notation and it looks OK for me. I have only few comments. (However I don't know all details of DTD, i.e. I've not checked whether your notation correctly represents DTD so I'll comment only proposed ASN.1notation.) BTW, I've changed the subject if you don't mind. Common remark: a component of SEQUENCE(OF), SET(OF) should starts with a lower-case letter. Other comment see below. On 8/23/06, Miguel Montes wrote: Hi: We are working on the html parser, and need to have working DTD. The current implementation of DTD.read(), based on serialization, has some problems, and I think we should have a well defined binary format. I suggest the following ASN.1 format, and if there is consensus on it, we could contribute the code to read and write it. I would like to hear the opinion of Stepan and anyone who has worked with ASN.1 before. BDTD ::= SEQUENCE { Name UTF8String, Entity SET OF HTMLEntity, Element SET OF HTMLElement } HTMLEntity ::= SEQUENCE { Name UTF8String, Value INTEGER, General BOOLEAN DEFAULT FALSE, Parameter BOOLEAN DEFAULT FALSE, Data UTF8String } This won't work. I'll try to explain. We have 2 DEFAULT components here. If a component is declared as DEFAULT then it is also OPTIONAL and can be missed. A decoder can detect which component is missed only if a in block of OPTIONAL components plus next mandatory component all elements are distinct. We have the next block: general BOOLEANDEFAULT FALSE parameterBOOLEANDEFAULT FALSE data UTF8String So 1-st and 2-nd elements are not distinct. This can be fixed by tagging some elements. I'd use implicit tagging, for example: generalBOOLEANDEFAULT FALSE parameter[0] IMPLICIT BOOLEANDEFAULT FALSE or general [0] IMPLICIT BOOLEANDEFAULT FALSE parameter[1] IMPLICIT BOOLEANDEFAULT FALSE Thanks, Stepan. P.S. I'll let you know if I have more corrections. HTMLElement ::= SEQUENCE { Index INTEGER, Name UTF8String, Type INTEGER, OStart BOOLEAN, OEnd BOOLEAN, Exclusions SET OF INTEGER, Inclusions SET OF INTEGER, Attributes SET OF HTMLElementAttributes OPTIONAL, ContentModel HTMLContentModel, } HTMLContentModel ::= SEQUENCE OF SEQUENCE { Type INTEGER, Index INTEGER } HTMLElementAttributes ::= SEQUENCE { Name UTF8String, Type INTEGER, Modifier INTEGER, DefaultValue UTF8String OPTIONAL, PossibleValues SET OF UTF8String OPTIONAL } -- Miguel Montes -- Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [classlib][TestNG] How to handle bootclasspath tests
Richard Liang wrote: Hello All, I'm investigating the possibilities of migrating Harmony tests from JUnit/Directory layout to TestNG while reviewing all the related thread in mailing list. And I will try to answer the open issues. To make things simple, I will post the issues one by one. ;-) Question: How to handle bootclasspath tests? IMHO, I'm not sure whether it is a good idea to use TestNG groups to differentiate the bootclasspath tests and classpath tests. If we put bootclasspath and classpath tests in the same directory, and use TestNG groups to differentiate them. When we want to run the bootclasspath tests, we have to put all tests in bootclasspath including the classpath tests. I don't think it's a good approach. And I cannot find any ways to compile the java sources from one directory into several different directories (ANT or Eclipse). So I suggest we put bootclasspath tests and classpath tests into different directories. Agreed - this is a fairly simple separation, and there is good reason to do it. My vote's for keeping bootclasspath and classpath tests physically separate. Regards, Oliver But if we think putting all tests into bootclasspath is not a problem, we may have a workaround: running bootclasspath and classpath tests in separate tasks. I mean:1) Running bootclasspath tests with all tests in bootclasspath 2) running all classpath tests with all tests in classpath Please correct me if I'm wrong. Here is sample of how to launch TestNG in ANT: testng outputDir=${testng.report.dir} sourcedir=${test.src.dir} haltOnfailure=true verbose=3 jvm=${HarmonyVM}/bin/java bootclasspath pathelement path=../bin/tests.boot / /bootclasspath classpath pathelement path=../bin/tests / /classpath xmlfileset dir=. includes=suite.xml / /testng Thanks for reading this far. ;-) -- Oliver Deakin IBM United Kingdom Limited - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [vm] ArgoUML application crashes IBM VME
Vladimir Gorr wrote: On 8/23/06, Oliver Deakin [EMAIL PROTECTED] wrote: Hi Vladimir, Ive taken a quick look at your bug report, and at first glance the Windows stack trace says: Caused by: java.lang.UnsatisfiedLinkError: gl (Not found in com.ibm.oti.vm.bootstrap.library.path) at java.lang.ClassLoader.loadLibraryWithPath(ClassLoader.java:113) at java.lang.ClassLoader.loadLibraryWithClassLoader( ClassLoader.java:97) at java.lang.System.loadLibrary(System.java:758) at org.apache.harmony.awt.gl.windows.WinGraphicsEnvironment .clinit(WiGraphicsEnvironment.java:38) which basically tells me that you are missing gl.dll. In fact, if you look at WinGraphicsEnvironment at line 38, there is a System.loadLibrary (gl) call. You need to build with the -Dwith.awt.swing=true flag set on the ant command line to get this. If you do this and rerun argouml, the app. splash screen comes up, but is halted after a short time by the following error: Exception in thread main java.lang.reflect.InvocationTargetException at java.lang.reflect.AccessibleObject.invokeV(AccessibleObject.java:27) at java.lang.reflect.Method.invoke(Method.java:258) at com.ibm.oti.vm.JarRunner.main(JarRunner.java:42) Caused by: java.lang.NoSuchMethodError: java/applet/Applet.getAppletContext()Ljava/applet/AppletContext; at org.tigris.gef.base.Globals.getAppletContext(Globals.java:86) at org.tigris.gef.base.Globals.showStatus(Globals.java:145) at org.tigris.gef.base.Editor.pushMode(Editor.java:282) at org.tigris.gef.base.Editor.init(Editor.java:191) at org.tigris.gef.base.Editor.init(Editor.java:172) SNIP! which is not a surprise since our Applet class is just an empty shell. Looks like we cannot run this until we have Applet. It might be interesting if you ran one of the class load investigation tools contributed to Harmony (I think there might be two) to see how far away we are from running this - perhaps the results could be added to the website? The JIRAs containing these tools are listed at the bottom of [1] Uhhh... It's not very easy to build GL on Windows. Obviously this process should (and can) be rendered automatic. I hope it can ;) Oliver, I've got same result as you have. I also have info about all classes have not been implemented in the Harmony for this application (argoUML). At least the filter_classes tool (H-165) generates the following list: Great! Thanks for getting this list together. I guess these should all be covered by our xerces dependency - so it appears that the only thing standing between us and running ArgoUML is the Applet implementation? Is there somewhere you can put this on the wiki/website so that we dont lose it? Looks like an interesting test app. Regards, Oliver cat missing_classes.txt javax/xml/parsers/SAXParserFactory javax/xml/parsers/ParserConfigurationException javax/xml/parsers/DocumentBuilderFactory javax/xml/parsers/DocumentBuilder javax/xml/parsers/SAXParser javax/xml/transform/Source javax/xml/transform/Result javax/xml/transform/TransformerException javax/xml/transform/TransformerConfigurationException org/w3c/dom/Node org/w3c/dom/NodeList org/w3c/dom/Document org/w3c/dom/Element org/w3c/dom/TypeInfo org/w3c/dom/CharacterData org/w3c/dom/Comment org/w3c/dom/DocumentType org/w3c/dom/NamedNodeMap org/w3c/dom/Attr org/w3c/dom/Text org/w3c/dom/events/EventTarget org/w3c/dom/events/DocumentEvent org/xml/sax/AttributeList org/xml/sax/EntityResolver org/xml/sax/InputSource org/xml/sax/SAXException org/xml/sax/DTDHandler org/xml/sax/ContentHandler org/xml/sax/ErrorHandler org/xml/sax/Parser org/xml/sax/XMLReader org/xml/sax/Attributes org/xml/sax/Locator org/xml/sax/ext/EntityResolver2 org/xml/sax/ext/Attributes2 org/xml/sax/ext/Locator2 org/xml/sax/helpers/DefaultHandler org/xml/sax/helpers/AttributesImpl Thanks, Vladimir. I will take a look at the Linux crash next and see if I can get anywhere with that. Ill add the above stack trace to the JIRA. Regards, Oli [1] http://incubator.apache.org/harmony/roadmap.html Vladimir Gorr wrote: ArgoUML application (http://argouml.tigris.org) crashes IBM VME. I've created new issue (H-1257) where the logs are. Could anybody please look at this problem and fix it? Thanks, Vladimir. -- Oliver Deakin IBM United Kingdom Limited - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Oliver Deakin IBM United Kingdom Limited - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [classlib][rmi] javax.rmi.PortableRemoteObject
On 24 August 2006 at 13:11, Igor Stolyarov [EMAIL PROTECTED] wrote: I've tried to launch JBoss's bank example application on JBoss and didn't can do it, because javax.rmi.PortableRemoteObject doesn't exist. FYI: It's also one of the three remaining classes which are required to run Apache Geronimo. The other two classes are: javax.rmi.CORBA.Util javax.rmi.CORBA.UtilDelegate Regards, Mark. 2006/8/24, Igor Stolyarov [EMAIL PROTECTED]: Yes, this class is necessary for work of Java Web Applications Igor 2006/8/24, Alexey Petrenko [EMAIL PROTECTED]: It will be implemented when somebody will implement it :) Do you need it for some specific reason? Application? SY, Alexey 2006/8/24, Igor Stolyarov [EMAIL PROTECTED]: Does anybody know when will be implemented javax.rmi.PortableRemoteObject? -- Igor V. Stolyarov Intel Middleware Products Division -- Alexey A. Petrenko Intel Middleware Products Division - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Igor V. Stolyarov Intel Middleware Products Division -- Igor V. Stolyarov Intel Middleware Products Division --=_Part_7252_6010442.1156410664142-- - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [ClassLib][Instrument]Put tests to Harmony (and Support_Exec)
Jimmy, Jing Lv wrote: Hi, The development on instrument is going to an end (I may still apply a few patches of refine). And the tests for it do help a lot in finding bugs and applying compatibility with RI, and special thanks to Stepan and Support_Exec. :) However, I still have a problem with Support_Exec, it usually, if not always, meets a problem in loading kernel classes. Tracing into the code, I find it add a parameter -Xbootclasspath: to launcher with a System Property(com.ibm.oti.system.class.path, I'm using J9 for DRLVM not ready for jvmti yet). But the property was null on my workspace. After deleting that parameter, I get all tests pass using both Ant and eclipse. So can someone tell me how to handle this? Or can I make a little update to it? One problem here will be that com.ibm.oti.system.class.path went out with VME v3. In VME v4 we use org.apache.harmony.boot.class.path (see modules\luni\src\main\native\luni\shared\luniglob.c). Looking at Support_Exec, it appears that this setting is out of date and should be updated with the new value. Does this fix your problem? All existing tests has pass on both Harmony and RI in my workspace(Linux/windows) when make a little change to lib name. Though VM may not be updated for it very soon, I'd like to add tests to Harmony, make it excluded first until VM ready, in order that some one who is interested can check by making a little change and run tests. Any comments/suggestions? Sounds like a good idea - it seems that the workaround to run on the IBM VME is pretty straightforward, so people will be able to run the tests if they want to. Then when a new VME is out and/or drlvm catches up we can make the tests live. Regards, Oliver -- Oliver Deakin IBM United Kingdom Limited - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [classlib] [ldap] support for multiple VMs?
Oliver, Please take a look at a HARMONY-1243 patch. I fixed all bugs noticed and made parsing a bit more robust. Also, added a define for org.apache.harmony.boot.class.path name to vmi.h - to enforce that there is 2-sided contract for this property. I still think that some of those functions may worth to be added to the portlib, namely: char * str_concat (HyPortLibrary * portLibrary, ...); int props_read_from_file(HyPortLibrary * portLibrary, const char *filename, key_value_pair** properties, U_32 *number); void props_free(HyPortLibrary * portLibrary, key_value_pair * properties); Justification: the same functionality is duplicated at least in launcher/shared/main.c, and there are other property files to be read by VM. If nobody object, I will try to add these 3 functions to portlib. -- Alexey - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [DRLVM][GC] high-level design proposal for GCV5
It might also make sense to design in a write barrier verifier. The concept is to verify that all the old-to-young pointers are properly handled. One way of doing this is to force a full heap mark. Then compare the full heap mark's old-to-young pointers to what the write barrier mechanism derived. This needs more thinking. The old-to-yound pointers got in a full-heap marking have only live ones. But I think the idea to have some write barrier verifier is interesting, e..g, the rememebered set has to be a superset of live old-to-yound pointers. IMHO, write barrier verifier is a _must_ to have feature for us. The same applies to full heap tracing-validation. As VM and JIT code are subject of changes, it should be the way to isolate bugs introduced by GC and the ones coming from VM/JIT. -- Ivan Thanks, xiaofeng - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [DRLVM][VM] -- which header bits are available for GC mark and GC forwarding use?
Weldon, I have some information for this case. There bit layout was the following before new thread manager integration: object info word contains: 0 bit - available for GC 1-6 bits - object hashcode 7 bit - contention bit unused by TM, but used by GC_V4 8-31 bits - other thread manager's data I have some changes for this layout in the GC v4.1 patch. Patch introduces new GC interface function: gc_get_hashcode() If garbage collector exports that function it hash full management of all bits in the lowest byte of object info word, but it should provide implementation of identity hashcode for heap objects. If garbage collector doesn't have this function, the previous (described above) layout of bits will be used. -- Ivan On 8/24/06, Xiao-Feng Li [EMAIL PROTECTED] wrote: Weldon, the bits your mentioned are for obj_info. Vtable can't have its bits overloaded simply without special handling. Thanks, xiaofeng On 8/24/06, Weldon Washburn [EMAIL PROTECTED] wrote: On 8/23/06, Xiao-Feng Li [EMAIL PROTECTED] wrote: Weldon, I experimented with last two bits for marking and forwarding without problem. I assume you are referring to the 2 lowest bits in the vtable pointer. The two lowest bits will step on the recursion mask in sync_bits.h... won't it? I am confused. It turns out that MMTk keeps the mark bits around even between GCs. Leaving an LSB of the vtable ptr set and then resuming application execution will surely cause a failure. Thus there needs to be a full time dedicated mark bit in the object header. This is in addition to the need for a forwarding bit. The GC_OBJECT_MARK_BIT_MASK is for obj_info field, not the vt field. ( So far as I experimented, it's only used for heap verification). Thanks, xiaofeng On 8/24/06, Weldon Washburn [EMAIL PROTECTED] wrote: Looking at drlvm/trunk, it looks like vmcore/include/sync_bits.h defines the use of *(ref_ptr +4) for 32-bit environment. Just guessing that #define BUSY_FORWARDING_OFFSET 0 is intended to tell the GC that it can use the least significant bit out of these four bytes. Is this correct? I would like to use this bit as an MMTk mark bit. Will this work? (Actually the name, BUSY_FORWARDING_OFFSET is probably not the best...) There is also a gc/src/gc_header.h file that contains, #define GC_OBJECT_MARK_BIT_MASK 0x80. This seems to step on top of sync_bits.h use of this area???Can I assume gc_header.h is incorrect? -- Weldon Washburn Intel Middleware Products Division - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Problems with JIRA notifications?
Is everything OK with JIRA notifications? I have not received notifications today... SY, Alexey -- Alexey A. Petrenko Intel Middleware Products Division - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [classlib][TestNG] How to handle bootclasspath tests
On 24 August 2006 at 13:58, Oliver Deakin [EMAIL PROTECTED] wrote: Richard Liang wrote: Hello All, I'm investigating the possibilities of migrating Harmony tests from JUnit/Directory layout to TestNG while reviewing all the related thread in mailing list. And I will try to answer the open issues. To make things simple, I will post the issues one by one. ;-) Question: How to handle bootclasspath tests? IMHO, I'm not sure whether it is a good idea to use TestNG groups to differentiate the bootclasspath tests and classpath tests. If we put bootclasspath and classpath tests in the same directory, and use TestNG groups to differentiate them. When we want to run the bootclasspath tests, we have to put all tests in bootclasspath including the classpath tests. I don't think it's a good approach. And I cannot find any ways to compile the java sources from one directory into several different directories (ANT or Eclipse). So I suggest we put bootclasspath tests and classpath tests into different directories. Agreed - this is a fairly simple separation, and there is good reason to do it. My vote's for keeping bootclasspath and classpath tests physically separate. Yes, I think this is the best way to handle this distinction too. There are going to be more than enough groups. I thought about some more earlier while trying the awt tests... we should identify which tests require a display to run and which may be run headless. Regards, Mark. But if we think putting all tests into bootclasspath is not a problem, we may have a workaround: running bootclasspath and classpath tests in separate tasks. I mean:1) Running bootclasspath tests with all tests in bootclasspath 2) running all classpath tests with all tests in classpath Please correct me if I'm wrong. Here is sample of how to launch TestNG in ANT: testng outputDir=${testng.report.dir} sourcedir=${test.src.dir} haltOnfailure=true verbose=3 jvm=${HarmonyVM}/bin/java bootclasspath pathelement path=../bin/tests.boot / /bootclasspath classpath pathelement path=../bin/tests / /classpath xmlfileset dir=. includes=suite.xml / /testng Thanks for reading this far. ;-) -- Oliver Deakin IBM United Kingdom Limited - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [classlib][TestNG] How to handle bootclasspath tests
Mark Hindess wrote: On 24 August 2006 at 13:58, Oliver Deakin [EMAIL PROTECTED] wrote: Richard Liang wrote: Hello All, I'm investigating the possibilities of migrating Harmony tests from JUnit/Directory layout to TestNG while reviewing all the related thread in mailing list. And I will try to answer the open issues. To make things simple, I will post the issues one by one. ;-) Question: How to handle bootclasspath tests? IMHO, I'm not sure whether it is a good idea to use TestNG groups to differentiate the bootclasspath tests and classpath tests. If we put bootclasspath and classpath tests in the same directory, and use TestNG groups to differentiate them. When we want to run the bootclasspath tests, we have to put all tests in bootclasspath including the classpath tests. I don't think it's a good approach. And I cannot find any ways to compile the java sources from one directory into several different directories (ANT or Eclipse). So I suggest we put bootclasspath tests and classpath tests into different directories. Agreed - this is a fairly simple separation, and there is good reason to do it. My vote's for keeping bootclasspath and classpath tests physically separate. Yes, I think this is the best way to handle this distinction too. There are going to be more than enough groups. I thought about some more earlier while trying the awt tests... we should identify which tests require a display to run and which may be run headless. That's a good point, Mark. Just thinking about whether we could skip the tests which require a display when there is no display available. If someone try to run Harmony tests on a Linux server, the awt/swing tests shall be skipped. Any ideas? I will open another thread to discuss TestNG groups :-) Best regards, Richard Regards, Mark. But if we think putting all tests into bootclasspath is not a problem, we may have a workaround: running bootclasspath and classpath tests in separate tasks. I mean:1) Running bootclasspath tests with all tests in bootclasspath 2) running all classpath tests with all tests in classpath Please correct me if I'm wrong. Here is sample of how to launch TestNG in ANT: testng outputDir=${testng.report.dir} sourcedir=${test.src.dir} haltOnfailure=true verbose=3 jvm=${HarmonyVM}/bin/java bootclasspath pathelement path=../bin/tests.boot / /bootclasspath classpath pathelement path=../bin/tests / /classpath xmlfileset dir=. includes=suite.xml / /testng Thanks for reading this far. ;-) -- Oliver Deakin IBM United Kingdom Limited - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Richard Liang China Software Development Lab, IBM
Re: [DRLVM][VM] -- which header bits are available for GC mark and GC forwarding use?
On 8/24/06, Ivan Volosyuk [EMAIL PROTECTED] wrote: Weldon, I have some information for this case. There bit layout was the following before new thread manager integration: object info word contains: 0 bit - available for GC 1-6 bits - object hashcode 7 bit - contention bit unused by TM, but used by GC_V4 8-31 bits - other thread manager's data I have some changes for this layout in the GC v4.1 patch. Patch introduces new GC interface function: gc_get_hashcode() If garbage collector exports that function it hash full management of all bits in the lowest byte of object info word, but it should provide implementation of identity hashcode for heap objects. If garbage collector doesn't have this function, the previous (described above) layout of bits will be used. -- Ivan On 8/24/06, Xiao-Feng Li [EMAIL PROTECTED] wrote: Weldon, the bits your mentioned are for obj_info. Vtable can't have its bits overloaded simply without special handling. Thanks, xiaofeng On 8/24/06, Weldon Washburn [EMAIL PROTECTED] wrote: On 8/23/06, Xiao-Feng Li [EMAIL PROTECTED] wrote: Weldon, I experimented with last two bits for marking and forwarding without problem. I assume you are referring to the 2 lowest bits in the vtable pointer. The two lowest bits will step on the recursion mask in sync_bits.h... won't it? I am confused. It turns out that MMTk keeps the mark bits around even between GCs. Leaving an LSB of the vtable ptr set and then resuming application execution will surely cause a failure. Thus there needs to be a full time dedicated mark bit in the object header. This is in addition to the need for a forwarding bit. The GC_OBJECT_MARK_BIT_MASK is for obj_info field, not the vt field. ( So far as I experimented, it's only used for heap verification). Thanks, xiaofeng On 8/24/06, Weldon Washburn [EMAIL PROTECTED] wrote: Looking at drlvm/trunk, it looks like vmcore/include/sync_bits.h defines the use of *(ref_ptr +4) for 32-bit environment. Just guessing that #define BUSY_FORWARDING_OFFSET 0 is intended to tell the GC that it can use the least significant bit out of these four bytes. Is this correct? I would like to use this bit as an MMTk mark bit. Will this work? (Actually the name, BUSY_FORWARDING_OFFSET is probably not the best...) There is also a gc/src/gc_header.h file that contains, #define GC_OBJECT_MARK_BIT_MASK 0x80. This seems to step on top of sync_bits.h use of this area???Can I assume gc_header.h is incorrect? -- Weldon Washburn Intel Middleware Products Division - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [classlib] [ldap] support for multiple VMs?
Hi Alexey, I have taken a look at the patch - generally it looks good to me, and if it all works ok when you test it, it's fine by me. I think if there are cases where some functionality is repeated many times, it would be good to see it split out somewhere central. However, Im not sure the port library is the right place for these functions - the port library is really a generic front hiding platform specific operations. These functions do not really fit into that category - perhaps they would be better placed in the common library (luni/src/main/native/common)? This component provides a set of helper functions required by many native modules, and seems like the right place to put them. Regards, Oliver Alexey Varlamov wrote: Oliver, Please take a look at a HARMONY-1243 patch. I fixed all bugs noticed and made parsing a bit more robust. Also, added a define for org.apache.harmony.boot.class.path name to vmi.h - to enforce that there is 2-sided contract for this property. I still think that some of those functions may worth to be added to the portlib, namely: char * str_concat (HyPortLibrary * portLibrary, ...); int props_read_from_file(HyPortLibrary * portLibrary, const char *filename, key_value_pair** properties, U_32 *number); void props_free(HyPortLibrary * portLibrary, key_value_pair * properties); Justification: the same functionality is duplicated at least in launcher/shared/main.c, and there are other property files to be read by VM. If nobody object, I will try to add these 3 functions to portlib. -- Oliver Deakin IBM United Kingdom Limited - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [DRLVM][VM] -- which header bits are available for GC mark and GC forwarding use?
Weldon, There bit layout was the following before new thread manager integration: object info word contains: 0 bit - available for GC 1-6 bits - object hashcode 7 bit - contention bit unused by TM, but used by GC_V4 8-31 bits - other thread manager's data The new Thread Manager use only 10-31 bit for its own data. So you could also use 8-9 bits for GC purpose. These bits could be read any time, but modified only at GC stop the world phase, because they share a byte with a monitor recursion count and other bits. This byte is updated without a lock Thanks Artem - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [DRLVM][VM] -- which header bits are available for GC mark and GC forwarding use?
Weldon Washburn wrote: Looking at drlvm/trunk, it looks like vmcore/include/sync_bits.h defines the use of *(ref_ptr +4) for 32-bit environment. Just guessing that #define BUSY_FORWARDING_OFFSET 0 is intended to tell the GC that it can use the least significant bit out of these four bytes. Is this correct? Yes. This is correct for the current GC (aka v4), see vm/gc/src/gc_header.h 48 // 49 // Use the contention bit of object header to lock stuff for now... Is this OKAY??? 50 // 51 #define GC_OBJECT_MARK_BIT_MASK 0x0080 52 #define FORWARDING_BIT_MASK 0x1 The comment is outdated. Bit 0x80 of the lockword has not been used as a contention for quite some time. GC v4 uses bit 0x80 for verification purpose. I would like to use this bit as an MMTk mark bit. Will this work? (Actually the name, BUSY_FORWARDING_OFFSET is probably not the best...) In any way, currently there is no single header file in the system, which would describe the object structure. Rather, DRLVM uses some static assumptions about object header, which are not enforced by any common include file. This would be a nice thing to solve... There is also a gc/src/gc_header.h file that contains, #define GC_OBJECT_MARK_BIT_MASK 0x80. This seems to step on top of sync_bits.h use of this area???Can I assume gc_header.h is incorrect? No. gc_header.h is correct in stating that GC v4 uses bit 0x80. However, other GC implementation have other assumptions, and Ivan recently submitted a patch (along with GC v4.1) that abstracts hashcode, and makes all lower 10 bits available for GC use, provided that GC serves the hashcode. RESUME: If a GC provides function gc_get_hashcode(), GC has 10 lower bits of lockword at its disposal. Otherwise, it can only use bits 0,7,8,9 (bits 1-6 are used by default hash implementation). One more thing to take into account, that current thread manager may access lockword in another thread (e.g. using 32 bit compare-and-swap operation to unreserve a lock), so atomic operation needs to be used when updating lockword while java threads are running. For example, see how default hashcode is implemented in vm/vmcore/src/thread/object_generic.cpp: 57 void set_hash_bits(ManagedObject *p_obj) 58 { 59 uint8 hb = (uint8) (((POINTER_SIZE_INT)p_obj 3) HASH_MASK) ; 60 // lowest 3 bits are not random enough so get rid of them 61 62 if (hb == 0) 63 hb = (23 HASH_MASK); // NO hash = zero allowed, thus hard map hb = 0 to a fixed prime number 64 65 // don't care if the cmpxchg fails -- just means someone else already set the hash *** 66 port_atomic_cas8(P_HASH_CONTENTION_BYTE(p_obj),hb, 0); 67 } - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [jira] Assigned: (HARMONY-1208) Bug fixing and cosmetics for Harmony 935
On 8/23/06, Mikhail Loenko [EMAIL PROTECTED] wrote: Hi Daniel, I've tried the patch. 4 math tests failed. Could you please take a look? Thanks, Mikhail Hi Mikhail, You are right. Two of these four tests are due to typos in the exception messages: 1)org.apache.harmony.tests.java.math.BigDecimalConstructorsTest.testConstrStringExponentIntegerMin( BigDecimalConstructorsTest.java:497) expectedScale out of range. but was Scale out of range 2)org.apache.harmony.tests.java.math.BigDecimalScaleOperationsTest.testMovePointRightException( BigDecimalScaleOperationsTest.java:335) expectedUnderflow but was UnderFlow We corrected them (and a similar problem with Overflow) with a new patch typos.diff.zipĀ“ in H1208. The other two failing tests require some discussion. 3)org.apache.harmony.tests.java.math.BigDecimalConstructorsTest.testConstrBI(BigDecimalConstructorsTest.java:75) I believe the test is wrong in this case since according to the API specification the NullPointerException will actually be thrown before the try block. The test incorrectly expects it to be thrown in the block. The RI also fails this test. 4)org.apache.harmony.tests.java.math.BigDecimalArithmeticTest.testDivideByZero(BigDecimalArithmeticTest.java:492) expected BigInteger divide by zero but was Division by zero This is not just a typo. Both exception messages are used by the RI in different BigDecimal.divide methods when dividing by BigDecimal.ZERO. There is at least a third message: / by zero. Some methods seem to use different messages depending on the size of the dividend. So, I see two possibilities here: a) use everywhere the message Division by zero. b) try to find out when RI uses each of the different messages. I would suggest a) rather than b) since from the point of view of the programmer it is reasonable to obtain the same message when dividing by BigDecimal.ZERO regardless the size (or internal representation) of the dividend and the method invoked for the division. In addition, doing b) may imply inspecting the behavior of RI a bit too far. I am reluctant to do this since different messages may reveal when the unscaled value is implemented as a BigInteger and when as a primitive integral value. We submitted a new patch tests.diff.zip to H1208 correcting the test mentioned in 3) and replacing the test in 4) by another invocation to divide with the Division by zero message. Both RI and our implementation pass the tests. I think both patches should be applied. In the meantime we may discuss if the approach b) is preferred. Regards, Daniel 2006/8/22, Daniel Fridlender [EMAIL PROTECTED]: Hi Mikhail, On 8/17/06, Mikhail Loenko [EMAIL PROTECTED] wrote: Hi Daniel, Please resubmit the patch with license granted to ASF done. Seems like the patch was generated against original H-935 contribution and does not take into account later changes. Could you please regenerate the patch? The new patch should be applied to the version of java.math currently in the svn repository. It includes performance update from Vladimir (with bugs fixed) and other similar optimizations. We tried to respect spacing and line breaking from the version of the repository (it often disagrees with the original H935). Thanks, Daniel Thanks, Mikhail 2006/8/17, Mikhail Loenko (JIRA) [EMAIL PROTECTED]: [ http://issues.apache.org/jira/browse/HARMONY-1208?page=all ] Mikhail Loenko reassigned HARMONY-1208: --- Assignee: Mikhail Loenko Bug fixing and cosmetics for Harmony 935 Key: HARMONY-1208 URL: http://issues.apache.org/jira/browse/HARMONY-1208 Project: Harmony Issue Type: Improvement Reporter: Daniel Fridlender Assigned To: Mikhail Loenko Priority: Minor Attachments: MathDiff.diff.zip A patch to fix some bugs in Harmony 935, turn serialization compatible with RI and some cosmetics. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - Terms of use :
Re: [DRLVM][VM] -- which header bits are available for GC mark and GC forwarding use?
On 8/24/06, Salikh Zakirov [EMAIL PROTECTED] wrote: In any way, currently there is no single header file in the system, which would describe the object structure. Rather, DRLVM uses some static assumptions about object header, which are not enforced by any common include file. This would be a nice thing to solve... Good point. There needs to be a discussion on harmony-dev regarding how the object header bits are sliced and diced. From talking to the MMTk guys (Steve Blackburn) it seems MMTk wants to have one byte of object header for private use. Its unclear to me if this will be a performance problem for a product JVM. I think the hashCode can be reduced to one bit plus the object's current address at first HashCode() invocation. I'd put this hash bit in the GC byte. And make the GC byte the lowest byte in the header word. The remaining 3bytes could be used for fat/thin locks. Are there any remaining fields unaccounted for? Thoughts? -- Weldon Washburn Intel Middleware Products Division - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [DRLVM][GC] high-level design proposal for GCV5
Ivan, there is no disagreement on the importance of those verifications (or validations) for Harmony GC. :-) What I was saying is we need more thinking on the design than the rough idea, such as when, how, what, etc. Have you any good idea on the write barrier verfication design? Thanks, -xiaofeng On 8/24/06, Ivan Volosyuk [EMAIL PROTECTED] wrote: It might also make sense to design in a write barrier verifier. The concept is to verify that all the old-to-young pointers are properly handled. One way of doing this is to force a full heap mark. Then compare the full heap mark's old-to-young pointers to what the write barrier mechanism derived. This needs more thinking. The old-to-yound pointers got in a full-heap marking have only live ones. But I think the idea to have some write barrier verifier is interesting, e..g, the rememebered set has to be a superset of live old-to-yound pointers. IMHO, write barrier verifier is a _must_ to have feature for us. The same applies to full heap tracing-validation. As VM and JIT code are subject of changes, it should be the way to isolate bugs introduced by GC and the ones coming from VM/JIT. -- Ivan Thanks, xiaofeng - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: performance of drlvm
2006/8/24, zouqiong [EMAIL PROTECTED]: Hi, Mikhail, 1. As for the list 2, Chilimbi acutally use GC moving objects to improve the cache localty [Profile-guided Proactive Garbage Collection for Locality Optimization], but without his algorithm. I will read the paper again. His algorithm mainly focus on applications in C or C++. Maybe we can make use of GC to imporve the effect of the algorithm. I made a mistake yesterday, Chilimbi actually investigate his algorithm behavior when GC move objects in memory. The paper Profile-guided Proactive Garbage Collection for Locality Optimization did so. -- Best Regards, Qiong,Zou
Re: [ClassLib][Instrument]Put tests to Harmony (and Support_Exec)
Oliver Deakin wrote: Jimmy, Jing Lv wrote: Hi, The development on instrument is going to an end (I may still apply a few patches of refine). And the tests for it do help a lot in finding bugs and applying compatibility with RI, and special thanks to Stepan and Support_Exec. :) However, I still have a problem with Support_Exec, it usually, if not always, meets a problem in loading kernel classes. Tracing into the code, I find it add a parameter -Xbootclasspath: to launcher with a System Property(com.ibm.oti.system.class.path, I'm using J9 for DRLVM not ready for jvmti yet). But the property was null on my workspace. After deleting that parameter, I get all tests pass using both Ant and eclipse. So can someone tell me how to handle this? Or can I make a little update to it? One problem here will be that com.ibm.oti.system.class.path went out with VME v3. In VME v4 we use org.apache.harmony.boot.class.path (see modules\luni\src\main\native\luni\shared\luniglob.c). Looking at Support_Exec, it appears that this setting is out of date and should be updated with the new value. Does this fix your problem? I see :) So could I fix this value? All existing tests has pass on both Harmony and RI in my workspace(Linux/windows) when make a little change to lib name. Though VM may not be updated for it very soon, I'd like to add tests to Harmony, make it excluded first until VM ready, in order that some one who is interested can check by making a little change and run tests. Any comments/suggestions? Sounds like a good idea - it seems that the workaround to run on the IBM VME is pretty straightforward, so people will be able to run the tests if they want to. Then when a new VME is out and/or drlvm catches up we can make the tests live. Great, if no objections I'll apply tests soon :) Regards, Oliver -- Best Regards! Jimmy, Jing Lv China Software Development Lab, IBM - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [jira] Updated: (HARMONY-1208) Bug fixing and cosmetics for Harmony 935
2006/8/25, Daniel Fridlender (JIRA) [EMAIL PROTECTED]: [ http://issues.apache.org/jira/browse/HARMONY-1208?page=all ] Daniel Fridlender updated HARMONY-1208: --- Attachment: tests.diff.zip The patch tests.diff to fix test cases. Hi Daniel, These test cases pass on RI, so it's not tests that must ve fixed. Thanks, Mikhail Bug fixing and cosmetics for Harmony 935 Key: HARMONY-1208 URL: http://issues.apache.org/jira/browse/HARMONY-1208 Project: Harmony Issue Type: Improvement Reporter: Daniel Fridlender Assigned To: Mikhail Loenko Priority: Minor Attachments: MathDiff.diff.zip, smallNrsOpt_BugFix.diff.zip, tests.diff.zip, typos.diff.zip A patch to fix some bugs in Harmony 935, turn serialization compatible with RI and some cosmetics. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [classlib][TestNG] How to handle bootclasspath tests
On 8/24/06, Richard Liang wrote: Hello All, I'm investigating the possibilities of migrating Harmony tests from JUnit/Directory layout to TestNG while reviewing all the related thread in mailing list. And I will try to answer the open issues. To make things simple, I will post the issues one by one. ;-) Question: How to handle bootclasspath tests? IMHO, I'm not sure whether it is a good idea to use TestNG groups to differentiate the bootclasspath tests and classpath tests. If we put bootclasspath and classpath tests in the same directory, and use TestNG groups to differentiate them. When we want to run the bootclasspath tests, we have to put all tests in bootclasspath including the classpath tests. I don't think it's a good approach. And I cannot find any ways to compile the java sources from one directory into several different directories (ANT or Eclipse). So I suggest we put bootclasspath tests and classpath tests into different directories. Yes, I agree. This is a good example for mixed approach: directory layout + TestNG annotations. Thanks, Stepan. But if we think putting all tests into bootclasspath is not a problem, we may have a workaround: running bootclasspath and classpath tests in separate tasks. I mean:1) Running bootclasspath tests with all tests in bootclasspath 2) running all classpath tests with all tests in classpath Please correct me if I'm wrong. Here is sample of how to launch TestNG in ANT: testng outputDir=${testng.report.dir} sourcedir=${test.src.dir} haltOnfailure=true verbose=3 jvm=${HarmonyVM}/bin/java bootclasspath pathelement path=../bin/tests.boot / /bootclasspath classpath pathelement path=../bin/tests / /classpath xmlfileset dir=. includes=suite.xml / /testng Thanks for reading this far. ;-) -- Richard Liang China Software Development Lab, IBM -- Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [jira] Assigned: (HARMONY-1208) Bug fixing and cosmetics for Harmony 935
Hi Daniel 2006/8/25, Daniel Fridlender [EMAIL PROTECTED]: On 8/23/06, Mikhail Loenko [EMAIL PROTECTED] wrote: Hi Daniel, I've tried the patch. 4 math tests failed. Could you please take a look? Thanks, Mikhail Hi Mikhail, You are right. Two of these four tests are due to typos in the exception messages: 1)org.apache.harmony.tests.java.math.BigDecimalConstructorsTest.testConstrStringExponentIntegerMin( BigDecimalConstructorsTest.java:497) expectedScale out of range. but was Scale out of range 2)org.apache.harmony.tests.java.math.BigDecimalScaleOperationsTest.testMovePointRightException( BigDecimalScaleOperationsTest.java:335) expectedUnderflow but was UnderFlow We corrected them (and a similar problem with Overflow) with a new patch typos.diff.zipĀ“ in H1208. The other two failing tests require some discussion. 3)org.apache.harmony.tests.java.math.BigDecimalConstructorsTest.testConstrBI(BigDecimalConstructorsTest.java:75) I believe the test is wrong in this case since according to the API specification the NullPointerException will actually be thrown before the try block. The test incorrectly expects it to be thrown in the block. The RI also fails this test. I've just rerun it on RI and it passed. What RI version do you use? I got the argument about the spec. It in a class description, right? 4)org.apache.harmony.tests.java.math.BigDecimalArithmeticTest.testDivideByZero(BigDecimalArithmeticTest.java:492) expected BigInteger divide by zero but was Division by zero This is not just a typo. Both exception messages are used by the RI in different BigDecimal.divide methods when dividing by BigDecimal.ZERO. There is at least a third message: / by zero. Some methods seem to use different messages depending on the size of the dividend. So, I see two possibilities here: a) use everywhere the message Division by zero. b) try to find out when RI uses each of the different messages. I would suggest a) rather than b) since from the point of view of the programmer it is reasonable to obtain the same message when dividing by BigDecimal.ZERO regardless the size (or internal representation) of the dividend and the method invoked for the division. In general if a programmer use only one method in their implementation where RI throws BigInteger divide by zero, then they are not aware of other exception messages and they might hard code that BigInteger divide by zero one. So I'd prefer to keep it look like RI as it is now. BUT, if this change implies an undesirable design change then I'm OK with discrepancy in exception messages Thanks, Mikhail In addition, doing b) may imply inspecting the behavior of RI a bit too far. I am reluctant to do this since different messages may reveal when the unscaled value is implemented as a BigInteger and when as a primitive integral value. We submitted a new patch tests.diff.zip to H1208 correcting the test mentioned in 3) and replacing the test in 4) by another invocation to divide with the Division by zero message. Both RI and our implementation pass the tests. I think both patches should be applied. In the meantime we may discuss if the approach b) is preferred. Regards, Daniel 2006/8/22, Daniel Fridlender [EMAIL PROTECTED]: Hi Mikhail, On 8/17/06, Mikhail Loenko [EMAIL PROTECTED] wrote: Hi Daniel, Please resubmit the patch with license granted to ASF done. Seems like the patch was generated against original H-935 contribution and does not take into account later changes. Could you please regenerate the patch? The new patch should be applied to the version of java.math currently in the svn repository. It includes performance update from Vladimir (with bugs fixed) and other similar optimizations. We tried to respect spacing and line breaking from the version of the repository (it often disagrees with the original H935). Thanks, Daniel Thanks, Mikhail 2006/8/17, Mikhail Loenko (JIRA) [EMAIL PROTECTED]: [ http://issues.apache.org/jira/browse/HARMONY-1208?page=all ] Mikhail Loenko reassigned HARMONY-1208: --- Assignee: Mikhail Loenko Bug fixing and cosmetics for Harmony 935 Key: HARMONY-1208 URL: http://issues.apache.org/jira/browse/HARMONY-1208 Project: Harmony Issue Type: Improvement Reporter: Daniel Fridlender Assigned To: Mikhail Loenko Priority: Minor Attachments: MathDiff.diff.zip A patch to fix some bugs in Harmony 935, turn serialization compatible with RI and some cosmetics. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators:
Re: [jira] Updated: (HARMONY-1208) Bug fixing and cosmetics for Harmony 935
Daniel I've just noticed your message on the mailing list. Your arguments sound reasonable, so I'll try to apply the patch Thanks, Mikhail 2006/8/25, Mikhail Loenko [EMAIL PROTECTED]: 2006/8/25, Daniel Fridlender (JIRA) [EMAIL PROTECTED]: [ http://issues.apache.org/jira/browse/HARMONY-1208?page=all ] Daniel Fridlender updated HARMONY-1208: --- Attachment: tests.diff.zip The patch tests.diff to fix test cases. Hi Daniel, These test cases pass on RI, so it's not tests that must ve fixed. Thanks, Mikhail Bug fixing and cosmetics for Harmony 935 Key: HARMONY-1208 URL: http://issues.apache.org/jira/browse/HARMONY-1208 Project: Harmony Issue Type: Improvement Reporter: Daniel Fridlender Assigned To: Mikhail Loenko Priority: Minor Attachments: MathDiff.diff.zip, smallNrsOpt_BugFix.diff.zip, tests.diff.zip, typos.diff.zip A patch to fix some bugs in Harmony 935, turn serialization compatible with RI and some cosmetics. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira - Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: performance of drlvm
Qiong, I think I need to read the whole bunch of articles of Chilimbi this weekend before to proceed with implementation. What is the list of articles you can propose to read to anyone who want to join this project? On 8/25/06, zouqiong [EMAIL PROTECTED] wrote: 2006/8/24, zouqiong [EMAIL PROTECTED]: Hi, Mikhail, 1. As for the list 2, Chilimbi acutally use GC moving objects to improve the cache localty [Profile-guided Proactive Garbage Collection for Locality Optimization], but without his algorithm. I will read the paper again. His algorithm mainly focus on applications in C or C++. Maybe we can make use of GC to imporve the effect of the algorithm. I made a mistake yesterday, Chilimbi actually investigate his algorithm behavior when GC move objects in memory. The paper Profile-guided Proactive Garbage Collection for Locality Optimization did so. -- Best Regards, Qiong,Zou -- Mikhail Fursov
RE: svn commit: r436667 - /incubator/harmony/enhanced/classlib/trunk/modules/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/SQLExceptionTest.java
Can anybody explain me what is the problem with SQLExceptionTest.java? I've updated it twice but there are no diffs in commit notifications. They only say: Binary files /tmp/tmpn4i6Jh and /tmp/tmpCQUIda differ The file has the following properties: $svn proplist -v SQLExceptionTest.java Properties on 'SQLExceptionTest.java': svn:eol-style : native Thanks, Stepan. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: Friday, August 25, 2006 12:33 PM To: [EMAIL PROTECTED] Subject: svn commit: r436667 - /incubator/harmony/enhanced/classlib/trunk/modules/sql/src/test/java/org/ap ache/harmony/sql/tests/java/sql/SQLExceptionTest.java Author: smishura Date: Thu Aug 24 22:32:55 2006 New Revision: 436667 URL: http://svn.apache.org/viewvc?rev=436667view=rev Log: Formatting Modified: incubator/harmony/enhanced/classlib/trunk/modules/sql/src/test/java/org/apa che/harmony/sql/tests/java/sql/SQLExceptionTest.java Modified: incubator/harmony/enhanced/classlib/trunk/modules/sql/src/test/java/org/apa che/harmony/sql/tests/java/sql/SQLExceptionTest.java URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modu les/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/SQLExceptionTes t.java?rev=436667r1=43r2=436667view=diff === === Binary files /tmp/tmpn4i6Jh and /tmp/tmpCQUIda differ -- Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]