IMPORTANT: Cleaning Up after the Hotspot repository rollbacks

Daniel D. Daugherty Daniel.Daugherty at Sun.COM
Mon Aug 11 08:14:20 PDT 2008


Greetings,

This e-mail applies to folks that have a child repository of
the jdk7/hotspot-svc/hotspot repo. I've destroyed my old merge
repo and I'm about to recreate it from the rolled back bits
(case #1 below).

Please check to see which of the four situations below apply
to your Serviceability child repo...

Dan


Erik Trimble wrote:
> This message is for those people who have a local clone of any of the 
> following repositories:
>
> http://hg.openjdk.java.net/jdk7/hotspot/hotspot
> http://hg.openjdk.java.net/jdk7/hotspot-rt/hotspot
> http://hg.openjdk.java.net/jdk7/hotspot-svc/hotspot
>
> AND who have pulled down an incorrect changeset that was removed 
> during tonight's rollback.
>
> To check if you have the offending changeset, in each local 
> repository, run this command:
>
> % hg log | grep 2bb5ef5c8a2d
>
> Any output from this command indicates that your repository has been 
> contaminated.
>
>
> ###  HOW DO I FIX THIS? ####
>
> There are four cases; please following the appropriate section:
>
> CASE #1:   You have no committed or uncommitted new work in the 
> repository that you haven't already pushed to the hg.openjdk.java.net 
> repository
>
> SOLUTION:  Re-pull the repository from http://hg.openjdk.java.net
>        This is the fastest, easiest solution - if you have no new 
> work, simply get a clean copy.
>
>
> CASE #2:   You have committed one or more changesets of your own work 
> into the contaminated local repository
>
> SOLUTION:  Clone a new copy of the repository from 
> http://hg.openjdk.java.net, then apply your changesets to that new copy.
>          Step 1:  clone a fresh copy to <new_repo>
>          Step 2:  change directory to your old, contaminated 
> repo:      % cd <old_repo>
>          Step 3:  use 'hg outgoing' to discover which changeset IDs 
> you have created since the last push to the repository
>          Step 4:  For each changeset of your work, do the following:
>                            % hg export -g -o /tmp/changesetID changesetID
>          Step 5:  change directory to <new_repo>
>          Step 6:  For each of your changesets, do the following:
>                            % hg import -p 1 /tmp/changesetID
>
>       You are now up-to-date and ready to work.
>
>       In a limited number of cases, where your work was based against 
> an old branch of the repository, you may have problems with above 
> procedure. Please send an email to this list regarding your problems, 
> and someone will contact you shortly to help with the procedure.
>
>
>
> CASE #3:  You have new work in the contaminated repository, but have 
> not committed yet (i.e. you do not have a changeset of your work).
>
> SOLUTION:  Create a patch using your working files, and apply that 
> patch to a fresh clone from http://hg.openjdk.java.net
>          Step 1:  clone a fresh copy to <new_repo>
>          Step 2:  change directory to your old, contaminated 
> repo:      % cd <old_repo>
>          Step 3:  Run this command:   %  hg diff -g > /tmp/new_work.patch
>          Step 4:  change directory to the new repo:      % cd <new_repo>
>          Step 5:  Using GNU patch, apply your changes:      %  patch 
> -p 1 -i /tmp/new_work.patch
>
>
>
> CASE #4:  You have both committed changesets, and uncommitted work in 
> the contaminated local repository.
>
> SOLUTION:  Follow the procedure in Case #2 to update your changesets, 
> then follow the procedure in Case #3 to migrate your uncommitted 
> working files.
>
>
>
>
> Once again, we apologize for the inconvenience this rollback has caused.
> If you have any questions regarding this rollback, or the above 
> procedures to repair your local repositories, please send email to 
> this list (not to me), and we will try to reply promptly.
>
>
>



More information about the serviceability-dev mailing list