Mercurial repo for openjdk6 drops

Kelly O'Hair Kelly.Ohair at Sun.COM
Thu Sep 25 14:53:27 PDT 2008


Just FYI...

I'm starting to work on the OpenJDK6 Mercurial conversion. My plan is for
Build 5 to be the Rev 0 changeset, and I will try and create changesets
for each of the bug fixes in a Build.
So I'll be going through the list of fixes for each build, try and create a
changeset for it, and at the end I'll copy in the final source for that
build and see what I missed. The final changeset may be one for the remaining
bugs fixed. Then I'll tag that changeset and move on to the next build.
I'm calling this Total Recall, in that I'm essentially doing a replay
of the Build 5 through Build 12 changes.

This is a bit time consuming and some of the data I need is buried in our
own internal build system (JPRT) or internal file servers.
Once we get out there with a public Mercurial system I hope I never have
to do this again. :^(

So I'll start with the Build 6 changes and go from there.
If you have Build 6 patch files for specific fixes, and can email me
them or point me at them, that could help me out.

One of my concerns is that normally we want every changeset fully vetted
with regards to at least building on all platforms.
Unfortunately with Teamware, the changes are often not kept in any sequential
order like the Mercurial changesets, they are independent SCCS file changes.
The history file can help me, but I'm dealing with a very old DSCM system here.

So I'll try and re-create the same order the changes were made, and then
occasionally make sure it builds on all platforms.
The final sources for each Build we know builds ok on all platforms, those
are effectively the source bundle drops.
So I can't guarantee that every changeset is cleanly buildable on all
platforms.
Is that acceptable to everyone?

-kto

Joseph D. Darcy wrote:
> Joseph D. Darcy wrote:
>> Joseph D. Darcy wrote:
>>> Kelly O'Hair wrote:
>>>> Speaking from experience, any attempts at cleanly creating changesets
>>>> from TeamWare data alone is a waste of time. Just doesn't work well.
>>>> Granted we have pretty complete OpenJDK6 changeset data (data beyond
>>>> the TeamWare data) and could potentially do this, it's quite a bit of
>>>> grunt work to accomplish. Before we go off on this kind of adventure
>>>> we need to make sure the time spent is worth it.
>>>> A different approach would be to create changesets per build/promotion,
>>>> but those kind of large changesets can have limited usefulness.
>>>>
>>>> I'll try and talk to Joe about this tomorrow.
>>>>
>>>> Also, don't forget that the OpenJDK7 sources are a Mercurial forest,
>>>> not just one repository. I assume that we want to mimic the same
>>>> forest layout, keeping the langtools, corba, jaxp, jaxws, and hotspot
>>>> sources in their own repositories, separate from the core 'jdk' 
>>>> repository.
>>>> That allows us to do some plug and play with these repositories
>>>> between OpenJDK6 and OpenJDK7.
>>>>
>>>> -kto
>>> Yes, my thinking has been to mirror the overall JDK 7 repository 
>>> forest structure in OpenJDK 6.
>>
>> Quick follow-up, I've been traveling recently and haven't had a chance 
>> to chat with Kelly yet.
>>
>> Given that there is currently the per-build external Mercurial 
>> repository and that it is easy to get the list of bugs fixed in a 
>> build, retroactively synthesizing the (approximate) patches associated 
>> with a set of bugs *might* be workable since figuring out the bug <-> 
>> file mapping shouldn't be that bad.  If those interested in seeing the 
>> past history synthesized these patches, I could focus on finishing 
>> getting the OpenJDK build 12++ code ready for Mercurial and then 
>> reverse apply the set of patches to get back to the earlier public 
>> source drops.  However, this might be more work than I think and I'll 
>> want to talk to Kelly about the detailed logistics of what would be 
>> necessary for this to happen.
>>
>> My priority is on getting the "official" Mercurial repository up and 
>> running so we can collaborate there going forward as opposed to 
>> spending lots of time on retrofitting the existing build history into 
>> the new repository.
>>
>> Also, in the future I'd like to consider an infrastructure where areas 
>> like corba, jaxp, and jaxws for OpenJDK 6 could be managed as patches 
>> to an imported code base rather than having a fully populated copy of 
>> the code under revision management for the release.
>>
>> Cheers,
> 
> Kelly and I chatted on Tuesday.  We'll be working on getting the 
> official OpenJDK 6 Mercurial repositories up and open for business.
> 
> We agreed to publish the future repositories with at least as much 
> version information as the one Mark Wielaard setup, that is, at least 
> one changeset per build going back to the first published OpenJDK6 
> build, b05.  If people would like to see more fine grained changesets 
> with more detailed changeset -> bugid grouping, Martin, Mark W., and 
> others could help carve up the big build-to-build patches and sent us 
> the decomposition before the official Mercurial transitional.  
> Alternatively, if that decomposition isn't finished before we want to go 
> live with the repositories, Kelly though that adding supplementary 
> changsets with this information might be able to be added later.  Kelly, 
> please fill in any details here.
> 
> In the near term, we will probably have a forest of repositories as in 
> JDK 7.  However, longer term I would be happy if only hotspot, jdk, and 
> langtools were full repositories and jaxp, jaxws, and corba repos were 
> just vestiges that applied a few patches to upstream sources.  We'll 
> have to work out some logistical details with the HotSpot team to mesh 
> with their "HotSpot Express" release model.
> 
> -Joe
> 
> The per-build bug lists below are raw lists from the bug database with a 
> small amount of filtering to remove a handful of bugs whose changes only 
> touch closed JDK code; I might have missed one or two of these bugs 
> fixes that aren't present in the open code.
> 
> Fixed in b06 - 
> http://mail.openjdk.java.net/pipermail/jdk6-dev/2008-February/000016.html
> 
> 6601458: Move java.math tests from closed to open
> 6499487: [zh_CN] README_zh_CN in jdk is out of sync with the english README
> 6566218: l10n of 6476932
> 6536195: flaw in DatatypeConverter
> 6536209: flaw in SAAJMetaFactory
> 6588002: XSLTProcessorApplet still allows reading from forbidden URLs
> 6587132: Code changes behavior when compiled
> 6635776: Regression in jaxb tests with JDk6 U4
> 6559283: Duplicate GPL notices in src/share/classes/com/sun/xml/internal
> 6590857: Drag & Drop arbitrary file copy
> 6662775: Move Imaging and color classes from closed to open
> 6606396: Notepad demo doesn't run in Japanese locale.
> 6646197: (tz) Support tzdata2007k
> 6509039: Swedish localization has incorrect am/pm markers in FormatData_sv
> 6573250: Java.util.Currency.getSymbol(Locale) returns wrong value when 
> locale is not US.
> 6610748: Dateformat - AM-PM indicator in Finnish appears to be from English
> 6645268: Country/language names with locale fi_FI are incorrect for 
> FRANCE/FRENCH
> 6645405: Errors in Hungarian local-specific formatting. (L10N part of 
> 6609703)
> 6650730: Lithuanian locale date and number formats mismatch.
> 4225362: localized DateFormatSymbols for fr_FR is wrong
> 6450945: The week day for Saturday and the first week day in Romania 
> locale are incorrect
> 6609737: DateFormat incorrect for German locale
> 6647063: java/text/Format/NumberFormat/CurrencyFormat.java fails
> 6652200: test/java/util/TimeZone/Bug6329116.java fails
> 6598520: (tz) Windows time zone mapping table needs to be updated for 
> KB933360
> 6605798: JAX-WS RI 2.1.1 should be integrated in OpenJDK6
> 6661448: Make the SNMP agent optional when OPENJDK=true and 
> IMPORT_BINARY_PLUGS=false
> 6662581: jdk/make/common/internal/Defs-corba.gmk doesnot list all files 
> to be imported: some classes missing
> 6667532: Update OpenJDK 6 make/README
> 6676375: Make sure MOTIF_REQUIRED=false when OPENJDK=true
> 
> 
> Fixed in b07 - 
> http://mail.openjdk.java.net/pipermail/jdk6-dev/2008-March/000026.html
> 
> 6586752: Window decorations do not appear
> 6642034: System.getProperty("os.name") returns Windows Vista on Windows 
> Server 2008 (longhorn)
> 6671051: (process) Runtime.exec() hangs if signalled during fork/exec
> 6636951: javax.swing.plaf SigTest Failures in OpenJDK 6
> 6662830: OpenJDK build testing results
> 6668781: Openjdk windows cygwin build failure: no rule to make 
> linker_md.obj target
> 6669175: Add OpenJDK(TM) notification
> 6672710: Allow for openjdk sound to be built without the binary plugs 
> (IMPORT_BINARY_PLUGS=false)
> 6672777: Broken deploy build from jdk fix 6668781 for cygwin windows
> 6674015: Update trademark notification to version 1.1
> 6674314: Setting MOTIF_REQUIRED to 'false' doesn't work
> 
> 
> Fixed in b08 - 
> http://mail.openjdk.java.net/pipermail/jdk6-dev/2008-March/000033.html
> 
> 6613927: Compilation of splashscreen png library failed on Ubuntu 7.04 
> (64bit)
> 6578538: com.sun.crypto.provider.SunJCE instance leak using KRB5 and 
> LoginContext
> 6679296: sec-lib.zip and friends inadvertantly added to the 6-open and 
> jdk7 b19 directories
> 6679994: Undocumented  .jar files in JDK 6 Open:  
> hotspot/agent/src/share/lib
> 6680088: SSLEngineDeadlock workaround for 6519515 needed by OpenJDK builds
> 
> 
> Fixed b09 - 
> http://mail.openjdk.java.net/pipermail/jdk6-dev/2008-April/000039.html
> 
> 6602007: Transition to Mercurial:  Remove SCCS keywords from files in 
> the test/ directory
> 6633656: Cross platform print dialog doesn't check for orientation being 
> unsupported.
> 6672868: Package javax.xml.ws.wsaddressing not included in 
> make/docs/CORE_PKGS.gmk
> 6650748: (tz) Java runtime doesn't detect VET time zone correctly on 
> Windows
> 6679340: (tz) Support tzdata2008b
> 6678161: Printing to remote non-Postscript printer does not work in Linux
> 
> 
> Fixed in b10 - 
> http://mail.openjdk.java.net/pipermail/jdk6-dev/2008-May/000058.html
> 
> 6683078: Update JCE framework and provider builds to work on read-only 
> filesystems
> 6604044: java crashes talking to second X screen
> 6684582: Launcher needs improved error reporting
> 6644659: Error in default target of make/javax/crypto in OpenJDK build
> 6691185: (coll) TreeMap.navigableKeySet's descendingIterator method 
> starts at first instead of last entry
> 6691215: (coll) IdentityHashMap.containsValue(null) returns true when 
> null value not present
> 6523403: OSS CMM: Need to provide lcms library with PYCC and LINEAR_RGB 
> OS ICC profiles
> 6682167: Add cygwin faq to README-builds.html
> 6695553: Cleanup GPLv2+SPL legal notices in hat sources
> 6563616: Clarify instructions for unpacking openjdk binary "plug"
> 6611685: Incorrect link to CA certs info from build README
> 6597857: JDK build instructions need to be updated 
> (BUILD_JDK_IMPORT_PATH, BUILD_BINARY_PLUGS_PATH)
> 6636469: Java Fullscreen Exclusive Mode not working with Xorg server 
> 1.3.0 and above
> 6602426: TEST_BUG: test/sun/misc/Version/VersionCheck.java fails
> 6479286: LTP: XMLEncoder does not persist LineBorder properly
> 6673853: LegacyIntrospectorTest is testing an old deprecated com.sun API 
> not present in OpenJDK.
> 6707643: (tz) Support tzdata2008c
> 6702956: OpenJDK: replace encumbered code (software synthesizer)
> 6703931: Remove jaxws doc-files from the jdk
> 6704655: Test test/java/lang/reflect/Generics/Probe.java fails under 
> OpenJDK
> 6705893: javax.script tests should not require a js engine on OpenJDK
> 
> 
> Fixed in b11 - 
> http://mail.openjdk.java.net/pipermail/jdk6-dev/2008-July/000067.html
> 
> 6542088: JAX-WS server allows XXE attacks
> 6332953: JMX agent should bind to loopback address when starting the 
> local connector server
> 6665028: native code of method j*.text.Bidi.nativeBidiChars is using the 
> contents of a primitive array direct
> 6661918: Array reference changes behavior when compiled
> 6624717: Corrupted combo box, GTK L&F, Ubuntu 7.10
> 6621691: (dc) test/java/nio/channels/DatagramChannel/NotBound.java 
> missing public modifier
> 6691328: DragSourceContext returns unexpected cursor
> 6685178: REGRESSION: NPE in ConnectorBootstrap when 
> Agent.getManagementProperties() returns null.
> 6607339: IncrementalSAXSource_Filter still allows reading of local files
> 6601377: hotspot/src/share/vm/prims/jvmtiLib.xsl generates files with 
> incorrect legal notices
> 6589868: transition to Mercurial: need to eliminate dependencies on SCCS 
> keywords
> 6681796: hotspot build failure on gcc 4.2.x (ubuntu 8.04) w/ openjdk6
> 6695776: corba jscheme jar files in repository could be built from source
> 6695777: Queens.class should be built from source, not put in source repo
> 6565364: update legal notices in corba
> 6695765: Remove winver.exe completely from jdk sources
> 6705945: com.sun.tools.javac.zip files do not have valid copyright
> 6596323: (fc) ClosedByInterruptException not thrown by the interrupt 
> method (lnx)
> 6710579: (ch) test/java/nio/channels/AsyncCloseAndInterrupt fails (lnx)
> 6623167: C2 crashed in StoreCMNode::Value
> 6497639: Profiling Swing application caused JVM crash
> 6599425: OopMapCache::lookup() can cause later crash or assert() failure
> 6659207: access violation in CompilerThread0
> 6614100: EXCEPTION_ACCESS_VIOLATION while running Eclipse with 1.6.0_05-ea
> 6608764: test/closed/java/awt/Focus/TemporaryLostComponentDeadlock fails
> 6620632: DTD event is missing entity and notation information
> 6601384: hotspot/src/share/vm/adlc/archDesc.cpp generates files with 
> incorrect legal notices
> 6710791: Remove files or build them from source: maf-1_0.jar, jlfgr-1_0.jar
> 6713083: hotspot copy.cpp and vmStructs_parNew.hpp source files contains 
> proprietary sun notice
> 6717575: Make sanity prints duplicated BUILD_JDK messages
> 6717694: Normalize src/share/classes/com/sun/media/sound
> 
> 
> Fixed in b12 - 
> http://mail.openjdk.java.net/pipermail/jdk6-dev/2008-September/000150.html
> 
> 6590549: Cygwin build of OpenJDK has problems and not very well documented
> 6635663: make/tools/AutoMulti/{AutoMulti,TestALFGenerator}.java still 
> generate files with wrong legal notices
> 6719182: update legal notice in 
> src/share/classes/java/lang/instrument/package.html
> 6714428: 'os.name' system property shows wrong value on 64-bit Windows XP
> 6720240: IOB exception when getting font metrics of hershey font
> 6548261: Use of  SE in make/common/Defs-windows.gmk
> 6681798: (build) CharsetEncoder.java fails to compile in openjdk6 on 
> ubuntu 8.04
> 6372405: Server thread hangs when fragments don't complete because of 
> connection abort
> 5104239: Java: thread deadlock
> 6191561: JCK15: 
> api/org_omg/PortableInterceptor/ClientRequestInfo/index.html#RIMethods 
> sometime hang
> 6486322: org.omg.CORBA.ORB.init() thread safety issue
> 6465377: NullPointerException for RMI ORB in 1.5.0_08
> 6438259: Wrong repository ID generated by IDLJ
> 6509042: javac rejects class literals in enum constructors
> 6627362: javac generates code that uses array.clone, which is not 
> available on JavaCard
> 6627364: javac needs Float and Double on the bootclasspath even when not 
> directly used
> 6627366: javac needs Cloneable and Serializable on the classpath even 
> when not directly used
> 6665223: Static import of inherited protected method causes compiler 
> exception
> 6538484: JAF fails in Turkish locale
> 6699090: Avoid NPE if parse fails in isMimeTypeEqual, do a string 
> comparison instead
> 6176978: current Javadoc's invocation and extension (Doclet) mechanisms 
> are problematic
> 6681889: JSN security test headline/noWarningApp failed with NPE exception
> 6732815: CORBA_2_3 java sources not explicitly compiled
> 6734545: Corrections to missing explicit corba sources on javac compile 
> lines
> 6573268: Four JCK-devtools-6a tests report OOM: Java Heap space since 
> JDK7 b14
> 6720349: (ch) Channels tests depending on hosts inside Sun
> 6739302: Check that deserialization preserves EnumSet integrity
> 6730743: (tz) Support tzdata2008e
> 6741642: bad enum definition in ciTypeFlow.hpp
> 6717691: Update Gervill with post 1.0 fixes
> 6733501: Apply IcedTea little cms patches
> 6735154: Apply IcedTea Color.createContext patch
> 6738894: Merge jaxp fixes from 6 update train into OpenJDK 6
> 6740210: Update Gervill with more post 1.0 fixes
> 6748247: Further update Gervill with still more post 1.0 fixes



More information about the jdk6-dev mailing list