Harmony
  1. Harmony
  2. HARMONY-617

[classlib][luni] HttpURLConnection does not support persistent connections

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Classlib
    • Labels:
      None

      Description

      Current HttpURLConnection does not support persistent connections while RI implementation does.
      Implementation of this mechanism will allow sufficiently increase the performance of network applications based on HttpURLConnections. To make Harmony's implementation more attractive for use this support SHALL be implemented.

      1. test.patch
        4 kB
        Alexander Kleymenov
      2. patch-test2.txt
        31 kB
        Alexander Kleymenov
      3. luni8.patch
        111 kB
        Sian January
      4. luni7.patch
        147 kB
        Sian January
      5. luni6.patch
        126 kB
        Sian January
      6. luni5.patch
        126 kB
        Sian January
      7. luni4.patch
        102 kB
        Sian January
      8. luni3.patch
        66 kB
        Sian January
      9. luni2.patch
        47 kB
        Sian January
      10. luni.patch
        38 kB
        Sian January
      11. https-test.patch
        23 kB
        Alexander Kleymenov

        Issue Links

          Activity

          Hide
          Sian January added a comment -

          I'm attaching a patch that is a kind of first-pass at implementing this. It's not ready to be comitted yet, but since I've been working on it for a couple of weeks I thought I would share where I've got to so far in case anyone wants to comment.

          The new classes are HttpConnection, which represents a persistent connection; HttpConnectionManager, which manages persistent connections and HttpConfiguration, which contains the details of an HttpConnection such as host name, port etc.

          Still to do is ensure that it works for Https connections, write tests for persistent Https connections and write some Javadoc.

          Any comments are welcome.

          Show
          Sian January added a comment - I'm attaching a patch that is a kind of first-pass at implementing this. It's not ready to be comitted yet, but since I've been working on it for a couple of weeks I thought I would share where I've got to so far in case anyone wants to comment. The new classes are HttpConnection, which represents a persistent connection; HttpConnectionManager, which manages persistent connections and HttpConfiguration, which contains the details of an HttpConnection such as host name, port etc. Still to do is ensure that it works for Https connections, write tests for persistent Https connections and write some Javadoc. Any comments are welcome.
          Hide
          Alexander Kleymenov added a comment -

          While working on testing of HTTPS with persistent connections I've found
          some problems.

          HttpConnectionManager.java:

          • does not allow to get connection if SecurityManager is set
            (problem with getProperty)
          • security issue: there is no SecurityManager checkConnect
            in getConnection methods
          • ConnectionPool.returnConnectionToPool should make sure
            that connection was not already returned

          HttpURLConnectionTest.java:

          • uses connection to internet. Tests fails if there is no (direct) internet connection

          I've supplemented HttpURLConnectionTest.java with Mock HTTP Server
          and one test case. RI works fine on this test, but Harmony fails.
          I think the problem is with returning of the used connection back to the pool.
          It should be done after HttpURLConnection's input stream has reached his end.
          I leave some debug output in the test,
          so it should be easy to understand its work.
          Please, look at the problem revealed by new test case. Attached patch
          should be applied over your patch.

          Also there are several style/indentation problems, tabs using, and trailing
          spaces in the sources.

          I'm proceeding with testing.

          Thanks,
          Alexander

          Show
          Alexander Kleymenov added a comment - While working on testing of HTTPS with persistent connections I've found some problems. HttpConnectionManager.java: does not allow to get connection if SecurityManager is set (problem with getProperty) security issue: there is no SecurityManager checkConnect in getConnection methods ConnectionPool.returnConnectionToPool should make sure that connection was not already returned HttpURLConnectionTest.java: uses connection to internet. Tests fails if there is no (direct) internet connection I've supplemented HttpURLConnectionTest.java with Mock HTTP Server and one test case. RI works fine on this test, but Harmony fails. I think the problem is with returning of the used connection back to the pool. It should be done after HttpURLConnection's input stream has reached his end. I leave some debug output in the test, so it should be easy to understand its work. Please, look at the problem revealed by new test case. Attached patch should be applied over your patch. Also there are several style/indentation problems, tabs using, and trailing spaces in the sources. I'm proceeding with testing. Thanks, Alexander
          Hide
          Sian January added a comment -

          Hi Alexander. Yes - I had implemented it to return the connection to the pool when the input stream is closed as that's what the spec says, but if the RI returns it to the pool when the input stream has all been read then we should match that. I have done that so your test now passes and converted all the tabs to spaces. I'll look at the other issues you mentioned and then post another patch. Thanks for the input.

          Show
          Sian January added a comment - Hi Alexander. Yes - I had implemented it to return the connection to the pool when the input stream is closed as that's what the spec says, but if the RI returns it to the pool when the input stream has all been read then we should match that. I have done that so your test now passes and converted all the tabs to spaces. I'll look at the other issues you mentioned and then post another patch. Thanks for the input.
          Hide
          Sian January added a comment -

          Just a couple more comments. I don't think we need to do SecurityManager checkConnect because we use Sockets under the covers and checkConnect is always called on creation of a new Socket. Surely we don't need to call it more than once for each connection?

          Also I think it would be good if we could test connections to the internet, because if we don't do that we're just testing that the client and server match up if you see what I mean, and we're not testing the code with a real http server. However if you think this is bad practice or we're not allowed to do it then the tests that use an internet connection could probably be re-written to use the new Mock HTTP Server you wrote.

          Show
          Sian January added a comment - Just a couple more comments. I don't think we need to do SecurityManager checkConnect because we use Sockets under the covers and checkConnect is always called on creation of a new Socket. Surely we don't need to call it more than once for each connection? Also I think it would be good if we could test connections to the internet, because if we don't do that we're just testing that the client and server match up if you see what I mean, and we're not testing the code with a real http server. However if you think this is bad practice or we're not allowed to do it then the tests that use an internet connection could probably be re-written to use the new Mock HTTP Server you wrote.
          Hide
          Sian January added a comment -

          I'm attaching a second patch that does the following:

          -fixes tab and space problems
          -includes Javadoc
          -allows connection if the SecurityManager is set
          -makes sure the pool won't ever have two copies of the same connection
          -fixes Alexander's test case (which is included in the patch without the debug output)

          I have left in the tests that connect to the internet and have not added more checkConnect calls for now, pending discussion.

          Show
          Sian January added a comment - I'm attaching a second patch that does the following: -fixes tab and space problems -includes Javadoc -allows connection if the SecurityManager is set -makes sure the pool won't ever have two copies of the same connection -fixes Alexander's test case (which is included in the patch without the debug output) I have left in the tests that connect to the internet and have not added more checkConnect calls for now, pending discussion.
          Hide
          Sian January added a comment -

          Please note - luni2.patch is supposed to be licensed for inclusion in ASF works. (I thought I had clicked the box but obviously missed it).

          Show
          Sian January added a comment - Please note - luni2.patch is supposed to be licensed for inclusion in ASF works. (I thought I had clicked the box but obviously missed it).
          Hide
          Alexander Kleymenov added a comment -

          Hello, Sian

          I've implemented additional test cases for HttpUC. Some of them fail on Harmony while pass on RI:

          • testConnectionPersistence2, testConnectionPersistence3
            I think the cause of the failure is as before.
            Here we do not reach -1, but input stream was exhausted.
          • testProxiedConnectionPersistence
            Test that a connection made through proxy will be reused for connection establishing without proxy. It fails.

          Please, look at these failures. For your convenience I've added DEBUG switch to the test.
          Note: patch should be applied on clean SVN version of the test.

          Thank you,
          Alexander

          Show
          Alexander Kleymenov added a comment - Hello, Sian I've implemented additional test cases for HttpUC. Some of them fail on Harmony while pass on RI: testConnectionPersistence2, testConnectionPersistence3 I think the cause of the failure is as before. Here we do not reach -1, but input stream was exhausted. testProxiedConnectionPersistence Test that a connection made through proxy will be reused for connection establishing without proxy. It fails. Please, look at these failures. For your convenience I've added DEBUG switch to the test. Note: patch should be applied on clean SVN version of the test. Thank you, Alexander
          Hide
          Alexander Kleymenov added a comment -

          Hello,

          What's regarding SecurityManager.checkConnect. I think it should be done
          because HttpConnectionManager class (along with its getConnection methods) is
          publicly available. So it is possible for intruder to get [established]
          connection passing over security check. Moreover even in case of access level
          decreasing from public to package, it will be possible for intruder to get these
          connections through HttpURLConnection class. So I don't see other preventive
          actions. Are there any other possible approaches?

          Thanks,
          Alexander

          Show
          Alexander Kleymenov added a comment - Hello, What's regarding SecurityManager.checkConnect. I think it should be done because HttpConnectionManager class (along with its getConnection methods) is publicly available. So it is possible for intruder to get [established] connection passing over security check. Moreover even in case of access level decreasing from public to package, it will be possible for intruder to get these connections through HttpURLConnection class. So I don't see other preventive actions. Are there any other possible approaches? Thanks, Alexander
          Hide
          Sian January added a comment -

          I see what you mean about the SecurityManager.checkConnect - it does the check on a per-thread basis and it might be a different thread getting hold of a connection than the thread that created it. I will add that in. I have fixed your first two test failures but am still working on the third so I won't post a new patch until that is done.

          Show
          Sian January added a comment - I see what you mean about the SecurityManager.checkConnect - it does the check on a per-thread basis and it might be a different thread getting hold of a connection than the thread that created it. I will add that in. I have fixed your first two test failures but am still working on the third so I won't post a new patch until that is done.
          Hide
          Sian January added a comment -

          Hi Alexander,

          I'm not sure about testProxiedConnectionPersistence. It seems to be making the connection in two different ways -

          HttpURLConnection c = (HttpURLConnection)
          new URL("http://some.host:1234")
          .openConnection(new Proxy(Proxy.Type.HTTP,
          new InetSocketAddress("localhost",
          httpServer.port())));

          and

          HttpURLConnection c2 = (HttpURLConnection)
          new URL("http://some.host:1234").openConnection();

          If I change the second one to be the following:

          HttpURLConnection c2 = (HttpURLConnection)
          new URL("http://some.host:1234")
          .openConnection(new Proxy(Proxy.Type.HTTP,
          new InetSocketAddress("localhost",
          httpServer.port())));

          then the test passes. What do you think?

          Show
          Sian January added a comment - Hi Alexander, I'm not sure about testProxiedConnectionPersistence. It seems to be making the connection in two different ways - HttpURLConnection c = (HttpURLConnection) new URL("http://some.host:1234") .openConnection(new Proxy(Proxy.Type.HTTP, new InetSocketAddress("localhost", httpServer.port()))); and HttpURLConnection c2 = (HttpURLConnection) new URL("http://some.host:1234").openConnection(); If I change the second one to be the following: HttpURLConnection c2 = (HttpURLConnection) new URL("http://some.host:1234") .openConnection(new Proxy(Proxy.Type.HTTP, new InetSocketAddress("localhost", httpServer.port()))); then the test passes. What do you think?
          Hide
          Alexander Kleymenov added a comment -

          Hi Sian,

          I think testProxiedConnectionPersistence is correct - it exposes
          functional differences between RI's and Harmony's implementations of HttpUC.
          I think we should comply with RI's behavior here.

          I've checked HttpUCTest. Now (as under SVN) it is implementation
          independent (i.e. it can go on every class library).
          But some of our new test cases depends on internals of HttpUC implementation.
          I think it could be more suitable to put such a test cases into another test
          (or try to reimplement them in implementation independent manner).

          Thank you,
          Alexander

          Show
          Alexander Kleymenov added a comment - Hi Sian, I think testProxiedConnectionPersistence is correct - it exposes functional differences between RI's and Harmony's implementations of HttpUC. I think we should comply with RI's behavior here. I've checked HttpUCTest. Now (as under SVN) it is implementation independent (i.e. it can go on every class library). But some of our new test cases depends on internals of HttpUC implementation. I think it could be more suitable to put such a test cases into another test (or try to reimplement them in implementation independent manner). Thank you, Alexander
          Hide
          Tim Ellison added a comment -

          (please move ths conversation onto the dev list)

          Show
          Tim Ellison added a comment - (please move ths conversation onto the dev list)
          Hide
          Sian January added a comment -

          Have just started a thread on the dev list. It's called [jira] Commented: (HARMONY-617) [classlib][luni] HttpURLConnection does not support persistent connections.

          Show
          Sian January added a comment - Have just started a thread on the dev list. It's called [jira] Commented: ( HARMONY-617 ) [classlib] [luni] HttpURLConnection does not support persistent connections.
          Hide
          Sian January added a comment -

          My latest patch (luni3.patch) fixes Alexander's tests to comply with the RI on how proxied connections are reused. I have not yet separated out the tests that are implementation specific but I am planning to move them into a separate class in the same package (e.g. org.apache.harmony.tests.internal.net.www.protocol.http.PersistenceTest) unless anyone disagrees.

          Show
          Sian January added a comment - My latest patch (luni3.patch) fixes Alexander's tests to comply with the RI on how proxied connections are reused. I have not yet separated out the tests that are implementation specific but I am planning to move them into a separate class in the same package (e.g. org.apache.harmony.tests.internal.net.www.protocol.http.PersistenceTest) unless anyone disagrees.
          Hide
          Alexander Kleymenov added a comment -

          Attached is an additional test cases on HTTPs persistance checking.
          Test passes with luni3.patch applied.

          Show
          Alexander Kleymenov added a comment - Attached is an additional test cases on HTTPs persistance checking. Test passes with luni3.patch applied.
          Hide
          Sian January added a comment -

          Attaching a further patch (luni4.patch) that contains Alexander's latest tests and another security test I wrote, as discussed on the mailing list. The security test checks that SecurityManager.checkConnect is called on acquiring a connection and also that System.getProperty is not called directly by the HttpConnectionManager.

          I'm happy for this patch to be comitted if Alexander is happy with the security test.

          Show
          Sian January added a comment - Attaching a further patch (luni4.patch) that contains Alexander's latest tests and another security test I wrote, as discussed on the mailing list. The security test checks that SecurityManager.checkConnect is called on acquiring a connection and also that System.getProperty is not called directly by the HttpConnectionManager. I'm happy for this patch to be comitted if Alexander is happy with the security test.
          Hide
          Alexander Kleymenov added a comment -

          Hi Sian,

          There are several issues with the luni4.patch which we should resolve
          before its integration:

          HttpURLConnectionTest.java

          • licence header is absent (it was occasionally removed).
          • testSecurityManager does not restore SecurityManager, consequent test
            cases fail with SecurityException. Suggested fix: restore System's default
            Security Manager in finally sections of try-catch blocks.

          PersistenceTest.java

          • still fails in case of unavailable direct internet connection.
            Perhaps we should use Jetty approach suggested by Andrew here, or
            use some switches to turn these test cases off.

          Also there are several small style problems in the sources (tabs instead of
          spaces and trailing spaces).

          Thanks,
          Alexander

          Show
          Alexander Kleymenov added a comment - Hi Sian, There are several issues with the luni4.patch which we should resolve before its integration: HttpURLConnectionTest.java licence header is absent (it was occasionally removed). testSecurityManager does not restore SecurityManager, consequent test cases fail with SecurityException. Suggested fix: restore System's default Security Manager in finally sections of try-catch blocks. PersistenceTest.java still fails in case of unavailable direct internet connection. Perhaps we should use Jetty approach suggested by Andrew here, or use some switches to turn these test cases off. Also there are several small style problems in the sources (tabs instead of spaces and trailing spaces). Thanks, Alexander
          Hide
          Paulex Yang added a comment -

          Alexander and Sian,

          I'm looking at the latest patch, but had some problems to apply the https-test.patch after applying luni-4.patch, I believe this is caused by confliction between this two patches on HttpsURLConnectionTest, so I wonder what's the relationship between them? Does one of them include another on the test part? If not, how to merge them easily? Thanks a lot.

          Show
          Paulex Yang added a comment - Alexander and Sian, I'm looking at the latest patch, but had some problems to apply the https-test.patch after applying luni-4.patch, I believe this is caused by confliction between this two patches on HttpsURLConnectionTest, so I wonder what's the relationship between them? Does one of them include another on the test part? If not, how to merge them easily? Thanks a lot.
          Hide
          Sian January added a comment -

          Hi Paulex,

          You just need luni-4.patch as that incorporates all Alexander's tests (including https-test.patch).

          Thanks,

          Sian

          Show
          Sian January added a comment - Hi Paulex, You just need luni-4.patch as that incorporates all Alexander's tests (including https-test.patch). Thanks, Sian
          Hide
          Sian January added a comment -

          I would like to look at using Jetty to re-implement the tests that currently require a direct internet connection if possible, as it seems like that is what has been agreed (http://harmony.apache.org/subcomponents/classlibrary/agreements.html). However I think it might be best to wait until HARMONY-2093, HARMONY-2096 and HARMONY-2097 have been completed so that the infrastructure is available and I can re-use some of that work.

          Alexander - would it make sense to check in the work done so far on this issue (i.e. everything except PersistenceTest) if I fix the other problems you mentioned or would it be better to wait for PersistenceTest to be rewritten?

          Show
          Sian January added a comment - I would like to look at using Jetty to re-implement the tests that currently require a direct internet connection if possible, as it seems like that is what has been agreed ( http://harmony.apache.org/subcomponents/classlibrary/agreements.html ). However I think it might be best to wait until HARMONY-2093 , HARMONY-2096 and HARMONY-2097 have been completed so that the infrastructure is available and I can re-use some of that work. Alexander - would it make sense to check in the work done so far on this issue (i.e. everything except PersistenceTest) if I fix the other problems you mentioned or would it be better to wait for PersistenceTest to be rewritten?
          Hide
          Alexander Kleymenov added a comment -

          Sian,

          I don't think PersistenceTest is a blocker for persistence implementation.
          I'am agree with checking the fixes in (with fixed HttpURLConnectionTest.java).

          Thank you,
          Alexander

          Show
          Alexander Kleymenov added a comment - Sian, I don't think PersistenceTest is a blocker for persistence implementation. I'am agree with checking the fixes in (with fixed HttpURLConnectionTest.java). Thank you, Alexander
          Hide
          Sian January added a comment -

          Sorry about the delay on this - I was away last week and have had problems trying to test this patch today and yesterday. However it is now ready to be comitted. luni5.patch contains the latest fixes to the issues Alexander mentioned, and all of the tests written by both of us (except the ones in PersistenceTest.java, which need to be rewritten and can be covered in another issue).

          Show
          Sian January added a comment - Sorry about the delay on this - I was away last week and have had problems trying to test this patch today and yesterday. However it is now ready to be comitted. luni5.patch contains the latest fixes to the issues Alexander mentioned, and all of the tests written by both of us (except the ones in PersistenceTest.java, which need to be rewritten and can be covered in another issue).
          Hide
          Sian January added a comment -

          Could somebody please set 'Patch Available' on this issue as I don't seem to have the right. Thanks.

          Show
          Sian January added a comment - Could somebody please set 'Patch Available' on this issue as I don't seem to have the right. Thanks.
          Hide
          Paulex Yang added a comment -

          Sian, I tried the luni5.patch, but seems it causes a couple of NPE in tests.api.java.net.HttpURLConnectionTest, seems in which case, the connection field in HttpURLConnection hasn't been inited yet.

          Further, I think the two test classes in the patch can be merged into current tests in modules/luni/src/test/java/org/apache/harmony/luni/tests/internal/net/www/protocol/, did I missed any reason they are separated to another package?

          Show
          Paulex Yang added a comment - Sian, I tried the luni5.patch, but seems it causes a couple of NPE in tests.api.java.net.HttpURLConnectionTest, seems in which case, the connection field in HttpURLConnection hasn't been inited yet. Further, I think the two test classes in the patch can be merged into current tests in modules/luni/src/test/java/org/apache/harmony/ luni /tests/internal/net/www/protocol/, did I missed any reason they are separated to another package?
          Hide
          Sian January added a comment -

          Hi Paulex,

          Sorry about the NPEs - I haven't been able to run the entire test suite due to problems on my machine. They should be fixed in luni6.patch. The tests are in two files because we have different tests for http connections and https connections. I think because both files are quite big and have differences between the mock servers it probably does make sense to keep them separate.

          Thanks,

          Sian

          Show
          Sian January added a comment - Hi Paulex, Sorry about the NPEs - I haven't been able to run the entire test suite due to problems on my machine. They should be fixed in luni6.patch. The tests are in two files because we have different tests for http connections and https connections. I think because both files are quite big and have differences between the mock servers it probably does make sense to keep them separate. Thanks, Sian
          Hide
          Sian January added a comment -

          Ok - I have now rewritten the tests that required a network connection to use Jetty instead. Thanks to Tony's work in HARMONY-2096 it was actually really easy. So luni-7.patch also contains the extra tests that weren't in luni6.

          Show
          Sian January added a comment - Ok - I have now rewritten the tests that required a network connection to use Jetty instead. Thanks to Tony's work in HARMONY-2096 it was actually really easy. So luni-7.patch also contains the extra tests that weren't in luni6.
          Hide
          Paulex Yang added a comment -

          Sian, thank you very much for this enhancement, luni7.patch is applied at revision r523254, please verify.

          About the test cases, seems I didn't make myself clear, I meant there are two existing test cases for HttpURLConnection and HttpsURLConnection, and seems they are originated from same codes with the tests included in the patches, but the they are in different packages, one is o.a.h.luni.test.blabla, another is o.a.h.test.blabla, so I supposed they can be merged. I've overwritten the original tests with the ones in the patch, and seems all tests can pass, please also verify if this is the right thing to do.

          Alexander, please also help to verify the issue is fully resolved, thank you.

          Show
          Paulex Yang added a comment - Sian, thank you very much for this enhancement, luni7.patch is applied at revision r523254, please verify. About the test cases, seems I didn't make myself clear, I meant there are two existing test cases for HttpURLConnection and HttpsURLConnection, and seems they are originated from same codes with the tests included in the patches, but the they are in different packages, one is o.a.h. luni .test.blabla, another is o.a.h.test.blabla, so I supposed they can be merged. I've overwritten the original tests with the ones in the patch, and seems all tests can pass, please also verify if this is the right thing to do. Alexander, please also help to verify the issue is fully resolved, thank you.
          Hide
          Igor V. Stolyarov added a comment -

          Hi Paulex,
          After your fix I've began receiving following exceptions on JBoss AS:
          Caused by: java.net.SocketException: Bad socket
          at org.apache.harmony.luni.platform.OSNetworkSystem.sendStreamImpl(Native Method)
          at org.apache.harmony.luni.platform.OSNetworkSystem.sendStream(Unknown Source)
          at org.apache.harmony.luni.net.PlainSocketImpl.write(Unknown Source)
          at org.apache.harmony.luni.net.SocketOutputStream.write(Unknown Source)
          at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.sendRequest(Unknown Source)
          at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.doRequestInternal(Unknown Source)
          at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.doRequest(Unknown Source)
          at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)

          If rollback sources all works fine

          Thanks,
          Igor

          Show
          Igor V. Stolyarov added a comment - Hi Paulex, After your fix I've began receiving following exceptions on JBoss AS: Caused by: java.net.SocketException: Bad socket at org.apache.harmony.luni.platform.OSNetworkSystem.sendStreamImpl(Native Method) at org.apache.harmony.luni.platform.OSNetworkSystem.sendStream(Unknown Source) at org.apache.harmony.luni.net.PlainSocketImpl.write(Unknown Source) at org.apache.harmony.luni.net.SocketOutputStream.write(Unknown Source) at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.sendRequest(Unknown Source) at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.doRequestInternal(Unknown Source) at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.doRequest(Unknown Source) at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) If rollback sources all works fine Thanks, Igor
          Hide
          Paulex Yang added a comment -

          Igor, thank you to point it out. I just found same issue when trying to fix HARMONY-3434, seems there is still something to do on this. Rolled back at revision r523583.

          Show
          Paulex Yang added a comment - Igor, thank you to point it out. I just found same issue when trying to fix HARMONY-3434 , seems there is still something to do on this. Rolled back at revision r523583.
          Hide
          Igor V. Stolyarov added a comment -

          Thank you Paulex.

          Best regards,
          Igor

          Show
          Igor V. Stolyarov added a comment - Thank you Paulex. Best regards, Igor
          Hide
          Sian January added a comment -

          Hello - just wanted to say I am looking at this, but I'm not really sure why it's failing at the moment, so I'm not sure how long it's going to take to fix.

          Show
          Sian January added a comment - Hello - just wanted to say I am looking at this, but I'm not really sure why it's failing at the moment, so I'm not sure how long it's going to take to fix.
          Hide
          Sian January added a comment -

          I've attached a fix for the issues that required a rollback (luni8.patch). It definitely fixes HARMONY-3434, and I've done some basic testing on JBoss and not seen any problems there. I will also check with Igor whether I need to do anything more.

          It's probably best waiting until after the stable milestone build is created at the end of April before checking this in as it's quite a major change.

          Show
          Sian January added a comment - I've attached a fix for the issues that required a rollback (luni8.patch). It definitely fixes HARMONY-3434 , and I've done some basic testing on JBoss and not seen any problems there. I will also check with Igor whether I need to do anything more. It's probably best waiting until after the stable milestone build is created at the end of April before checking this in as it's quite a major change.
          Hide
          Paulex Yang added a comment -

          Sorry for delay so long, and thank you very much for all your attention on this long opened issue, especially to Sian for all your patches . The luni8.patch is applied at r552679, please verify.

          Show
          Paulex Yang added a comment - Sorry for delay so long, and thank you very much for all your attention on this long opened issue, especially to Sian for all your patches . The luni8.patch is applied at r552679, please verify.
          Hide
          Sian January added a comment -

          Hello. Sorry for the delay in verifying - I have been on holiday. Anyway the patch was applied as expected. Thank you.

          Show
          Sian January added a comment - Hello. Sorry for the delay in verifying - I have been on holiday. Anyway the patch was applied as expected. Thank you.
          Hide
          Alexander Kleymenov added a comment -

          FIne! Thank you!
          I'm closing it!

          Show
          Alexander Kleymenov added a comment - FIne! Thank you! I'm closing it!

            People

            • Assignee:
              Paulex Yang
              Reporter:
              Alexander Kleymenov
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development