Hi Ping,

I don’t know what OS you are using but it’s easy to install most of those 
dependencies using pip or brew.

Ajay

From: Ping Liu <[email protected]>
Date: Wednesday, September 6, 2017 at 11:28 AM
To: Ajay Kumar <[email protected]>
Cc: "[email protected]" <[email protected]>
Subject: Re: Help on test-patch

Hi Ajay,
Thank you very much for your message.
Yes, you are right.  Using the same repo is most straight forward.  The 
advantage to use two repos is to allow hard reset to the base repo while 
keeping the development repo as is.  The patch is created from development repo 
(delta on top of trunk) and will be applied to base repo (which need to be hard 
reset already).  I was able to try it.

Unfortunately, I am not able to run the full process successfully as my 
environment apparently lacks some settings such as snappy.  The instruction and 
online resource are quite vague.  I don't know what is the correct way to 
install and configure it.  But this is different story, of course.
Thanks Ajay!
Ping



On Wed, Sep 6, 2017 at 10:51 AM, Ajay Kumar 
<[email protected]<mailto:[email protected]>> wrote:
Hi Ping,
I think your assumptions are correct.
I usually test patch with same repo after hard resetting that repo to its 
latest state. (i.e ./dev-support/bin/test-patch /tmp/1.patch)

Ajay

On 9/2/17, 12:37 AM, "Ping Liu" 
<[email protected]<mailto:[email protected]>> wrote:

    I have a patch for an Hadoop Jira issue.  I need test the patch.  I am
    following TestingPatchTips at https://wiki.apache.org/hadoop/TestPatchTips.

    I have difficulty in understanding the command option basedir and
    reset-repo.

    The best example is in Recommended Usage, the last part, where both basedir
    and reset-repo are used.

    *Recommended Usage*
    >
    > In general, the easiest way to use test-patch.sh is to use two repos. One
    > repo is used to build patches. The other repo is used to to test them.
    >
    > $ git diff --no-prefix trunk > /tmp/1.patch$ dev-support/bin/test-patch 
--resetrepo --run-tests --basedir=/test/repo /tmp/1.patch
    >
    >
    > This will run the freshly built patch against the tests in a fresh repo.
    >

    In above example, my understand is

    1. current location $ is the working repo - it contains changes and is
    where the patch is created from.

    2. dev-support/bin/test-patch is under $, therefore we need get into $ in
    order to run test-patch.

    3. /test/repo is the clean repo from current trunk.

    4. when running test-patch command, patch will be applied to /test/repo.

    Please let me know if my understanding is correct.

    So
       --basedir means the repo where the patch will be applied to and test
    will be performed on?

      --resetrepo means

       1. basedir (/test/repo) but not the current dir $ is allowed to be
       modified?
       2. also modified what?  What kind of modification is it?
       3. BTW, is resetrepo a typo for --reset-repo (missing a hyphen)?

    Any idea is highly appreciated!

    Ping

Reply via email to