Re: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work.
Yes please, with the Solaris update. Thanks, Roger On 12/11/2018 02:52 AM, Volker Simonis wrote: Hi Roger, just to clarify - do you want us to push the last version [1] which adds "|| forceNullOutputStream)" to the Solaris version as well? Thank you and best regards, Volker [1] http://cr.openjdk.java.net/~sgroeger/jtreg/8211844/webrev.01/ On Mon, Dec 10, 2018 at 6:30 PM Roger Riggs wrote: Hi, The change looks fine and passes the current tests. So ok to push. I think the test isn't correct, but I have not yet worked up a revised test. Thanks, Roger On 12/10/2018 09:00 AM, Lindenmaier, Goetz wrote: Hi Steve, I will push it once Roger gives his ok. Best regards, Goetz. -Original Message- From: Steve Groeger Sent: Montag, 10. Dezember 2018 14:42 To: Lindenmaier, Goetz Cc: core-libs-dev@openjdk.java.net; Roger Riggs Subject: RE: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work. Hi Goetz, It is good that the tests you ran passed. What needs to be done now to get this change pushed into the main code? Thanks Steve Groeger IBM Runtime Technologies Hursley, Winchester Tel: (44) 1962 816911 Mobex: 279990 Mobile: 07718 517 129 Fax (44) 1962 816800 Lotus Notes: Steve Groeger/UK/IBM Internet: groe...@uk.ibm.com Unless stated otherwise above: IBM United Kingdom Limited - Registered in England and Wales with number 741598. Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU From:"Lindenmaier, Goetz" To:Steve Groeger , Roger Riggs Cc:"core-libs-dev@openjdk.java.net" Date:10/12/2018 10:06 Subject:RE: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work. Hi, I ran the fix through our tests. There are no new regressions, and the addressed test works. So reviewed from my side. I increased the bug to P3 so we can push it to jdk12 in case we miss Thursday. Best regards, Goetz. -Original Message- From: core-libs-dev On Behalf Of Steve Groeger Sent: Freitag, 7. Dezember 2018 19:08 To: Roger Riggs Cc: core-libs-dev@openjdk.java.net Subject: Re: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work. Hi Roger, I have made the same change to the Solaris code and also removed the test from the ProblemList.txt I have created a webrev here: http://cr.openjdk.java.net/~sgroeger/jtreg/8211844/webrev.01/ <http://cr.openjdk.java.net/~sgroeger/jtreg/8211844/webrev.01/> Hope you can now test t Thanks Steve Groeger IBM Runtime Technologies Hursley, Winchester Tel: (44) 1962 816911 Mobex: 279990 Mobile: 07718 517 129 Fax (44) 1962 816800 Lotus Notes: Steve Groeger/UK/IBM Internet: groe...@uk.ibm.com Unless stated otherwise above: IBM United Kingdom Limited - Registered in England and Wales with number 741598. Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU From: Roger Riggs To: core-libs-dev@openjdk.java.net Date: 07/12/2018 14:55 Subject:Re: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work. Sent by:"core-libs-dev" Hi, I notice that the Solaris case also does not include "|| forceNullOutputStream". I'll have to investigate why the Pipeline test didn't fail on Solaris. Please add that to the patch and I'll run it through our tests. Thanks, Roger On 12/07/2018 03:05 AM, Volker Simonis wrote: Hi Steve, thanks a lot for this fix. I'm forwarding this to core-libs-dev as well, because that's where the review has to take place. The "ppc-aix-port-dev" list is mostly a marker for the port maintainers to get their attention on relevant changes (so cross-posting is fine in this case :) On Thu, Dec 6, 2018 at 4:26 PM Steve Groeger wrote: Hi all, I have been investigating the issue https://bugs.openjdk.java.net/browse/JDK-8211844 <https://bugs.openjdk.java.net/browse/JDK-8211844> raised by Goetz Lindenmaier which is related to the jdk/java/lang/ProcessBuilder/PipelineTest.java JTReg test failing on AIX. Having done some investigation I have a potential fix fore the issue: diff -r 9501a7b59111 src/java.base/unix/classes/java/lang/ProcessImpl.java --- a/src/java.base/unix/classes/java/lang/ProcessImpl.java Mon Dec 03 14:28:19 2018 +0300 +++ b/src/java.base/unix/classes/java/lang/ProcessImpl.java Thu Dec 06 15:01:03 2018 + @@ -446,7 +446,7 @@ ProcessBuilder.NullOutputStream.INSTANCE : new ProcessPipeOutputStream(fds[0]); -stdout = (fds[1] == -1) ? +stdout = (fds[1] == -1 || forceNullOutputStream) ? ProcessBuilder.NullInputStream.INSTANCE : new DeferredCloseProcessPipeInputStream(fds[1]); Your change looks good and I can sponsor it. Just as a hint for other
Re: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work.
Hi Roger, just to clarify - do you want us to push the last version [1] which adds "|| forceNullOutputStream)" to the Solaris version as well? Thank you and best regards, Volker [1] http://cr.openjdk.java.net/~sgroeger/jtreg/8211844/webrev.01/ On Mon, Dec 10, 2018 at 6:30 PM Roger Riggs wrote: > > Hi, > > The change looks fine and passes the current tests. > So ok to push. > > I think the test isn't correct, but I have not yet worked up a revised test. > > Thanks, Roger > > On 12/10/2018 09:00 AM, Lindenmaier, Goetz wrote: > > Hi Steve, > > > > I will push it once Roger gives his ok. > > > > Best regards, > >Goetz. > > > >> -Original Message- > >> From: Steve Groeger > >> Sent: Montag, 10. Dezember 2018 14:42 > >> To: Lindenmaier, Goetz > >> Cc: core-libs-dev@openjdk.java.net; Roger Riggs > >> Subject: RE: JDK-8211844 [aix] ProcessBuilder: Piping between created > >> processes does not work. > >> > >> Hi Goetz, > >> > >> It is good that the tests you ran passed. What needs to be done now to get > >> this change pushed into the main code? > >> > >> Thanks > >> Steve Groeger > >> IBM Runtime Technologies > >> Hursley, Winchester > >> Tel: (44) 1962 816911 Mobex: 279990 Mobile: 07718 517 129 > >> Fax (44) 1962 816800 > >> Lotus Notes: Steve Groeger/UK/IBM > >> Internet: groe...@uk.ibm.com > >> > >> Unless stated otherwise above: > >> IBM United Kingdom Limited - Registered in England and Wales with number > >> 741598. > >> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 > >> 3AU > >> > >> > >> > >> From:"Lindenmaier, Goetz" > >> To:Steve Groeger , Roger Riggs > >> > >> Cc:"core-libs-dev@openjdk.java.net" > >> > >> Date:10/12/2018 10:06 > >> Subject:RE: JDK-8211844 [aix] ProcessBuilder: Piping between > >> created > >> processes does not work. > >> > >> > >> > >> > >> > >> > >> Hi, > >> > >> I ran the fix through our tests. There are no new regressions, and the > >> addressed test works. > >> > >> So reviewed from my side. > >> > >> I increased the bug to P3 so we can push it to jdk12 in case we > >> miss Thursday. > >> > >> Best regards, > >> Goetz. > >> > >>> -Original Message- > >>> From: core-libs-dev On Behalf > >> Of > >>> Steve Groeger > >>> Sent: Freitag, 7. Dezember 2018 19:08 > >>> To: Roger Riggs > >>> Cc: core-libs-dev@openjdk.java.net > >>> Subject: Re: JDK-8211844 [aix] ProcessBuilder: Piping between created > >>> processes does not work. > >>> > >>> Hi Roger, > >>> > >>> I have made the same change to the Solaris code and also removed the test > >>> from the ProblemList.txt > >>> I have created a webrev here: > >>> http://cr.openjdk.java.net/~sgroeger/jtreg/8211844/webrev.01/ > >> <http://cr.openjdk.java.net/~sgroeger/jtreg/8211844/webrev.01/> > >>> Hope you can now test t > >>> > >>> Thanks > >>> Steve Groeger > >>> IBM Runtime Technologies > >>> Hursley, Winchester > >>> Tel: (44) 1962 816911 Mobex: 279990 Mobile: 07718 517 129 > >>> Fax (44) 1962 816800 > >>> Lotus Notes: Steve Groeger/UK/IBM > >>> Internet: groe...@uk.ibm.com > >>> > >>> Unless stated otherwise above: > >>> IBM United Kingdom Limited - Registered in England and Wales with > >> number > >>> 741598. > >>> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 > >>> 3AU > >>> > >>> > >>> > >>> From: Roger Riggs > >>> To: core-libs-dev@openjdk.java.net > >>> Date: 07/12/2018 14:55 > >>> Subject:Re: JDK-8211844 [aix] ProcessBuilder: Piping between > >>> created processes does not work. > >>> Sent by:"core-libs-dev" > >>> > >>> > >>> > >>> Hi, > >>> > >>> I notice that the Solaris case also does not include "|| > >>> forceNullOutputStream
Re: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work.
Hi, The change looks fine and passes the current tests. So ok to push. I think the test isn't correct, but I have not yet worked up a revised test. Thanks, Roger On 12/10/2018 09:00 AM, Lindenmaier, Goetz wrote: Hi Steve, I will push it once Roger gives his ok. Best regards, Goetz. -Original Message- From: Steve Groeger Sent: Montag, 10. Dezember 2018 14:42 To: Lindenmaier, Goetz Cc: core-libs-dev@openjdk.java.net; Roger Riggs Subject: RE: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work. Hi Goetz, It is good that the tests you ran passed. What needs to be done now to get this change pushed into the main code? Thanks Steve Groeger IBM Runtime Technologies Hursley, Winchester Tel: (44) 1962 816911 Mobex: 279990 Mobile: 07718 517 129 Fax (44) 1962 816800 Lotus Notes: Steve Groeger/UK/IBM Internet: groe...@uk.ibm.com Unless stated otherwise above: IBM United Kingdom Limited - Registered in England and Wales with number 741598. Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU From:"Lindenmaier, Goetz" To:Steve Groeger , Roger Riggs Cc:"core-libs-dev@openjdk.java.net" Date:10/12/2018 10:06 Subject: RE: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work. Hi, I ran the fix through our tests. There are no new regressions, and the addressed test works. So reviewed from my side. I increased the bug to P3 so we can push it to jdk12 in case we miss Thursday. Best regards, Goetz. -Original Message- From: core-libs-dev On Behalf Of Steve Groeger Sent: Freitag, 7. Dezember 2018 19:08 To: Roger Riggs Cc: core-libs-dev@openjdk.java.net Subject: Re: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work. Hi Roger, I have made the same change to the Solaris code and also removed the test from the ProblemList.txt I have created a webrev here: http://cr.openjdk.java.net/~sgroeger/jtreg/8211844/webrev.01/ <http://cr.openjdk.java.net/~sgroeger/jtreg/8211844/webrev.01/> Hope you can now test t Thanks Steve Groeger IBM Runtime Technologies Hursley, Winchester Tel: (44) 1962 816911 Mobex: 279990 Mobile: 07718 517 129 Fax (44) 1962 816800 Lotus Notes: Steve Groeger/UK/IBM Internet: groe...@uk.ibm.com Unless stated otherwise above: IBM United Kingdom Limited - Registered in England and Wales with number 741598. Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU From: Roger Riggs To: core-libs-dev@openjdk.java.net Date: 07/12/2018 14:55 Subject: Re: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work. Sent by:"core-libs-dev" Hi, I notice that the Solaris case also does not include "|| forceNullOutputStream". I'll have to investigate why the Pipeline test didn't fail on Solaris. Please add that to the patch and I'll run it through our tests. Thanks, Roger On 12/07/2018 03:05 AM, Volker Simonis wrote: Hi Steve, thanks a lot for this fix. I'm forwarding this to core-libs-dev as well, because that's where the review has to take place. The "ppc-aix-port-dev" list is mostly a marker for the port maintainers to get their attention on relevant changes (so cross-posting is fine in this case :) On Thu, Dec 6, 2018 at 4:26 PM Steve Groeger wrote: Hi all, I have been investigating the issue https://bugs.openjdk.java.net/browse/JDK-8211844 <https://bugs.openjdk.java.net/browse/JDK-8211844> raised by Goetz Lindenmaier which is related to the jdk/java/lang/ProcessBuilder/PipelineTest.java JTReg test failing on AIX. Having done some investigation I have a potential fix fore the issue: diff -r 9501a7b59111 src/java.base/unix/classes/java/lang/ProcessImpl.java --- a/src/java.base/unix/classes/java/lang/ProcessImpl.java Mon Dec 03 14:28:19 2018 +0300 +++ b/src/java.base/unix/classes/java/lang/ProcessImpl.java Thu Dec 06 15:01:03 2018 + @@ -446,7 +446,7 @@ ProcessBuilder.NullOutputStream.INSTANCE : new ProcessPipeOutputStream(fds[0]); -stdout = (fds[1] == -1) ? +stdout = (fds[1] == -1 || forceNullOutputStream) ? ProcessBuilder.NullInputStream.INSTANCE : new DeferredCloseProcessPipeInputStream(fds[1]); Your change looks good and I can sponsor it. Just as a hint for other reviewers I'd like to mention that this change, albeit in a shared Java file, is still AIX-only because it is in the "AIX" case of a switch statement. @Steve: can you please verify, that your change introduces no regression by running the complete jtreg test suite. Thank you and best regards, Volker I would appreciate any feedback please, and for someone to be a sponsor for this and to con
RE: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work.
Hi Steve, I will push it once Roger gives his ok. Best regards, Goetz. > -Original Message- > From: Steve Groeger > Sent: Montag, 10. Dezember 2018 14:42 > To: Lindenmaier, Goetz > Cc: core-libs-dev@openjdk.java.net; Roger Riggs > Subject: RE: JDK-8211844 [aix] ProcessBuilder: Piping between created > processes does not work. > > Hi Goetz, > > It is good that the tests you ran passed. What needs to be done now to get > this change pushed into the main code? > > Thanks > Steve Groeger > IBM Runtime Technologies > Hursley, Winchester > Tel: (44) 1962 816911 Mobex: 279990 Mobile: 07718 517 129 > Fax (44) 1962 816800 > Lotus Notes: Steve Groeger/UK/IBM > Internet: groe...@uk.ibm.com > > Unless stated otherwise above: > IBM United Kingdom Limited - Registered in England and Wales with number > 741598. > Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 > 3AU > > > > From:"Lindenmaier, Goetz" > To:Steve Groeger , Roger Riggs > > Cc: "core-libs-dev@openjdk.java.net" > Date:10/12/2018 10:06 > Subject:RE: JDK-8211844 [aix] ProcessBuilder: Piping between created > processes does not work. > > > > > > > Hi, > > I ran the fix through our tests. There are no new regressions, and the > addressed test works. > > So reviewed from my side. > > I increased the bug to P3 so we can push it to jdk12 in case we > miss Thursday. > > Best regards, > Goetz. > > > -Original Message----- > > From: core-libs-dev On Behalf > Of > > Steve Groeger > > Sent: Freitag, 7. Dezember 2018 19:08 > > To: Roger Riggs > > Cc: core-libs-dev@openjdk.java.net > > Subject: Re: JDK-8211844 [aix] ProcessBuilder: Piping between created > > processes does not work. > > > > Hi Roger, > > > > I have made the same change to the Solaris code and also removed the test > > from the ProblemList.txt > > I have created a webrev here: > > http://cr.openjdk.java.net/~sgroeger/jtreg/8211844/webrev.01/ > <http://cr.openjdk.java.net/~sgroeger/jtreg/8211844/webrev.01/> > > Hope you can now test t > > > > Thanks > > Steve Groeger > > IBM Runtime Technologies > > Hursley, Winchester > > Tel: (44) 1962 816911 Mobex: 279990 Mobile: 07718 517 129 > > Fax (44) 1962 816800 > > Lotus Notes: Steve Groeger/UK/IBM > > Internet: groe...@uk.ibm.com > > > > Unless stated otherwise above: > > IBM United Kingdom Limited - Registered in England and Wales with > number > > 741598. > > Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 > > 3AU > > > > > > > > From: Roger Riggs > > To: core-libs-dev@openjdk.java.net > > Date: 07/12/2018 14:55 > > Subject:Re: JDK-8211844 [aix] ProcessBuilder: Piping between > > created processes does not work. > > Sent by:"core-libs-dev" > > > > > > > > Hi, > > > > I notice that the Solaris case also does not include "|| > > forceNullOutputStream". > > I'll have to investigate why the Pipeline test didn't fail on Solaris. > > > > Please add that to the patch and I'll run it through our tests. > > > > Thanks, Roger > > > > On 12/07/2018 03:05 AM, Volker Simonis wrote: > > > Hi Steve, > > > > > > thanks a lot for this fix. I'm forwarding this to core-libs-dev as > > > well, because that's where the review has to take place. The > > > "ppc-aix-port-dev" list is mostly a marker for the port maintainers to > > > get their attention on relevant changes (so cross-posting is fine in > > > this case :) > > > > > > On Thu, Dec 6, 2018 at 4:26 PM Steve Groeger > > wrote: > > >> Hi all, > > >> > > >> I have been investigating the issue > > https://bugs.openjdk.java.net/browse/JDK-8211844 > <https://bugs.openjdk.java.net/browse/JDK-8211844> > > raised by Goetz Lindenmaier which is related to the > > >> jdk/java/lang/ProcessBuilder/PipelineTest.java JTReg test failing on > > AIX. Having done some investigation I have a potential fix fore the issue: > > >> > > >> > > >> diff -r 9501a7b59111 > > src/java.base/unix/classes/java/lang/ProcessImpl.java > > >> --- a/src/java.base/unix/classes/java/lang/ProcessImpl.java Mon Dec > > 03 14:28:19 2018 +0300 > > >> +++ b/src/java.base/unix/classes/java/lang/ProcessI
RE: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work.
Hi Goetz, It is good that the tests you ran passed. What needs to be done now to get this change pushed into the main code? Thanks Steve Groeger IBM Runtime Technologies Hursley, Winchester Tel: (44) 1962 816911 Mobex: 279990 Mobile: 07718 517 129 Fax (44) 1962 816800 Lotus Notes: Steve Groeger/UK/IBM Internet: groe...@uk.ibm.com Unless stated otherwise above: IBM United Kingdom Limited - Registered in England and Wales with number 741598. Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU From: "Lindenmaier, Goetz" To: Steve Groeger , Roger Riggs Cc: "core-libs-dev@openjdk.java.net" Date: 10/12/2018 10:06 Subject: RE: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work. Hi, I ran the fix through our tests. There are no new regressions, and the addressed test works. So reviewed from my side. I increased the bug to P3 so we can push it to jdk12 in case we miss Thursday. Best regards, Goetz. > -Original Message- > From: core-libs-dev On Behalf Of > Steve Groeger > Sent: Freitag, 7. Dezember 2018 19:08 > To: Roger Riggs > Cc: core-libs-dev@openjdk.java.net > Subject: Re: JDK-8211844 [aix] ProcessBuilder: Piping between created > processes does not work. > > Hi Roger, > > I have made the same change to the Solaris code and also removed the test > from the ProblemList.txt > I have created a webrev here: > http://cr.openjdk.java.net/~sgroeger/jtreg/8211844/webrev.01/ > Hope you can now test t > > Thanks > Steve Groeger > IBM Runtime Technologies > Hursley, Winchester > Tel: (44) 1962 816911 Mobex: 279990 Mobile: 07718 517 129 > Fax (44) 1962 816800 > Lotus Notes: Steve Groeger/UK/IBM > Internet: groe...@uk.ibm.com > > Unless stated otherwise above: > IBM United Kingdom Limited - Registered in England and Wales with number > 741598. > Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 > 3AU > > > > From: Roger Riggs > To: core-libs-dev@openjdk.java.net > Date: 07/12/2018 14:55 > Subject:Re: JDK-8211844 [aix] ProcessBuilder: Piping between > created processes does not work. > Sent by:"core-libs-dev" > > > > Hi, > > I notice that the Solaris case also does not include "|| > forceNullOutputStream". > I'll have to investigate why the Pipeline test didn't fail on Solaris. > > Please add that to the patch and I'll run it through our tests. > > Thanks, Roger > > On 12/07/2018 03:05 AM, Volker Simonis wrote: > > Hi Steve, > > > > thanks a lot for this fix. I'm forwarding this to core-libs-dev as > > well, because that's where the review has to take place. The > > "ppc-aix-port-dev" list is mostly a marker for the port maintainers to > > get their attention on relevant changes (so cross-posting is fine in > > this case :) > > > > On Thu, Dec 6, 2018 at 4:26 PM Steve Groeger > wrote: > >> Hi all, > >> > >> I have been investigating the issue > https://bugs.openjdk.java.net/browse/JDK-8211844 > raised by Goetz Lindenmaier which is related to the > >> jdk/java/lang/ProcessBuilder/PipelineTest.java JTReg test failing on > AIX. Having done some investigation I have a potential fix fore the issue: > >> > >> > >> diff -r 9501a7b59111 > src/java.base/unix/classes/java/lang/ProcessImpl.java > >> --- a/src/java.base/unix/classes/java/lang/ProcessImpl.java Mon Dec > 03 14:28:19 2018 +0300 > >> +++ b/src/java.base/unix/classes/java/lang/ProcessImpl.java Thu Dec > 06 15:01:03 2018 + > >> @@ -446,7 +446,7 @@ > >> ProcessBuilder.NullOutputStream.INSTANCE : > >> new ProcessPipeOutputStream(fds[0]); > >> > >> -stdout = (fds[1] == -1) ? > >> +stdout = (fds[1] == -1 || forceNullOutputStream) ? > >>ProcessBuilder.NullInputStream.INSTANCE : > >>new > DeferredCloseProcessPipeInputStream(fds[1]); > >> > > Your change looks good and I can sponsor it. Just as a hint for other > > reviewers I'd like to mention that this change, albeit in a shared > > Java file, is still AIX-only because it is in the "AIX" case of a > > switch statement. > > > > @Steve: can you please verify, that your change introduces no > > regression by running the complete jtreg test suite. > > > > Thank you and best regards, > > Volker > > > >> I would appreciate any feedback please, and for someone to be a sponso
RE: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work.
Hi, I ran the fix through our tests. There are no new regressions, and the addressed test works. So reviewed from my side. I increased the bug to P3 so we can push it to jdk12 in case we miss Thursday. Best regards, Goetz. > -Original Message- > From: core-libs-dev On Behalf Of > Steve Groeger > Sent: Freitag, 7. Dezember 2018 19:08 > To: Roger Riggs > Cc: core-libs-dev@openjdk.java.net > Subject: Re: JDK-8211844 [aix] ProcessBuilder: Piping between created > processes does not work. > > Hi Roger, > > I have made the same change to the Solaris code and also removed the test > from the ProblemList.txt > I have created a webrev here: > http://cr.openjdk.java.net/~sgroeger/jtreg/8211844/webrev.01/ > Hope you can now test t > > Thanks > Steve Groeger > IBM Runtime Technologies > Hursley, Winchester > Tel: (44) 1962 816911 Mobex: 279990 Mobile: 07718 517 129 > Fax (44) 1962 816800 > Lotus Notes: Steve Groeger/UK/IBM > Internet: groe...@uk.ibm.com > > Unless stated otherwise above: > IBM United Kingdom Limited - Registered in England and Wales with number > 741598. > Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 > 3AU > > > > From: Roger Riggs > To: core-libs-dev@openjdk.java.net > Date: 07/12/2018 14:55 > Subject:Re: JDK-8211844 [aix] ProcessBuilder: Piping between > created processes does not work. > Sent by:"core-libs-dev" > > > > Hi, > > I notice that the Solaris case also does not include "|| > forceNullOutputStream". > I'll have to investigate why the Pipeline test didn't fail on Solaris. > > Please add that to the patch and I'll run it through our tests. > > Thanks, Roger > > On 12/07/2018 03:05 AM, Volker Simonis wrote: > > Hi Steve, > > > > thanks a lot for this fix. I'm forwarding this to core-libs-dev as > > well, because that's where the review has to take place. The > > "ppc-aix-port-dev" list is mostly a marker for the port maintainers to > > get their attention on relevant changes (so cross-posting is fine in > > this case :) > > > > On Thu, Dec 6, 2018 at 4:26 PM Steve Groeger > wrote: > >> Hi all, > >> > >> I have been investigating the issue > https://bugs.openjdk.java.net/browse/JDK-8211844 > raised by Goetz Lindenmaier which is related to the > >> jdk/java/lang/ProcessBuilder/PipelineTest.java JTReg test failing on > AIX. Having done some investigation I have a potential fix fore the issue: > >> > >> > >> diff -r 9501a7b59111 > src/java.base/unix/classes/java/lang/ProcessImpl.java > >> --- a/src/java.base/unix/classes/java/lang/ProcessImpl.java Mon Dec > 03 14:28:19 2018 +0300 > >> +++ b/src/java.base/unix/classes/java/lang/ProcessImpl.java Thu Dec > 06 15:01:03 2018 + > >> @@ -446,7 +446,7 @@ > >> ProcessBuilder.NullOutputStream.INSTANCE : > >> new ProcessPipeOutputStream(fds[0]); > >> > >> -stdout = (fds[1] == -1) ? > >> +stdout = (fds[1] == -1 || forceNullOutputStream) ? > >>ProcessBuilder.NullInputStream.INSTANCE : > >>new > DeferredCloseProcessPipeInputStream(fds[1]); > >> > > Your change looks good and I can sponsor it. Just as a hint for other > > reviewers I'd like to mention that this change, albeit in a shared > > Java file, is still AIX-only because it is in the "AIX" case of a > > switch statement. > > > > @Steve: can you please verify, that your change introduces no > > regression by running the complete jtreg test suite. > > > > Thank you and best regards, > > Volker > > > >> I would appreciate any feedback please, and for someone to be a sponsor > for this and to contributute it to OpenJDK. > >> > >> Steve Groeger > >> IBM Runtime Technologies > >> Hursley, Winchester > >> Tel: (44) 1962 816911 Mobex: 279990 Mobile: 07718 517 129 > >> Fax (44) 1962 816800 > >> Lotus Notes: Steve Groeger/UK/IBM > >> Internet: groe...@uk.ibm.com > >> > >> Unless stated otherwise above: > >> IBM United Kingdom Limited - Registered in England and Wales with > number 741598. > >> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 > 3AU > >> Unless stated otherwise above: > >> IBM United Kingdom Limited - Registered in England and Wales with > number 741598. > >> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 > 3AU > > > > > > Unless stated otherwise above: > IBM United Kingdom Limited - Registered in England and Wales with number > 741598. > Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 > 3AU
Re: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work.
It fails as shown below (I've added an additional line "res:..." to print the actual content of "test.out"). For the failing test, "test.out" is always zero bytes. I think the problem is that the first process finishes before the second process in the pipe is started. In very few cases I saw the "t2_translatePipeline" test succeeding on AIX as well. I assume that was for cases where the first "tr" process was still alive when the second one was started. in: Now is the time to check! out: Now is the time to check! res: Now is the time to check! in: Now is the time to check! out: Now is the time to check! res: result not as expected java.lang.Exception: Stack trace at java.base/java.lang.Thread.dumpStack(Thread.java:1383) at PipelineTest.fail(PipelineTest.java:275) at PipelineTest.fail(PipelineTest.java:276) at PipelineTest.check(PipelineTest.java:279) at PipelineTest.verify(PipelineTest.java:189) at PipelineTest.t1_simplePipeline(PipelineTest.java:68) at PipelineTest.realMain(PipelineTest.java:42) at PipelineTest.main(PipelineTest.java:286) in: Now is the time to check! out: Now is the time to check! res: result not as expected java.lang.Exception: Stack trace at java.base/java.lang.Thread.dumpStack(Thread.java:1383) at PipelineTest.fail(PipelineTest.java:275) at PipelineTest.fail(PipelineTest.java:276) at PipelineTest.check(PipelineTest.java:279) at PipelineTest.verify(PipelineTest.java:189) at PipelineTest.t1_simplePipeline(PipelineTest.java:71) at PipelineTest.realMain(PipelineTest.java:42) at PipelineTest.main(PipelineTest.java:286) in: Now is the time to check! out: NOw is thE timE tO chEck! res: result not as expected java.lang.Exception: Stack trace at java.base/java.lang.Thread.dumpStack(Thread.java:1383) at PipelineTest.fail(PipelineTest.java:275) at PipelineTest.fail(PipelineTest.java:276) at PipelineTest.check(PipelineTest.java:279) at PipelineTest.verify(PipelineTest.java:189) at PipelineTest.t2_translatePipeline(PipelineTest.java:87) at PipelineTest.realMain(PipelineTest.java:43) at PipelineTest.main(PipelineTest.java:286) The error from the first process should be in the output of the second: java.lang.Exception: Stack trace at java.base/java.lang.Thread.dumpStack(Thread.java:1383) at PipelineTest.fail(PipelineTest.java:275) at PipelineTest.fail(PipelineTest.java:276) at PipelineTest.check(PipelineTest.java:279) at PipelineTest.t3_redirectErrorStream(PipelineTest.java:114) at PipelineTest.realMain(PipelineTest.java:44) at PipelineTest.main(PipelineTest.java:286) Passed = 15, failed = 4 Exception in thread "main" java.lang.AssertionError: Some tests failed at PipelineTest.main(PipelineTest.java:288) On Fri, Dec 7, 2018 at 6:56 PM Roger Riggs wrote: > > Hi, > > I'd be interested in how PipelineTest failed on AIX? > > It looks like PipelineTest is flawed in that verifyProcesses() does not > check > all of the 1..n Processes getInputStreams for being a null stream, only > the nth Process. > And the test is incorrectly applied to the last Process, which returns a > null > stream not because of the pipeline but because the output is redirected > to a file. > > Thanks, Roger > > > On 12/07/2018 09:52 AM, Roger Riggs wrote: > > Hi, > > > > I notice that the Solaris case also does not include "|| > > forceNullOutputStream". > > I'll have to investigate why the Pipeline test didn't fail on Solaris. > > > > Please add that to the patch and I'll run it through our tests. > > > > Thanks, Roger > > > > On 12/07/2018 03:05 AM, Volker Simonis wrote: > >> Hi Steve, > >> > >> thanks a lot for this fix. I'm forwarding this to core-libs-dev as > >> well, because that's where the review has to take place. The > >> "ppc-aix-port-dev" list is mostly a marker for the port maintainers to > >> get their attention on relevant changes (so cross-posting is fine in > >> this case :) > >> > >> On Thu, Dec 6, 2018 at 4:26 PM Steve Groeger wrote: > >>> Hi all, > >>> > >>> I have been investigating the issue > >>> https://bugs.openjdk.java.net/browse/JDK-8211844 raised by Goetz > >>> Lindenmaier which is related to the > >>> jdk/java/lang/ProcessBuilder/PipelineTest.java JTReg test failing on > >>> AIX. Having done some investigation I have a potential fix fore the > >>> issue: > >>> > >>> > >>> diff -r 9501a7b59111 > >>> src/java.base/unix/classes/java/lang/ProcessImpl.java > >>> --- a/src/java.base/unix/classes/java/lang/ProcessImpl.java Mon Dec > >>> 03 14:28:19 2018 +0300 > >>> +++ b/src/java.base/unix/classes/java/lang/ProcessImpl.java Thu Dec > >>> 06 15:01:03 2018 + > >>> @@ -446,7 +446,7 @@ > >>> ProcessBuilder.NullOutputStream.INSTANCE : > >>> new ProcessPipeOutputStream(fds[0]); > >>> > >>> -stdout = (fds[1]
Re: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work.
Hi Roger, I have made the same change to the Solaris code and also removed the test from the ProblemList.txt I have created a webrev here: http://cr.openjdk.java.net/~sgroeger/jtreg/8211844/webrev.01/ Hope you can now test t Thanks Steve Groeger IBM Runtime Technologies Hursley, Winchester Tel: (44) 1962 816911 Mobex: 279990 Mobile: 07718 517 129 Fax (44) 1962 816800 Lotus Notes: Steve Groeger/UK/IBM Internet: groe...@uk.ibm.com Unless stated otherwise above: IBM United Kingdom Limited - Registered in England and Wales with number 741598. Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU From: Roger Riggs To: core-libs-dev@openjdk.java.net Date: 07/12/2018 14:55 Subject:Re: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work. Sent by:"core-libs-dev" Hi, I notice that the Solaris case also does not include "|| forceNullOutputStream". I'll have to investigate why the Pipeline test didn't fail on Solaris. Please add that to the patch and I'll run it through our tests. Thanks, Roger On 12/07/2018 03:05 AM, Volker Simonis wrote: > Hi Steve, > > thanks a lot for this fix. I'm forwarding this to core-libs-dev as > well, because that's where the review has to take place. The > "ppc-aix-port-dev" list is mostly a marker for the port maintainers to > get their attention on relevant changes (so cross-posting is fine in > this case :) > > On Thu, Dec 6, 2018 at 4:26 PM Steve Groeger wrote: >> Hi all, >> >> I have been investigating the issue https://bugs.openjdk.java.net/browse/JDK-8211844 raised by Goetz Lindenmaier which is related to the >> jdk/java/lang/ProcessBuilder/PipelineTest.java JTReg test failing on AIX. Having done some investigation I have a potential fix fore the issue: >> >> >> diff -r 9501a7b59111 src/java.base/unix/classes/java/lang/ProcessImpl.java >> --- a/src/java.base/unix/classes/java/lang/ProcessImpl.java Mon Dec 03 14:28:19 2018 +0300 >> +++ b/src/java.base/unix/classes/java/lang/ProcessImpl.java Thu Dec 06 15:01:03 2018 + >> @@ -446,7 +446,7 @@ >> ProcessBuilder.NullOutputStream.INSTANCE : >> new ProcessPipeOutputStream(fds[0]); >> >> -stdout = (fds[1] == -1) ? >> +stdout = (fds[1] == -1 || forceNullOutputStream) ? >>ProcessBuilder.NullInputStream.INSTANCE : >>new DeferredCloseProcessPipeInputStream(fds[1]); >> > Your change looks good and I can sponsor it. Just as a hint for other > reviewers I'd like to mention that this change, albeit in a shared > Java file, is still AIX-only because it is in the "AIX" case of a > switch statement. > > @Steve: can you please verify, that your change introduces no > regression by running the complete jtreg test suite. > > Thank you and best regards, > Volker > >> I would appreciate any feedback please, and for someone to be a sponsor for this and to contributute it to OpenJDK. >> >> Steve Groeger >> IBM Runtime Technologies >> Hursley, Winchester >> Tel: (44) 1962 816911 Mobex: 279990 Mobile: 07718 517 129 >> Fax (44) 1962 816800 >> Lotus Notes: Steve Groeger/UK/IBM >> Internet: groe...@uk.ibm.com >> >> Unless stated otherwise above: >> IBM United Kingdom Limited - Registered in England and Wales with number 741598. >> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU >> Unless stated otherwise above: >> IBM United Kingdom Limited - Registered in England and Wales with number 741598. >> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU Unless stated otherwise above: IBM United Kingdom Limited - Registered in England and Wales with number 741598. Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
Re: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work.
Hi, I'd be interested in how PipelineTest failed on AIX? It looks like PipelineTest is flawed in that verifyProcesses() does not check all of the 1..n Processes getInputStreams for being a null stream, only the nth Process. And the test is incorrectly applied to the last Process, which returns a null stream not because of the pipeline but because the output is redirected to a file. Thanks, Roger On 12/07/2018 09:52 AM, Roger Riggs wrote: Hi, I notice that the Solaris case also does not include "|| forceNullOutputStream". I'll have to investigate why the Pipeline test didn't fail on Solaris. Please add that to the patch and I'll run it through our tests. Thanks, Roger On 12/07/2018 03:05 AM, Volker Simonis wrote: Hi Steve, thanks a lot for this fix. I'm forwarding this to core-libs-dev as well, because that's where the review has to take place. The "ppc-aix-port-dev" list is mostly a marker for the port maintainers to get their attention on relevant changes (so cross-posting is fine in this case :) On Thu, Dec 6, 2018 at 4:26 PM Steve Groeger wrote: Hi all, I have been investigating the issue https://bugs.openjdk.java.net/browse/JDK-8211844 raised by Goetz Lindenmaier which is related to the jdk/java/lang/ProcessBuilder/PipelineTest.java JTReg test failing on AIX. Having done some investigation I have a potential fix fore the issue: diff -r 9501a7b59111 src/java.base/unix/classes/java/lang/ProcessImpl.java --- a/src/java.base/unix/classes/java/lang/ProcessImpl.java Mon Dec 03 14:28:19 2018 +0300 +++ b/src/java.base/unix/classes/java/lang/ProcessImpl.java Thu Dec 06 15:01:03 2018 + @@ -446,7 +446,7 @@ ProcessBuilder.NullOutputStream.INSTANCE : new ProcessPipeOutputStream(fds[0]); - stdout = (fds[1] == -1) ? + stdout = (fds[1] == -1 || forceNullOutputStream) ? ProcessBuilder.NullInputStream.INSTANCE : new DeferredCloseProcessPipeInputStream(fds[1]); Your change looks good and I can sponsor it. Just as a hint for other reviewers I'd like to mention that this change, albeit in a shared Java file, is still AIX-only because it is in the "AIX" case of a switch statement. @Steve: can you please verify, that your change introduces no regression by running the complete jtreg test suite. Thank you and best regards, Volker I would appreciate any feedback please, and for someone to be a sponsor for this and to contributute it to OpenJDK. Steve Groeger IBM Runtime Technologies Hursley, Winchester Tel: (44) 1962 816911 Mobex: 279990 Mobile: 07718 517 129 Fax (44) 1962 816800 Lotus Notes: Steve Groeger/UK/IBM Internet: groe...@uk.ibm.com Unless stated otherwise above: IBM United Kingdom Limited - Registered in England and Wales with number 741598. Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU Unless stated otherwise above: IBM United Kingdom Limited - Registered in England and Wales with number 741598. Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
Re: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work.
Hi, I notice that the Solaris case also does not include "|| forceNullOutputStream". I'll have to investigate why the Pipeline test didn't fail on Solaris. Please add that to the patch and I'll run it through our tests. Thanks, Roger On 12/07/2018 03:05 AM, Volker Simonis wrote: Hi Steve, thanks a lot for this fix. I'm forwarding this to core-libs-dev as well, because that's where the review has to take place. The "ppc-aix-port-dev" list is mostly a marker for the port maintainers to get their attention on relevant changes (so cross-posting is fine in this case :) On Thu, Dec 6, 2018 at 4:26 PM Steve Groeger wrote: Hi all, I have been investigating the issue https://bugs.openjdk.java.net/browse/JDK-8211844 raised by Goetz Lindenmaier which is related to the jdk/java/lang/ProcessBuilder/PipelineTest.java JTReg test failing on AIX. Having done some investigation I have a potential fix fore the issue: diff -r 9501a7b59111 src/java.base/unix/classes/java/lang/ProcessImpl.java --- a/src/java.base/unix/classes/java/lang/ProcessImpl.java Mon Dec 03 14:28:19 2018 +0300 +++ b/src/java.base/unix/classes/java/lang/ProcessImpl.java Thu Dec 06 15:01:03 2018 + @@ -446,7 +446,7 @@ ProcessBuilder.NullOutputStream.INSTANCE : new ProcessPipeOutputStream(fds[0]); -stdout = (fds[1] == -1) ? +stdout = (fds[1] == -1 || forceNullOutputStream) ? ProcessBuilder.NullInputStream.INSTANCE : new DeferredCloseProcessPipeInputStream(fds[1]); Your change looks good and I can sponsor it. Just as a hint for other reviewers I'd like to mention that this change, albeit in a shared Java file, is still AIX-only because it is in the "AIX" case of a switch statement. @Steve: can you please verify, that your change introduces no regression by running the complete jtreg test suite. Thank you and best regards, Volker I would appreciate any feedback please, and for someone to be a sponsor for this and to contributute it to OpenJDK. Steve Groeger IBM Runtime Technologies Hursley, Winchester Tel: (44) 1962 816911 Mobex: 279990 Mobile: 07718 517 129 Fax (44) 1962 816800 Lotus Notes: Steve Groeger/UK/IBM Internet: groe...@uk.ibm.com Unless stated otherwise above: IBM United Kingdom Limited - Registered in England and Wales with number 741598. Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU Unless stated otherwise above: IBM United Kingdom Limited - Registered in England and Wales with number 741598. Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
RE: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work.
Hi, To me, the change looks good, too. I just wondered whether solaris needs to be fixed, too. But I don’t see the test failing on solaris. The bug needs to be removed from the ProblemList in the change, though. See also http://cr.openjdk.java.net/~goetz/wr18/sgroeger/8211844-aix_pipe_proc/01/ I would sponsor this issue. Best regards, Goetz. > -Original Message- > From: core-libs-dev On Behalf > Of Volker Simonis > Sent: Friday, December 7, 2018 9:05 AM > To: Steve Groeger ; Java Core Libs d...@openjdk.java.net> > Cc: ppc-aix-port-...@openjdk.java.net > Subject: Re: JDK-8211844 [aix] ProcessBuilder: Piping between created > processes does not work. > > Hi Steve, > > thanks a lot for this fix. I'm forwarding this to core-libs-dev as > well, because that's where the review has to take place. The > "ppc-aix-port-dev" list is mostly a marker for the port maintainers to > get their attention on relevant changes (so cross-posting is fine in > this case :) > > On Thu, Dec 6, 2018 at 4:26 PM Steve Groeger > wrote: > > > > Hi all, > > > > I have been investigating the issue > https://bugs.openjdk.java.net/browse/JDK-8211844 raised by Goetz > Lindenmaier which is related to the > > jdk/java/lang/ProcessBuilder/PipelineTest.java JTReg test failing on AIX. > Having done some investigation I have a potential fix fore the issue: > > > > > > diff -r 9501a7b59111 src/java.base/unix/classes/java/lang/ProcessImpl.java > > --- a/src/java.base/unix/classes/java/lang/ProcessImpl.java Mon Dec 03 > 14:28:19 2018 +0300 > > +++ b/src/java.base/unix/classes/java/lang/ProcessImpl.java Thu Dec 06 > 15:01:03 2018 + > > @@ -446,7 +446,7 @@ > > ProcessBuilder.NullOutputStream.INSTANCE : > > new ProcessPipeOutputStream(fds[0]); > > > > -stdout = (fds[1] == -1) ? > > +stdout = (fds[1] == -1 || forceNullOutputStream) ? > > ProcessBuilder.NullInputStream.INSTANCE : > > new DeferredCloseProcessPipeInputStream(fds[1]); > > > > Your change looks good and I can sponsor it. Just as a hint for other > reviewers I'd like to mention that this change, albeit in a shared > Java file, is still AIX-only because it is in the "AIX" case of a > switch statement. > > @Steve: can you please verify, that your change introduces no > regression by running the complete jtreg test suite. > > Thank you and best regards, > Volker > > > I would appreciate any feedback please, and for someone to be a sponsor > for this and to contributute it to OpenJDK. > > > > Steve Groeger > > IBM Runtime Technologies > > Hursley, Winchester > > Tel: (44) 1962 816911 Mobex: 279990 Mobile: 07718 517 129 > > Fax (44) 1962 816800 > > Lotus Notes: Steve Groeger/UK/IBM > > Internet: groe...@uk.ibm.com > > > > Unless stated otherwise above: > > IBM United Kingdom Limited - Registered in England and Wales with > number 741598. > > Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 > 3AU > > Unless stated otherwise above: > > IBM United Kingdom Limited - Registered in England and Wales with > number 741598. > > Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 > 3AU
Re: JDK-8211844 [aix] ProcessBuilder: Piping between created processes does not work.
Hi Steve, thanks a lot for this fix. I'm forwarding this to core-libs-dev as well, because that's where the review has to take place. The "ppc-aix-port-dev" list is mostly a marker for the port maintainers to get their attention on relevant changes (so cross-posting is fine in this case :) On Thu, Dec 6, 2018 at 4:26 PM Steve Groeger wrote: > > Hi all, > > I have been investigating the issue > https://bugs.openjdk.java.net/browse/JDK-8211844 raised by Goetz Lindenmaier > which is related to the > jdk/java/lang/ProcessBuilder/PipelineTest.java JTReg test failing on AIX. > Having done some investigation I have a potential fix fore the issue: > > > diff -r 9501a7b59111 src/java.base/unix/classes/java/lang/ProcessImpl.java > --- a/src/java.base/unix/classes/java/lang/ProcessImpl.java Mon Dec 03 > 14:28:19 2018 +0300 > +++ b/src/java.base/unix/classes/java/lang/ProcessImpl.java Thu Dec 06 > 15:01:03 2018 + > @@ -446,7 +446,7 @@ > ProcessBuilder.NullOutputStream.INSTANCE : > new ProcessPipeOutputStream(fds[0]); > > -stdout = (fds[1] == -1) ? > +stdout = (fds[1] == -1 || forceNullOutputStream) ? > ProcessBuilder.NullInputStream.INSTANCE : > new DeferredCloseProcessPipeInputStream(fds[1]); > Your change looks good and I can sponsor it. Just as a hint for other reviewers I'd like to mention that this change, albeit in a shared Java file, is still AIX-only because it is in the "AIX" case of a switch statement. @Steve: can you please verify, that your change introduces no regression by running the complete jtreg test suite. Thank you and best regards, Volker > I would appreciate any feedback please, and for someone to be a sponsor for > this and to contributute it to OpenJDK. > > Steve Groeger > IBM Runtime Technologies > Hursley, Winchester > Tel: (44) 1962 816911 Mobex: 279990 Mobile: 07718 517 129 > Fax (44) 1962 816800 > Lotus Notes: Steve Groeger/UK/IBM > Internet: groe...@uk.ibm.com > > Unless stated otherwise above: > IBM United Kingdom Limited - Registered in England and Wales with number > 741598. > Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU > Unless stated otherwise above: > IBM United Kingdom Limited - Registered in England and Wales with number > 741598. > Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU