From abdul.kolarkunnu at oracle.com Mon Nov 7 07:41:06 2016 From: abdul.kolarkunnu at oracle.com (Muneer Kolarkunnu) Date: Sun, 6 Nov 2016 23:41:06 -0800 (PST) Subject: JDK 9 build 143 test results now available Message-ID: <2bd3fe39-a4cb-4137-93c5-bb09273e1143@default> JDK 9 ea build 143 test results are now available at http://www.java.net/download/openjdk/testresults/9/testresults.html The jdk test results contain 45 differences from the build 142 test results. No new testcase failures found. 0: /home/jtest/merge9/142/jdk/JTwork pass: 5,971; fail: 8; error: 1; not run: 2,154 1: /home/jtest/merge9/143/jdk/JTwork pass: 5,968; fail: 7; not run: 2,187 0 1 Test fail pass com/sun/java/swing/plaf/gtk/Test6635110.java --- pass java/io/FilePermission/FilePermissionCollectionMerge.java --- pass java/io/FilePermission/Invalid.java --- pass java/lang/ClassLoader/IsParallelCapable.java --- pass java/lang/System/LoggerFinder/internal/SystemLoggerInPlatformLoader/SystemLoggerInPlatformLoader.java --- pass java/lang/instrument/DaemonThread/TestDaemonThread.java pass --- java/lang/module/ModuleReader/MultiReleaseJarTest.java --- pass java/lang/module/MultiReleaseJarTest.java pass --- java/net/httpclient/APIErrors.java pass --- java/net/httpclient/BasicAuthTest.java pass --- java/net/httpclient/BasicWebSocketAPITest.java pass --- java/net/httpclient/HeadersTest.java pass --- java/net/httpclient/HeadersTest1.java pass --- java/net/httpclient/ImmutableHeaders.java pass --- java/net/httpclient/ManyRequests.java pass --- java/net/httpclient/ProxyAuthTest.java pass --- java/net/httpclient/QuickResponses.java pass --- java/net/httpclient/RequestBodyTest.java pass --- java/net/httpclient/ShortRequestBody.java pass --- java/net/httpclient/SmokeTest.java pass --- java/net/httpclient/TestKitTest.java pass --- java/net/httpclient/TimeoutTest.java pass --- java/net/httpclient/http2/ErrorTest.java pass --- java/net/httpclient/http2/HpackDriver.java pass --- java/net/httpclient/http2/HpackDriverHeaderTable.java pass --- java/net/httpclient/http2/ServerPush.java pass --- java/net/httpclient/http2/TLSConnection.java pass --- java/net/httpclient/http2/Timeout.java pass --- java/net/httpclient/security/Driver.java pass --- java/net/httpclient/security/Security.java pass --- java/net/httpclient/whitebox/Driver.java --- pass java/nio/charset/coders/BashStreams.java --- pass java/nio/file/WatchService/DeleteInterference.java --- pass java/security/misc/GetInstanceNullsEmpties.java --- pass java/util/logging/LogManager/LinkageErrorTest.java --- pass javax/imageio/ImageCompressionTypesTest.java --- pass javax/imageio/metadata/GetElementsByTagNameTest.java --- pass javax/imageio/metadata/NthItemNodeListTest.java --- pass javax/net/ssl/DTLS/PacketLossRetransmission.java --- pass javax/net/ssl/DTLS/RespondToRetransmit.java --- pass sun/security/krb5/auto/rcache_usemd5.sh error pass sun/tools/jstatd/TestJstatdExternalRegistry.java --- pass tools/jar/mmrjar/ConcealedPackage.java --- pass tools/jlink/multireleasejar/JLinkMultiReleaseJarTest.java --- pass tools/launcher/modules/classpath/JavaClassPathTest.java 45 differences The hotspot test results contain 14 differences from the build 142 test results. There are 2 testcase failures, these failures are under investigation. 0: /home/jtest/merge9/142/hotspot/JTwork pass: 1,330; fail: 4; error: 13; not run: 47 1: /home/jtest/merge9/143/hotspot/JTwork pass: 1,337; fail: 6; error: 14; not run: 47 0 1 Test --- pass compiler/arraycopy/TestEliminatedCloneBadMemEdge.java error --- compiler/floatingpoint/Test15FloatJNIArgs.java --- error compiler/floatingpoint/TestFloatJNIArgs.java --- pass compiler/jsr292/TestArrayReturnType.java --- pass compiler/jvmci/TestJVMCIPrintProperties.java --- pass compiler/loopopts/TestImpossibleIV.java pass fail gc/TestNUMAPageSize.java --- pass gc/startup_warnings/TestUseAutoGCSelectPolicy.java --- pass runtime/RedefineTests/RedefineInterfaceMethods.java --- pass runtime/RedefineTests/RedefineLeak.java pass fail runtime/Thread/Fibonacci.java --- error runtime/jni/PrivateInterfaceMethods/PrivateInterfaceMethods.java --- pass runtime/logging/StackWalkTest.java --- pass runtime/modules/PatchModule/PatchModuleClassList.java 14 differences The langtools test results contain 6 differences from the build 142 test results. There is 1 testcase failure, this failure is under investigation. 0: /home/jtest/merge9/142/langtools/JTwork pass: 3,503; not run: 275 1: /home/jtest/merge9/143/langtools/JTwork pass: 3,507; fail: 1; not run: 278 0 1 Test --- pass tools/javac/AnonymousClass/AnonymousCtorExceptionTest.java --- pass tools/javac/T8132562/ClassPathWithDoubleQuotesTest.java --- pass tools/javac/generics/inference/8168134/T8168134.java --- pass tools/javac/meth/BadPolySig.java pass fail tools/jdeps/MultiReleaseJar.java --- pass tools/jdeps/listdeps/ListModuleDeps.java 6 differences The nashorn test result is available at http://download.java.net/openjdk/testresults/9/archives/143/emailable-report.html -- Regards, Abdul Muneer Quality Engineer Oracle, Bangalore, India -------------- next part -------------- An HTML attachment was scrubbed... URL: From rory.odonnell at oracle.com Mon Nov 14 12:23:35 2016 From: rory.odonnell at oracle.com (Rory O'Donnell) Date: Mon, 14 Nov 2016 12:23:35 +0000 Subject: JDK 9 & JDK 9 with Project Jigsaw b144 are available on java.net Message-ID: <2b9b8d06-782e-b4d0-1d08-5340c0b0a011@oracle.com> Hi All, Early Access b144 (#5709) for JDK 9 with Project Jigsaw is available on java.net, summary of changes are listed here. Early Access b144 for JDK 9 is available on java.net, summary of changes are listed here . There have been a number of fixes to bugs reported by Open Source projects since the last availability email : * JDK-8156149 : Blurry rendering on Windows 7 at 125% screen setting * JDK-8167431 : tools javac takes too long time to resolve interface dependency * JDK-8062810 : infrastructure Examine src.zip in JDK image and decide if source classes should be organized by module *Proposal* - latest update * b142 of JDK 9 with project Jigsaw has the initial implementation of open modules and open packages as detailed in the recent proposal for #ReflectiveAccessToNonExportedTypes [1] *Tool* Adapted from JEP 277 [2] * A static analysis tool jdeprscan has been provided that scans a jar file (or some other aggregation of class files) for uses of deprecated API elements. *Schedule* * The proposed JDK 9 schedule has been adopted and posted on the Open JDK 9 Project Page [3] Rgds,Rory [1] http://mail.openjdk.java.net/pipermail/jpms-spec-experts/2016-October/000430.html [2] http://openjdk.java.net/jeps/277 [3] http://openjdk.java.net/projects/jdk9/ -- Rgds,Rory O'Donnell Quality Engineering Manager Oracle EMEA , Dublin, Ireland -------------- next part -------------- An HTML attachment was scrubbed... URL: From abdul.kolarkunnu at oracle.com Mon Nov 28 14:07:14 2016 From: abdul.kolarkunnu at oracle.com (Muneer Kolarkunnu) Date: Mon, 28 Nov 2016 06:07:14 -0800 (PST) Subject: JDK 9 build 146 test results now available Message-ID: <71c660d0-146b-4348-8544-5cc9f7214f68@default> JDK 9 ea build 146 test results are now available at http://www.java.net/download/openjdk/testresults/9/testresults.html The jdk test results contain 174 differences from the build 143 test results. There are 64 testcase failures, these failures are under investigation. These testcases are passing while running independently. 0: /home/jtest/merge9/143/jdk/JTwork pass: 5,968; fail: 7; not run: 2,187 1: /home/jtest/merge9/146/jdk/JTwork pass: 6,004; fail: 71; not run: 2,206 0 1 Test --- pass java/lang/StackTraceElement/SerialTest.java --- pass java/lang/StackTraceElement/WithClassLoaderName.java --- pass java/lang/management/ManagementFactory/DefaultManagementProviderTest.java --- pass java/net/URLPermission/nstest/LookupTest.java pass --- java/net/URLPermission/nstest/lookup.sh pass fail java/rmi/Naming/UnderscoreHost.java pass fail java/rmi/activation/Activatable/checkAnnotations/CheckAnnotations.java pass fail java/rmi/activation/Activatable/checkImplClassLoader/CheckImplClassLoader.java pass fail java/rmi/activation/Activatable/checkRegisterInLog/CheckRegisterInLog.java pass fail java/rmi/activation/Activatable/createPrivateActivable/CreatePrivateActivatable.java pass fail java/rmi/activation/Activatable/downloadParameterClass/DownloadParameterClass.java pass fail java/rmi/activation/Activatable/elucidateNoSuchMethod/ElucidateNoSuchMethod.java pass fail java/rmi/activation/Activatable/forceLogSnapshot/ForceLogSnapshot.java pass fail java/rmi/activation/Activatable/inactiveGroup/InactiveGroup.java pass fail java/rmi/activation/Activatable/lookupActivationSystem/LookupActivationSystem.java pass fail java/rmi/activation/Activatable/nestedActivate/NestedActivate.java pass fail java/rmi/activation/Activatable/nonExistentActivatable/NonExistentActivatable.java pass fail java/rmi/activation/Activatable/restartCrashedService/RestartCrashedService.java pass fail java/rmi/activation/Activatable/restartLatecomer/RestartLatecomer.java pass fail java/rmi/activation/Activatable/restartService/RestartService.java pass fail java/rmi/activation/Activatable/shutdownGracefully/ShutdownGracefully.java pass fail java/rmi/activation/Activatable/unregisterInactive/UnregisterInactive.java pass fail java/rmi/activation/ActivateFailedException/activateFails/ActivateFails.java pass fail java/rmi/activation/ActivationGroup/downloadActivationGroup/DownloadActivationGroup.java pass fail java/rmi/activation/ActivationSystem/activeGroup/IdempotentActiveGroup.java pass fail java/rmi/activation/ActivationSystem/modifyDescriptor/ModifyDescriptor.java pass fail java/rmi/activation/ActivationSystem/stubClassesPermitted/StubClassesPermitted.java pass fail java/rmi/activation/ActivationSystem/unregisterGroup/UnregisterGroup.java pass fail java/rmi/activation/CommandEnvironment/SetChildEnv.java pass fail java/rmi/activation/rmidViaInheritedChannel/InheritedChannelNotServerSocket.java pass fail java/rmi/activation/rmidViaInheritedChannel/RmidViaInheritedChannel.java pass fail java/rmi/registry/classPathCodebase/ClassPathCodebase.java pass fail java/rmi/registry/emptyName/EmptyName.java pass fail java/rmi/registry/interfaceHash/InterfaceHash.java pass fail java/rmi/reliability/juicer/AppleUserImpl.java pass fail java/rmi/server/RMIClassLoader/delegateBeforePermissionCheck/DelegateBeforePermissionCheck.java pass fail java/rmi/server/RMIClassLoader/delegateToContextLoader/DelegateToContextLoader.java pass fail java/rmi/server/RMIClassLoader/downloadArrayClass/DownloadArrayClass.java pass fail java/rmi/server/RMIClassLoader/getClassLoader/GetClassLoader.java pass fail java/rmi/server/RMIClassLoader/loadProxyClasses/LoadProxyClasses.java pass fail java/rmi/server/RMIClassLoader/spi/ContextInsulation.java pass fail java/rmi/server/RMIClassLoader/spi/DefaultProperty.java pass fail java/rmi/server/RMIClassLoader/spi/Installed.java pass fail java/rmi/server/RMIClassLoader/spi/InvalidProperty.java pass fail java/rmi/server/RMIClassLoader/spi/Property.java pass fail java/rmi/server/RMIClassLoader/useCodebaseOnly/UseCodebaseOnly.java pass fail java/rmi/server/RMIClassLoader/useGetURLs/UseGetURLs.java pass fail java/rmi/server/RMISocketFactory/useSocketFactory/activatable/UseCustomSocketFactory.java pass fail java/rmi/server/RMISocketFactory/useSocketFactory/registry/UseCustomSocketFactory.java pass fail java/rmi/server/RMISocketFactory/useSocketFactory/unicast/UseCustomSocketFactory.java pass fail java/rmi/server/RemoteObject/verifyRemoteEquals/VerifyRemoteEquals.java pass fail java/rmi/server/UnicastRemoteObject/unexportObject/UnexportLeak.java pass fail java/rmi/server/Unreferenced/leaseCheckInterval/LeaseCheckInterval.java pass fail java/rmi/server/Unreferenced/unreferencedContext/UnreferencedContext.java pass fail java/rmi/server/clientStackTrace/ClientStackTrace.java pass fail java/rmi/transport/closeServerSocket/CloseServerSocket.java pass fail java/rmi/transport/dgcDeadLock/DGCDeadLock.java pass fail java/rmi/transport/handshakeFailure/HandshakeFailure.java pass fail java/rmi/transport/handshakeTimeout/HandshakeTimeout.java pass fail java/rmi/transport/pinClientSocketFactory/PinClientSocketFactory.java pass fail java/rmi/transport/reuseDefaultPort/ReuseDefaultPort.java --- pass java/util/Locale/Bug8166994.java pass fail javax/management/remote/mandatory/connection/RMIConnector_NPETest.java --- pass javax/net/ssl/SSLEngine/EngineCloseOnAlert.java --- pass javax/net/ssl/interop/ClientHelloChromeInterOp.java --- pass javax/sound/midi/Devices/ClosedReceiver.java --- pass javax/sound/midi/Devices/MidiDeviceGetReceivers.java --- pass javax/sound/midi/Devices/MidiIO.java --- pass javax/sound/midi/Devices/MidiOutGetMicrosecondPositionBug.java --- pass javax/sound/midi/Devices/OpenClose.java --- pass javax/sound/midi/Devices/ReceiverTransmitterAvailable.java --- pass javax/sound/midi/Devices/Reopen.java --- pass javax/sound/midi/File/SMFCp037.java --- pass javax/sound/midi/File/SMFParserBreak.java --- pass javax/sound/midi/File/WriteRealTimeMessageNPE.java --- pass javax/sound/midi/MetaMessage/MetaMessageClone.java --- pass javax/sound/midi/MidiSystem/DefaultDevices.java --- pass javax/sound/midi/MidiSystem/DefaultProperties.java --- pass javax/sound/midi/MidiSystem/GetSequencer.java --- pass javax/sound/midi/MidiSystem/MidiFileTypeUniqueness.java --- pass javax/sound/midi/MidiSystem/ProviderCacheing.java --- pass javax/sound/midi/Sequence/GetMicrosecondLength.java --- pass javax/sound/midi/Sequence/MidiSMPTE.java --- pass javax/sound/midi/Sequence/SMPTEDuration.java --- pass javax/sound/midi/Sequencer/LoopIAE.java --- pass javax/sound/midi/Sequencer/Looping.java --- pass javax/sound/midi/Sequencer/MetaCallback.java --- pass javax/sound/midi/Sequencer/Recording.java --- pass javax/sound/midi/Sequencer/SeqRecordDoesNotCopy.java --- pass javax/sound/midi/Sequencer/SeqRecordsRealTimeEvents.java --- pass javax/sound/midi/Sequencer/SeqStartRecording.java --- pass javax/sound/midi/Sequencer/SequencerCacheValues.java --- pass javax/sound/midi/Sequencer/SequencerSetMuteSolo.java --- pass javax/sound/midi/Sequencer/SequencerState.java --- pass javax/sound/midi/Sequencer/SetTickPosition.java --- pass javax/sound/midi/Sequencer/TickLength.java --- pass javax/sound/midi/ShortMessage/FastShortMessage.java --- pass javax/sound/midi/ShortMessage/FastShortMessage2.java --- pass javax/sound/midi/Soundbanks/ExtraCharInSoundbank.java --- pass javax/sound/midi/Soundbanks/GetSoundBankIOException.java --- pass javax/sound/midi/Synthesizer/AsynchronousMidiChannel.java --- pass javax/sound/midi/Synthesizer/SynthesizerGetLatency.java --- pass javax/sound/midi/Synthesizer/bug4685396.java --- pass javax/sound/midi/Track/TrackAddSameTick.java --- pass javax/sound/midi/Track/bug6416024.java --- pass javax/sound/midi/Transmitter/bug6415669.java --- pass javax/sound/sampled/AudioFileFormat/AudioFileFormatToString.java --- pass javax/sound/sampled/AudioFileFormat/Properties.java --- pass javax/sound/sampled/AudioFileFormat/TypeEquals.java --- pass javax/sound/sampled/AudioFormat/AudioFormatBitSize.java --- pass javax/sound/sampled/AudioFormat/EncodingEquals.java --- pass javax/sound/sampled/AudioFormat/Properties.java --- pass javax/sound/sampled/AudioInputStream/AISReadFraction.java --- pass javax/sound/sampled/AudioInputStream/bug6188860.java --- pass javax/sound/sampled/AudioSystem/AudioFileTypes/AudioFileTypeUniqueness.java --- pass javax/sound/sampled/AudioSystem/AudioFileTypes/ShowAudioFileTypes.java --- pass javax/sound/sampled/AudioSystem/DefaultMixers.java --- pass javax/sound/sampled/AudioSystem/DefaultProperties.java --- pass javax/sound/sampled/AudioSystem/ProviderCacheing.java --- pass javax/sound/sampled/Clip/ClipCloseLoss.java --- pass javax/sound/sampled/Clip/ClipFlushCrash.java --- pass javax/sound/sampled/Clip/Duration/ClipDuration.java --- pass javax/sound/sampled/Clip/Endpoint/ClipSetEndPoint.java --- pass javax/sound/sampled/Clip/Open/ClipOpenBug.java --- pass javax/sound/sampled/Controls/CompoundControl/ToString.java --- pass javax/sound/sampled/Controls/FloatControl/FloatControlBug.java --- pass javax/sound/sampled/DataLine/DataLineInfoNegBufferSize.java --- pass javax/sound/sampled/DataLine/LineDefFormat.java --- pass javax/sound/sampled/FileTypeExtension/FileTypeExtensionTest.java --- pass javax/sound/sampled/LineEvent/LineInfoNPE.java --- pass javax/sound/sampled/Lines/16and32KHz/Has16and32KHz.java --- pass javax/sound/sampled/Lines/BufferSizeCheck.java --- pass javax/sound/sampled/Lines/ChangingBuffer.java --- pass javax/sound/sampled/Lines/ClipOpenException.java --- pass javax/sound/sampled/Lines/FrameSize/FrameSizeTest.java --- pass javax/sound/sampled/Lines/GetLine.java --- pass javax/sound/sampled/Lines/SDLwrite.java --- pass javax/sound/sampled/Lines/SourceDataLineDefaultBufferSizeCrash.java --- pass javax/sound/sampled/Lines/StopStart.java --- pass javax/sound/sampled/LinuxCrash/ClipLinuxCrash.java --- pass javax/sound/sampled/LinuxCrash/ClipLinuxCrash2.java --- pass javax/sound/sampled/LinuxCrash/SDLLinuxCrash.java --- pass javax/sound/sampled/Mixers/BogusMixers.java --- pass javax/sound/sampled/Mixers/BothEndiansAndSigns.java --- pass javax/sound/sampled/Mixers/NoSimpleInputDevice.java --- pass javax/sound/sampled/Mixers/PlugHwMonoAnd8bitAvailable.java --- pass javax/sound/sampled/Mixers/UnexpectedIAE.java --- pass javax/sound/sampled/spi/AudioFileReader/AIFFCp037.java --- pass javax/sound/sampled/spi/AudioFileReader/AIFFLargeHeader.java --- pass javax/sound/sampled/spi/AudioFileReader/Aiff12bit.java --- pass javax/sound/sampled/spi/AudioFileReader/AuNotSpecified.java --- pass javax/sound/sampled/spi/AudioFileReader/AuZeroLength.java --- pass javax/sound/sampled/spi/AudioFileReader/OpenWaveFile.java --- pass javax/sound/sampled/spi/AudioFileWriter/AUwithULAW.java --- pass javax/sound/sampled/spi/AudioFileWriter/AiffSampleRate.java --- pass javax/sound/sampled/spi/AudioFileWriter/RIFFHeader.java --- pass javax/sound/sampled/spi/AudioFileWriter/WaveBigEndian.java --- pass javax/sound/sampled/spi/AudioFileWriter/WriteAuUnspecifiedLength.java --- pass javax/sound/sampled/spi/FormatConversionProvider/AlawUlaw.java --- pass sun/net/www/http/HttpClient/RetryPost.java pass --- sun/net/www/http/HttpClient/RetryPost.sh pass --- sun/nio/cs/OLD/TestIBMDB.java pass fail sun/rmi/rmic/iiopCompilation/IIOPCompilation.java pass fail sun/rmi/runtime/Log/4504153/Test4504153.java pass fail sun/rmi/runtime/Log/6409194/NoConsoleOutput.java pass fail sun/rmi/runtime/Log/checkLogging/CheckLogStreams.java pass fail sun/rmi/runtime/Log/checkLogging/CheckLogging.java pass fail sun/rmi/server/MarshalOutputStream/marshalForeignStub/MarshalForeignStub.java pass fail sun/rmi/transport/tcp/DeadCachedConnection.java --- pass sun/security/tools/keytool/ReadJar.java pass --- sun/security/tools/keytool/readjar.sh --- pass sun/tools/jps/TestJps.java pass --- sun/tools/jps/TestJpsClass.java --- pass tools/jlink/JLinkSigningTest.java 174 differences The hotspot test results contain 16 differences from the build 143 test results. There are 2 testcase failures, these failures are under investigation. 0: /home/jtest/merge9/143/hotspot/JTwork pass: 1,337; fail: 6; error: 14; not run: 47 1: /home/jtest/merge9/146/hotspot/JTwork pass: 1,340; fail: 7; error: 15; not run: 54 0 1 Test pass --- compiler/ciReplay/TestVM.sh pass --- compiler/ciReplay/TestVM_no_comp_level.sh --- pass compiler/escapeAnalysis/TestArrayCopy.java --- pass compiler/intrinsics/unsafe/TestCAEAntiDep.java --- pass gc/g1/logging/TestG1LoggingFailure.java --- pass gc/stress/gcbasher/TestGCBasherWithCMS.java --- pass gc/stress/gcbasher/TestGCBasherWithG1.java --- pass gc/stress/gcbasher/TestGCBasherWithParallel.java --- pass gc/stress/gcbasher/TestGCBasherWithSerial.java --- pass runtime/CompactStrings/TestMethodNames.java fail pass runtime/Thread/Fibonacci.java --- error runtime/jni/CalleeSavedRegisters/FPRegs.java pass --- serviceability/jdwp/AllModulesCommandTest.java pass fail serviceability/sa/TestInstanceKlassSize.java pass fail serviceability/sa/TestInstanceKlassSizeForInterface.java pass --- serviceability/tmtools/jstat/GcCauseTest02.java 16 difference The langtools test results contain 9 differences from the build 143 test results. No new testcase failures found. 0: /home/jtest/merge9/143/langtools/JTwork pass: 3,507; fail: 1; not run: 278 1: /home/jtest/merge9/146/langtools/JTwork pass: 3,516; not run: 277 0 1 Test --- pass tools/javac/modules/AddExportsTest.java --- pass tools/javac/modules/AddModulesTest.java --- pass tools/javac/modules/AnnotationProcessingWithModuleInfoInWrongPlace.java --- pass tools/javac/modules/LimitModulesTest.java --- pass tools/javac/modules/T8168854/module-info.java --- pass tools/javac/processing/model/LocalClasses/LocalClassesModel.java --- pass tools/javac/processing/model/nestedTypeVars/NestedTypeVars.java fail pass tools/jdeps/MultiReleaseJar.java --- pass tools/jdeps/Options.java 9 differences The nashorn test result is available at http://download.java.net/openjdk/testresults/9/archives/146/emailable-report.html -- Regards, Abdul Muneer Quality Engineer Oracle, Bangalore, India -------------- next part -------------- An HTML attachment was scrubbed... URL: From martinrb at google.com Mon Nov 28 20:15:44 2016 From: martinrb at google.com (Martin Buchholz) Date: Mon, 28 Nov 2016 12:15:44 -0800 Subject: Repository? -- How many lines of development? In-Reply-To: <11f471fa-87a6-f6e3-86b2-05467c076a5a@oracle.com> References: <52f370b5-79a7-7b11-b77c-0c1314812e9e@redhat.com> <11f471fa-87a6-f6e3-86b2-05467c076a5a@oracle.com> Message-ID: On Fri, Nov 18, 2016 at 8:33 AM, joe darcy wrote: > * A master forest, serving the roles master and dev play today in 9. > > With a few exceptions, in JDK 9 master was just time-delayed copy of dev > so we can implement recording the information about which set of sources > correspond to a promoted build without using a whole other forest. > > Rather than using a separate line of development for client-libs work as > in 9, I think this should be done in the same line of development as all > other libs work in 10. > For many years, I've been advocating having a guaranteed always-working, never regressing master and also always a place for developers to submit-and-forget their (possibly slightly buggy) changes. All regressions that could be caught by a test are 100% guaranteed to be caught by a competent trusted release engineer who is the only one ever moving changes into the master forest. Based on this idea, it seems essential to have something like a jdk10-dev forest (it could also be implemented using mercurial branches, but that would be a break with many decades of tradition). I notice today the message http://mail.openjdk.java.net/pipermail/quality-discuss/2016-November/000596.html where regressions have crept into a jdk9 build, which is disappointing. The whole point of regression testing is to ensure that regressions don't happen! And I recall having that job myself back in 2005! -------------- next part -------------- An HTML attachment was scrubbed... URL: From martinrb at google.com Mon Nov 28 23:30:16 2016 From: martinrb at google.com (Martin Buchholz) Date: Mon, 28 Nov 2016 15:30:16 -0800 Subject: Repository? -- How many lines of development? In-Reply-To: <583CAABF.6000102@oracle.com> References: <52f370b5-79a7-7b11-b77c-0c1314812e9e@redhat.com> <11f471fa-87a6-f6e3-86b2-05467c076a5a@oracle.com> <32589a52-5e9f-dc65-3c99-bd5f9c475b06@oracle.com> <583CAABF.6000102@oracle.com> Message-ID: On Mon, Nov 28, 2016 at 2:07 PM, Joseph D. Darcy wrote: > > For the combined dev/master forest, the most recent integration tag will > have the same stability guarantees we have today so "pull the most recent > jdk-10+XYZ tag" to get a stable snapshot. > > But ... I want better than the stability guarantees we have today! I want to obsolete those messages to quality-discuss with "new failures" because it should not even be possible for master to get into a state where regression tests have regressed (except for flakes or external dependencies). > As an aside, for JDK 10 I'd also like to see promoted builds on a more > frequent schedule than once a week. > People do "continuous testing and integration" these days. Set up your integration pipeline so that it is always running. The pipeline automatically promotes changesets to master when all tests pass. Easy! Then every master changeset is equally stable to a "promoted build". In principle, the same could be accomplished via running every single commit through a jprt-like process, but I'm afraid that would be too expensive. Back in my day, full build + test took on the order of 10 hours, so changesets would need to be batched, or you need to throw more hardware at the problem (give every changeset a dedicated machine for testing?) -------------- next part -------------- An HTML attachment was scrubbed... URL: From joe.darcy at oracle.com Tue Nov 29 00:50:32 2016 From: joe.darcy at oracle.com (Joseph D. Darcy) Date: Mon, 28 Nov 2016 16:50:32 -0800 Subject: Repository? -- How many lines of development? In-Reply-To: References: <52f370b5-79a7-7b11-b77c-0c1314812e9e@redhat.com> <11f471fa-87a6-f6e3-86b2-05467c076a5a@oracle.com> <32589a52-5e9f-dc65-3c99-bd5f9c475b06@oracle.com> <583CAABF.6000102@oracle.com> Message-ID: <583CD0D8.3000105@oracle.com> On 11/28/2016 3:30 PM, Martin Buchholz wrote: > > > On Mon, Nov 28, 2016 at 2:07 PM, Joseph D. Darcy > wrote: > > > For the combined dev/master forest, the most recent integration > tag will have the same stability guarantees we have today so "pull > the most recent jdk-10+XYZ tag" to get a stable snapshot. > > > But ... I want better than the stability guarantees we have today! Over the course of JDK 9 we've made marked improvements to the regression test stability, at least on metrics we track internally on internal systems, so unfortunately am I not at liberty to share them. Briefly, the tier 1 regression tests in promoted builds are very stable, the tier 2 tests somewhat less stable, and so on. > > I want to obsolete those messages to quality-discuss with "new > failures" because it should not even be possible for master to get > into a state where regression tests have regressed (except for flakes > or external dependencies). I don't know if those particular failures are actually in the promoted build or just an artifact of how that particular batch of tests was run. IIRC, we did not see a corresponding set of failures before the integration. > As an aside, for JDK 10 I'd also like to see promoted builds on a > more frequent schedule than once a week. > > > People do "continuous testing and integration" these days. Set up > your integration pipeline so that it is always running. The pipeline > automatically promotes changesets to master when all tests pass. > Easy! Then every master changeset is equally stable to a "promoted > build". One of the internal systems mentioned above is a CI system that run regression tests after a change is pushed. The approximate integration model is then to promote known-good states of sources as vetted by the CI system. If problems are fixed soon after they are identified, then a post-push system gives good results with avoiding the need more complexity on the front end to manage a series of in-flight patches. Cheers, -Joe -------------- next part -------------- An HTML attachment was scrubbed... URL: From rory.odonnell at oracle.com Tue Nov 29 08:51:09 2016 From: rory.odonnell at oracle.com (Rory O'Donnell) Date: Tue, 29 Nov 2016 08:51:09 +0000 Subject: Repository? -- How many lines of development? In-Reply-To: References: <52f370b5-79a7-7b11-b77c-0c1314812e9e@redhat.com> <11f471fa-87a6-f6e3-86b2-05467c076a5a@oracle.com> Message-ID: <10c8f0e0-39dc-6323-170c-0779516dc743@oracle.com> Hi Martin, On 28/11/2016 20:15, Martin Buchholz wrote: > > > On Fri, Nov 18, 2016 at 8:33 AM, joe darcy > wrote: > > * A master forest, serving the roles master and dev play today in 9. > > With a few exceptions, in JDK 9 master was just time-delayed copy > of dev so we can implement recording the information about which > set of sources correspond to a promoted build without using a > whole other forest. > > Rather than using a separate line of development for client-libs > work as in 9, I think this should be done in the same line of > development as all other libs work in 10. > > > For many years, I've been advocating having a guaranteed > always-working, never regressing master and also always a place for > developers to submit-and-forget their (possibly slightly buggy) > changes. All regressions that could be caught by a test are 100% > guaranteed to be caught by a competent trusted release engineer who is > the only one ever moving changes into the master forest. Based on this > idea, it seems essential to have something like a jdk10-dev forest (it > could also be implemented using mercurial branches, but that would be > a break with many decades of tradition). > > I notice today the message > http://mail.openjdk.java.net/pipermail/quality-discuss/2016-November/000596.html > where regressions have crept into a jdk9 build, which is > disappointing. The whole point of regression testing is to ensure > that regressions don't happen! And I recall having that job myself > back in 2005! We are investigating these failures. The reason for posting results, warts and all, is to allow others to have results to compare with. The number of failures , in this instance, is unusually high. Rgds,Rory -- Rgds,Rory O'Donnell Quality Engineering Manager Oracle EMEA , Dublin, Ireland -------------- next part -------------- An HTML attachment was scrubbed... URL: