http://bugs.grommit.com/show_bug.cgi?id=374

           Summary: setting CODEMGR_WS confuses webrev
           Product: SCM Migration
           Version: unspecified
          Platform: All
        OS/Version: Solaris 11/Nevada
            Status: NEW
          Severity: normal
          Priority: P3
         Component: webrev
        AssignedTo: scm-migration-dev at opensolaris.org
        ReportedBy: mike.kupfer at sun.com


The cron job that does the nightly update of the project webrev is
slightly busted.  Webrev complains that it can't find deleted files,
e.g., 

        usr/src/tools/findunref/exception_list
                *** Error: file not in parent or child
[...]
        usr/src/tools/findunref/findunref.c
                *** Error: file not in parent or child

The problem doesn't happen if I just run webrev from the shell.
Further experimentation shows that it's triggered by having CODEMGR_WS
set in the environment.  That is,

    (cd my_hg_repo; webrev -O)

is okay, but

    (cd my_hg_repo; CODEMGR_WS=`pwd` webrev -O)

fails.

I hacked webrev.sh as follows to get some additional information:

diff -r 58b073c84b44 usr/src/tools/scripts/webrev.sh
--- a/usr/src/tools/scripts/webrev.sh   Tue Oct 16 09:30:21 2007 -0400
+++ b/usr/src/tools/scripts/webrev.sh   Tue Oct 30 11:06:20 2007 -0700
@@ -1608,10 +1608,10 @@ function build_old_new_mercurial
                        fi
                done
        fi
+       print "HG_PARENT: $HG_PARENT, parentrev: $parentrev"

        if [[ -n $parentrev ]]; then
-               hg cat -r $parentrev $CWS/$PDIR/$PF > $olddir/$PDIR/$PF \
-                   2>/dev/null
+               hg cat -r $parentrev $CWS/$PDIR/$PF > $olddir/$PDIR/$PF 
                #
                # XXX currently 'hg cat' does not return a non-zeo exit code
                # upon error, so we need to check to see if the parent file

Here are a couple lines of debug output:

        usr/src/tools/findunref/Makefile
                HG_PARENT: 97eaa9738c8ffc9e10699aef02b598b99500c05e, parentrev:
97eaa9738c8ffc9e10699aef02b598b99500c05e
 patch cdiffs udiffs wdiffs sdiffs frames ps old new
        usr/src/tools/findunref/exception_list
                HG_PARENT: 97eaa9738c8ffc9e10699aef02b598b99500c05e, parentrev:
97eaa9738c8ffc9e10699aef02b598b99500c05e
abort: /home/kupfer/src/onnv-scm/usr/src/tools/findunref/exception_list not
under root
*** Error: file not in parent or child

Note that HG_PARENT and parentrev are okay, but "hg cat" isn't able to
find the file.  It looks like webrev.sh is passing to hg the absolute
path of the file, rather than the path relative to the top of the
repo.

I'm making this P3 because it seems like a call generator.  (In
addition to failing on deleted files, it'll probably fail on renamed
files.)


-- 
Configure bugmail: http://bugs.grommit.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

Reply via email to