<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 01:25:56 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>Whamcloud Community JIRA</title>
    <link>https://jira.whamcloud.com</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.4.14</version>
        <build-number>940014</build-number>
        <build-date>05-12-2023</build-date>
    </build-info>


<item>
            <title>[LU-2524] Tests regressions: tests interrelation introduced.</title>
                <link>https://jira.whamcloud.com/browse/LU-2524</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;Following tests depend on results of previously executed tests and cannot be executed separately. That&apos;s a regression from 2.2.&lt;/p&gt;

&lt;p&gt;sanity.2a&lt;br/&gt;
sanity.3b&lt;br/&gt;
sanity.4b&lt;br/&gt;
sanity.5&lt;br/&gt;
sanity.6g&lt;br/&gt;
sanity.76&lt;br/&gt;
sanity.7a&lt;br/&gt;
sanity.7b&lt;br/&gt;
sanity.8&lt;br/&gt;
sanity.9&lt;br/&gt;
sanity.10&lt;br/&gt;
sanity.11&lt;br/&gt;
sanity.12&lt;br/&gt;
sanity.13&lt;br/&gt;
sanity.15&lt;br/&gt;
sanity.27i&lt;br/&gt;
sanity.51a&lt;br/&gt;
sanity.56a&lt;br/&gt;
sanity.101b&lt;/p&gt;

&lt;p&gt;sanityn.1b&lt;br/&gt;
sanityn.1c&lt;/p&gt;

&lt;p&gt;Typical log:&lt;br/&gt;
chmod: cannot access `/mnt/lustre/d0.sanity/d5/d2&apos;: No such file or directory&lt;br/&gt;
Can&apos;t lstat /mnt/lustre/d0.sanity/d5/d2: No such file or directory&lt;/p&gt;</description>
                <environment>1node virtual clustrer, Xperior framework.</environment>
        <key id="17022">LU-2524</key>
            <summary>Tests regressions: tests interrelation introduced.</summary>
                <type id="1" iconUrl="https://jira.whamcloud.com/secure/viewavatar?size=xsmall&amp;avatarId=11303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="1" iconUrl="https://jira.whamcloud.com/images/icons/priorities/blocker.svg">Blocker</priority>
                        <status id="6" iconUrl="https://jira.whamcloud.com/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="2">Won&apos;t Fix</resolution>
                                        <assignee username="jamesanunez">James Nunez</assignee>
                                    <reporter username="diff">Alexander Lezhoev</reporter>
                        <labels>
                            <label>patch</label>
                            <label>tests</label>
                    </labels>
                <created>Wed, 26 Dec 2012 05:17:40 +0000</created>
                <updated>Sat, 9 Oct 2021 06:08:37 +0000</updated>
                            <resolved>Sun, 14 Aug 2016 17:21:31 +0000</resolved>
                                    <version>Lustre 2.4.0</version>
                    <version>Lustre 2.6.0</version>
                                                        <due></due>
                            <votes>2</votes>
                                    <watches>12</watches>
                                                                            <comments>
                            <comment id="49712" author="diff" created="Thu, 27 Dec 2012 08:30:04 +0000"  >&lt;p&gt;sanity test_2a:&lt;br/&gt;
test_mkdir $DIR/$tdir failed if $DIR wasn&apos;t created before. test_mkdir -p must be used.&lt;/p&gt;

&lt;p&gt;sanity test_3b:&lt;br/&gt;
    if [ ! -d $DIR/$tdir ]; then&lt;br/&gt;
        mkdir $DIR/$tdir&lt;br/&gt;
    fi&lt;br/&gt;
failed if $DIR wasn&apos;t created before. mkdir -p must be used.&lt;/p&gt;

&lt;p&gt;test_4b() {&lt;br/&gt;
        if [ ! -d $DIR/$tdir ]; then&lt;br/&gt;
                test_mkdir $DIR/$tdir&lt;br/&gt;
        fi&lt;br/&gt;
failed if $DIR wasn&apos;t created before. mkdir -p must be used.&lt;/p&gt;

&lt;p&gt;test_5() {&lt;br/&gt;
        test_mkdir $DIR/$tdir&lt;br/&gt;
failed if $DIR wasn&apos;t created before. mkdir -p must be used.&lt;/p&gt;

&lt;p&gt;...&lt;/p&gt;

&lt;p&gt;test_56a() {    # was test_56&lt;br/&gt;
        rm -rf $DIR/$tdir&lt;br/&gt;
        $SETSTRIPE -d $DIR&lt;br/&gt;
        test_mkdir $DIR/$tdir&lt;br/&gt;
failed if $DIR wasn&apos;t created before. mkdir -p must be used. This test depends on test_52b&lt;/p&gt;</comment>
                            <comment id="49758" author="adilger" created="Fri, 28 Dec 2012 13:57:28 +0000"  >&lt;p&gt;As you are able to test this most easily, please submit a patch that resolves these issues for your test framework.&lt;/p&gt;</comment>
                            <comment id="50138" author="kshatskyy" created="Tue, 8 Jan 2013 10:37:54 +0000"  >&lt;p&gt;Hi Andreas,&lt;br/&gt;
Could you please help to understand why such complicated logic required for so simple test scenario?&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;commit 13b269ab77daca78fdfc374986d4cc34c7e66309&lt;br/&gt;
Author: wangdi &amp;lt;di.wang@whamcloud.com&amp;gt;&lt;br/&gt;
Date:   Wed Nov 14 12:02:43 2012 -0800&lt;/p&gt;

&lt;p&gt;    &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-1187&quot; title=&quot;DNE Phase 1: Remote Directories&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-1187&quot;&gt;&lt;del&gt;LU-1187&lt;/del&gt;&lt;/a&gt; tests: Add test_mkdir in sanity for DNE.&lt;/p&gt;

&lt;p&gt;    1. Replace mkdir with test_mkdir, which will create local or&lt;br/&gt;
    remote directory according to its testnum, i.e. choose the&lt;br/&gt;
    mdt index by testnum % mdt_count, then create directory&lt;br/&gt;
    by lfs mkdir.&lt;/p&gt;
&lt;/blockquote&gt;</comment>
                            <comment id="50157" author="kshatskyy" created="Tue, 8 Jan 2013 16:11:54 +0000"  >&lt;p&gt;The sanityn failings are related to Xyratex MRP-335, that we haven&apos;t yet landed to wc main stream.&lt;br/&gt;
The test sanity.76, sanity.101b look not related to the issue.&lt;/p&gt;

&lt;p&gt;Note regarding all the rest failing tests. The problem is not that $DIR is not created, the actual problem is that&lt;br/&gt;
$tdir variable in fact isn&apos;t directory name, but piece of path, so because following instruction is used everywhere:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;test_mkdir $DIR/$tdir
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;and even if the $DIR exists the $tdir can&apos;t be created, see test-framework.sh line:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;export tdir=d0.${TESTSUITE}/d${base}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;I think it make a confusion to assign &lt;em&gt;path&lt;/em&gt; to &quot;constant&quot; variable with name dir.&lt;br/&gt;
In many places in tests scripts it is logically to assume that &lt;b&gt;tdir&lt;/b&gt; is a dir name that is why it is easy to make a mistake. In general, when you type a command &quot;test_mkdir $DIR/$tdir&quot; you expect there will be only one operation.&lt;/p&gt;
</comment>
                            <comment id="50161" author="adilger" created="Tue, 8 Jan 2013 17:13:46 +0000"  >&lt;p&gt;One option is to have test_mkdir default to &quot;mkdir -p&quot; internally, which will ensure that the subdirectories are always created, but I don&apos;t know if this will have any side-effect for other tests.  I expect it will not.&lt;/p&gt;

&lt;p&gt;Another simple option is to default &lt;tt&gt;DIR=$MOUNT/d0.${TESTSUITE&lt;/tt&gt;} then &lt;tt&gt;tdir=d.${base&lt;/tt&gt;} and &lt;tt&gt;tfile=f.${testnum&lt;/tt&gt;}.  This would move all of the test files into a subdirectory, but it might also have some side-effects for tests that expect to be run in the root directory.  The benefit would be that &lt;tt&gt;$tdir&lt;/tt&gt; and &lt;tt&gt;$tfile&lt;/tt&gt; are both &quot;one level&quot; names and &quot;mkdir -p&quot; is not needed in all of the callers, only when $DIR is first created.&lt;/p&gt;

&lt;p&gt;Finally, just using &lt;tt&gt;test_mkdir -p $DIR/$tdir&lt;/tt&gt; directly would have minimal complexity, but does not improve the situation for the future.&lt;/p&gt;</comment>
                            <comment id="50162" author="kshatskyy" created="Tue, 8 Jan 2013 17:33:43 +0000"  >&lt;p&gt;Making &lt;em&gt;test_mkdir&lt;/em&gt; default to recursive creation of path may disallow for some specific scenario, that may be used further or used somewhere already, for example, we may want to check &lt;tt&gt;mkdir -p&lt;/tt&gt; fails correctly while trying to create directory by not existing path.&lt;/p&gt;

&lt;p&gt;Regarding second option, I wonder why the &lt;em&gt;tdir&lt;/em&gt; must not be in the root directory? It can be for example: &lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;tdir=d.${TESTSUITE}.${base} &lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;


&lt;p&gt;I still have a question why the &lt;em&gt;test_mkdir&lt;/em&gt; function setting stripes in such a pseudo-random way:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;test_nume % mdt_count
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;I&apos;m not sure that this code because it make test scenario opaque. If we want to test striping then we need special purpose tests.&lt;/p&gt;</comment>
                            <comment id="50170" author="adilger" created="Tue, 8 Jan 2013 18:21:13 +0000"  >&lt;p&gt;I think the original reason for using tdir=d0.${TESTSUITE} is that it puts the tests into a separate subdirectory for each test script (e.g. so that some existing &quot;d0&quot; with 100k files in it did not cause another test to fail during &lt;tt&gt;rm -rf $DIR/&lt;span class=&quot;error&quot;&gt;&amp;#91;Rdfs&amp;#93;&lt;/span&gt;&lt;span class=&quot;error&quot;&gt;&amp;#91;0-9&amp;#93;&lt;/span&gt;&lt;b&gt;&lt;/tt&gt; at the start of sanity.sh and sanityn.sh).  However, looking at this again, since this is deleting all &lt;tt&gt;d&lt;span class=&quot;error&quot;&gt;&amp;#91;0-9&amp;#93;&lt;/span&gt;&lt;/b&gt;&lt;/tt&gt; directories at the start, it would also delete &lt;tt&gt;d0.replay-single&lt;/tt&gt; and such, so I suspect the extra level of indirection is not helpful.&lt;/p&gt;

&lt;p&gt;Looking though the &lt;tt&gt;git/cvs annotate&lt;/tt&gt; commit history for test-framework.sh is always useful to find more information about why code is written in a particular way.  This returns commit &lt;tt&gt;9975e4daa, b=13979&lt;/tt&gt; and before that &lt;tt&gt;067e8dc6, b=13798&lt;/tt&gt; has the original change (&lt;a href=&quot;https://bugzilla.lustre.org/show_bug.cgi?id=13798#c21&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://bugzilla.lustre.org/show_bug.cgi?id=13798#c21&lt;/a&gt;).  It seems that the original goal was to add the test name into the directory name to make it unique between test scripts, and the implementation to put it in a &lt;em&gt;subdirectory&lt;/em&gt; was not the important part.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;I would like to comment also that tdir/tfile stuff seems needs some modification (not sure that it makes sense to discuss this here, please let me know if I have to file a new bug):&lt;/p&gt;

&lt;p&gt;a) Currently $tdir $tfile stuff does not provide a possibility to work each test&lt;br/&gt;
   on each own directory because sanity test_1 has the same $tdir as replay-single&lt;br/&gt;
   test_1 and sanityN test_1, etc. If this $tdir stuff was added to t-f with the&lt;br/&gt;
   goal to provide the unique dir for each test &amp;#8211; then run_one should be changed to&lt;br/&gt;
   export unique dir name contained $TESTSUITE at the name.&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;Please submit a patch that changes to &lt;tt&gt;tdir=d0.${TESTSUITE}.${base&lt;/tt&gt;} and see whether it can pass testing or not.  It could then also remove all of the &quot;-p&quot; arguments from tests that no longer need that, which will probably speed up the tests a small amount as well.&lt;/p&gt;

&lt;p&gt;As for test_mkdir(), it was recently added for testing multiple MDTs in a variety of ways more easily for DNE.  This is only pseudo-random, so it is definitely repeatable for the same test configuration (i.e. with the same &lt;tt&gt;mdt_count&lt;/tt&gt;), and I don&apos;t think it will hurt anything.&lt;/p&gt;</comment>
                            <comment id="50171" author="di.wang" created="Tue, 8 Jan 2013 18:21:20 +0000"  >&lt;p&gt;test_mkdir does not assume there will be single or multiple dirs needs to be created, if there are more than one dirs needs to be created, -p is definitely needed here, i.e. test_mkdir -p needs to be used. It seems some of the test_mkdir(in sanity.sh) misses -p indeed. &lt;/p&gt;

&lt;p&gt;&quot;I&apos;m not sure that this code because it make test scenario opaque. If we want to test striping then we need special purpose tests.&quot;&lt;/p&gt;

&lt;p&gt;If you want to test special striping,  you probably need add special test for it, i.e. using lfs mkdir -i directly, instead of using test_mkdir. &lt;/p&gt;</comment>
                            <comment id="50448" author="kshatskyy" created="Mon, 14 Jan 2013 17:29:59 +0000"  >&lt;p&gt;Posted patch for review:&lt;br/&gt;
&lt;a href=&quot;http://review.whamcloud.com/5022&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/5022&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="51029" author="kshatskyy" created="Wed, 23 Jan 2013 11:23:45 +0000"  >&lt;p&gt;Andreas,&lt;br/&gt;
after this fix we have following &lt;tt&gt;run_one&lt;/tt&gt; function:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;run_one() {
    local testnum=$1
    local message=$2
    tfile=f0.${TESTSUITE}.${testnum}
    export tdir=d0.${TESTSUITE}.${base}
    export TESTNAME=test_$testnum
    local SAVE_UMASK=`umask`
    umask 0022 

    banner &lt;span class=&quot;code-quote&quot;&gt;&quot;test $testnum: $message&quot;&lt;/span&gt;
    test_${testnum} || error &lt;span class=&quot;code-quote&quot;&gt;&quot;test_$testnum failed with $?&quot;&lt;/span&gt;
    cd $SAVE_PWD
    reset_fail_loc
    check_grant ${testnum} || error &lt;span class=&quot;code-quote&quot;&gt;&quot;check_grant $testnum failed with $?&quot;&lt;/span&gt;
    check_catastrophe || error &lt;span class=&quot;code-quote&quot;&gt;&quot;LBUG/LASSERT detected&quot;&lt;/span&gt;
    &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; [ &lt;span class=&quot;code-quote&quot;&gt;&quot;$PARALLEL&quot;&lt;/span&gt; != &lt;span class=&quot;code-quote&quot;&gt;&quot;yes&quot;&lt;/span&gt; ]; then 
        ps auxww | grep -v grep | grep -q multiop &amp;amp;&amp;amp;
            error &lt;span class=&quot;code-quote&quot;&gt;&quot;multiop still running&quot;&lt;/span&gt;
    fi   
    unset TESTNAME
    unset tdir
    umask $SAVE_UMASK
    &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; 0
}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;What is interesting for me is:&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;Why &lt;em&gt;tfile&lt;/em&gt; is not exported as &lt;em&gt;tdir&lt;/em&gt; and &lt;em&gt;TESTNAME&lt;/em&gt; are.&lt;/li&gt;
	&lt;li&gt;Why &lt;em&gt;tfile&lt;/em&gt; and &lt;em&gt;tdir&lt;/em&gt; are lowercase if they are kind of global variables.&lt;/li&gt;
	&lt;li&gt;The &lt;em&gt;tdir&lt;/em&gt; has following value:
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;    export tdir=d0.${TESTSUITE}.${base}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Where &lt;em&gt;$base&lt;/em&gt; is numerical id &quot;stripped of&quot; the letters. In this case, for example, two tests 31a and 31b with the same base 31 will work within the same working directory and will mess their working stuff.&lt;/p&gt;&lt;/li&gt;
	&lt;li&gt;Both &lt;em&gt;tfile&lt;/em&gt; and &lt;em&gt;tdir&lt;/em&gt; have &quot;magic&quot; prefixes: &lt;tt&gt;f0&lt;/tt&gt; and &lt;tt&gt;d0&lt;/tt&gt; correspondingly. Why not just assign values to them as follows:
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;tfile=f${testnum}.${TESTSUITE}
tdir=d${testnum}.${TESTSUITE}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;In this case the code &lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;rm -rf $DIR/[Rdfs][0-9]*&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt; should be still working and each test case will have its unique testing directory. Notice, this will cause many failures probably, because we didn&apos;t refactor all tests that are related between each other.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;
</comment>
                            <comment id="51116" author="adilger" created="Thu, 24 Jan 2013 13:30:07 +0000"  >&lt;p&gt;Kyr,&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;I&apos;m not sure why $tfile is not exported. Perhaps because it was only thought to be relevant to the test being run under run_one()?  In any case, I&apos;m also not fond of the inconsistency here.&lt;/li&gt;
	&lt;li&gt;there is not much consistency for upper and lower case for environment variables in the tests. I&apos;d prefer to just keep them lower case, since it would just case a LOT of churn in the tests for very little value if they were changed to uppercase.&lt;/li&gt;
	&lt;li&gt;I think the $tdir being the same subdir was done on purpose so that different subtests would operate on the same files, and only the first one would be set up independently. I think we have moved away from this to some extent, but some tests definitely depend on this behaviour. Other tests (e.g. &quot;lfs find&quot;) use it to avoid having to recreate the test files for each subtest. In any case, it cannot be changed until after all such tests are fixed.&lt;/li&gt;
	&lt;li&gt;I&apos;m happy if you want to remove the magic prefix and instead go to only having the $TESTNAME suffix. I don&apos;t think this will cause many failures, definitely fewer than changing $tdir to be unique per subtest.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Since each of these changes is potentially large, please submit them as separate patches as needed. I think the #3 change could be made first as part of your current patch, then the &quot;-p&quot; removal, then at the end the $tdir separation, and ideally a separate patch fixing any remaining tests that hard-code the dir/file names instead of using $tdir and $tfile. &lt;/p&gt;</comment>
                            <comment id="63421" author="jamesanunez" created="Wed, 31 Jul 2013 20:36:38 +0000"  >&lt;p&gt;Similar effort to combine tests that depend on each other: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-3514&quot; title=&quot;sanity tests 27c, 77c, 77e, 77h are skipped when previous dependent test is not ran&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-3514&quot;&gt;&lt;del&gt;LU-3514&lt;/del&gt;&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="63477" author="jamesanunez" created="Thu, 1 Aug 2013 15:27:28 +0000"  >&lt;p&gt;Although many of the tests  and test numbers have changed, there are still interdependent many tests in out test scripts. In sanity, the following tests depend on results of previously executed tests and will fail when executed separately: 6g, 7a, 7b, 8, 9, 10, 11, 12, 13, 15, 16, 24a, 24b, 24c, 24d, 56a. In many tests, the results of test_mkdir are not checked and some of these tests would fail on the mkdir instead of on a later call if a check on mkdir was in place. For example sanity tests 14, 50, 72b. &lt;/p&gt;

&lt;p&gt;I&#8217;d like to move this patch/work ahead by submitting the following series of patches that, I think, accomplish what is done in the current patch and in the comments posted here. &lt;/p&gt;

&lt;p&gt;Patch 1 Change $tdir to a single directory with the proposed change to the name format d0.${TESTSUITE}/d${base} to d${testnum}.${TESTSUITE}. This makes the &#8220;-p&#8221; option for (test_)mkdir unnecessary in most cases. Thus, we can remove the &#8220;-p&#8221; option where possible and add the &#8220;-p&#8221; option where it is more efficient as in tests 24r, s, t, 31i and 31j. Also, check return codes of test_mkdir and have an useful error message for all calls to error(). &lt;/p&gt;

&lt;p&gt;Patch 2: Where possible, change test file names and directories to $tfile and $tdir, respectively. Modify tfile with the proposed change to name format ; f.${TESTSUITE}.${testnum} to f${testnum}.${TESTSUITE} . Also, export the $tfile variable.&lt;/p&gt;

&lt;p&gt;Patch 3: Combine tests that are directly dependent on each other. For example sanity tests 26d and 26e, 25a and 25b, 34a and 34c, 34a and 34c, 34a and 34c, sanityn 1b and 1c.&lt;/p&gt;

&lt;p&gt;I am open to splitting or combining the above proposed patches or modifications to the work done in them if someone feels strongly about it.&lt;/p&gt;</comment>
                            <comment id="63512" author="adilger" created="Thu, 1 Aug 2013 22:10:15 +0000"  >&lt;p&gt;James, I&apos;m all in favour of this. It needs someone to move the existing patch forward. &lt;/p&gt;</comment>
                            <comment id="63772" author="jamesanunez" created="Wed, 7 Aug 2013 13:30:50 +0000"  >&lt;p&gt;Patch #1 posted for review &lt;a href=&quot;http://review.whamcloud.com/#/c/5022&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/#/c/5022&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="70424" author="jamesanunez" created="Thu, 31 Oct 2013 19:19:59 +0000"  >&lt;p&gt;Since the patch above was large and touched so many test scripts, I&apos;ve broken it up in the hopes that autotest will pass and the patch can be landed. There will be a small series of patches with each one modifying a small set of test scripts instead of trying to modify all the test scripts at once. The first patch makes the proposed modifications to $tdir and $tfile and makes the proposed modifications to conf-sanity; remove the &quot;-p&quot; on mkdir when possible, add error messages to calls to error and changes some calls to return with calls to error. Once this patch lands, all the other test scripts can be modified with these changes (improvements?):&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://review.whamcloud.com/#/c/8123/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/#/c/8123/&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="74817" author="jamesanunez" created="Mon, 13 Jan 2014 14:50:45 +0000"  >&lt;p&gt;The modification to $tdir and $tfile in patch &lt;a href=&quot;http://review.whamcloud.com/#/c/8123/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/#/c/8123/&lt;/a&gt; have landed to master. &lt;/p&gt;

&lt;p&gt;I&apos;m leaving this ticket open since there is more work to be done that is described here.&lt;/p&gt;</comment>
                            <comment id="75631" author="green" created="Sat, 25 Jan 2014 06:39:17 +0000"  >&lt;p&gt;The patch 8123 introduced a bunch of regressions for tests that depend on another test (the so called subseris - with letters.)&lt;/p&gt;

&lt;p&gt;The poster example is sanity test_51b and test_51ba&lt;br/&gt;
In the past tdir would be &lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;export tdir=d0.${TESTSUITE}/d${base}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;with the new patch it is &lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;export tdir=d${testnum}.${TESTSUITE}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;The test_51b crates a huge bunch of dirs and then test_51ba used to delete all of them, but not anymore as they live in separate dirs now.&lt;br/&gt;
There are more tests like this.&lt;br/&gt;
The end result is (small test) MDS fills up real fast early on and then tests start to fail for no good reason.&lt;/p&gt;

&lt;p&gt;This needs to be addressed ASAP!&lt;/p&gt;</comment>
                            <comment id="75632" author="adilger" created="Sat, 25 Jan 2014 08:00:07 +0000"  >&lt;p&gt;It might be enough to change tdir to use &quot;&lt;tt&gt;d$base&lt;/tt&gt;&quot; instead  of &quot;&lt;tt&gt;d$testnum&lt;/tt&gt;&quot;. That would get it back to the original config where the subtests shared the same dirs. I don&apos;t know if that is good or bad, probably a but if both. &lt;/p&gt;</comment>
                            <comment id="75668" author="jamesanunez" created="Mon, 27 Jan 2014 14:01:19 +0000"  >&lt;p&gt;Since sanity and other tests have several subtests that are dependent on each other, these subtests cannot be run separately. If they cannot be run alone, then it makes sense to combine the subtests. One of the past versions of this patch combined dependent subtests. So, instead of changing the tdir variable, shouldn&apos;t we either combine dependent tests or make them not depend on each other?&lt;/p&gt;

&lt;p&gt;EDIT: If combining tests is not desirable, then any dependent subtests need to check that the previous test was run.&lt;/p&gt;</comment>
                            <comment id="75682" author="green" created="Mon, 27 Jan 2014 16:10:55 +0000"  >&lt;p&gt;I guess at least in the case of test_51b and test_51ba it was a pretty bad idea to defer a huge cleanup of current test stuff on to the next test.&lt;br/&gt;
As such it certainly makes sense to recombine tests into bigger more self-contained ones.&lt;br/&gt;
We probably should not do it to all of them, some discretion needs to be excercised to see how separate do the tests actually look like.&lt;/p&gt;</comment>
                            <comment id="75727" author="adilger" created="Mon, 27 Jan 2014 22:49:13 +0000"  >&lt;p&gt;I pushed &lt;a href=&quot;http://review.whamcloud.com/9021&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/9021&lt;/a&gt; to fix the sanity.sh test_51b/51ba problem.&lt;/p&gt;</comment>
                            <comment id="75745" author="ryg_" created="Tue, 28 Jan 2014 07:31:57 +0000"  >&lt;p&gt;What is reason to keep dependencies in tests while the jira tickets is about avoiding dependencies? I think good solution should be merging deeply depended tests to one.&lt;/p&gt;</comment>
                            <comment id="76274" author="jamesanunez" created="Wed, 5 Feb 2014 16:30:38 +0000"  >&lt;p&gt;I&apos;ve refreshed the patch at &lt;a href=&quot;http://review.whamcloud.com/#/c/5022&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/#/c/5022&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;This patch cleans up code and checks/corrects for sub test dependencies for:&lt;br/&gt;
conf-sanity.sh&lt;br/&gt;
dne-sanity.sh&lt;br/&gt;
functions.sh&lt;br/&gt;
sanity-quota.sh&lt;br/&gt;
sanity-scrub.sh&lt;/p&gt;

&lt;p&gt;I&apos;ll do the same code clean up for other tests in the next patch.&lt;/p&gt;</comment>
                            <comment id="79376" author="utopiabound" created="Fri, 14 Mar 2014 20:56:15 +0000"  >&lt;p&gt;enable conf-sanity/58 on ZFS&lt;br/&gt;
&lt;a href=&quot;http://review.whamcloud.com/9675&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/9675&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="85295" author="jamesanunez" created="Fri, 30 May 2014 19:29:38 +0000"  >&lt;p&gt;I&apos;ve broken up previous patches to modify just one test suite per patch. The patch cleaning up conf-sanity is at &lt;a href=&quot;http://review.whamcloud.com/10530&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/10530&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;More patches will follow.&lt;/p&gt;</comment>
                            <comment id="99767" author="gerrit" created="Fri, 21 Nov 2014 16:15:55 +0000"  >&lt;p&gt;Oleg Drokin (oleg.drokin@intel.com) merged in patch &lt;a href=&quot;http://review.whamcloud.com/10530/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/10530/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-2524&quot; title=&quot;Tests regressions: tests interrelation introduced.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-2524&quot;&gt;&lt;del&gt;LU-2524&lt;/del&gt;&lt;/a&gt; test: Code clean up for conf-sanity&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: 648c73b50abdeeb8c6d646a7b743d748c84451d6&lt;/p&gt;</comment>
                            <comment id="102202" author="gerrit" created="Mon, 22 Dec 2014 21:54:36 +0000"  >&lt;p&gt;James Nunez (james.a.nunez@intel.com) uploaded a new patch: &lt;a href=&quot;http://review.whamcloud.com/13170&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/13170&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-2524&quot; title=&quot;Tests regressions: tests interrelation introduced.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-2524&quot;&gt;&lt;del&gt;LU-2524&lt;/del&gt;&lt;/a&gt; test: Test suite clean up for replay-single&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: f78ba34a6334cb5997cbdaf9b005882507aab4ea&lt;/p&gt;</comment>
                            <comment id="113452" author="gerrit" created="Mon, 27 Apr 2015 04:25:38 +0000"  >&lt;p&gt;Oleg Drokin (oleg.drokin@intel.com) merged in patch &lt;a href=&quot;http://review.whamcloud.com/13170/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/13170/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-2524&quot; title=&quot;Tests regressions: tests interrelation introduced.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-2524&quot;&gt;&lt;del&gt;LU-2524&lt;/del&gt;&lt;/a&gt; test: Test suite clean up for replay-single&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: 0444a40d9838b868092c78d3bdd4c7c3a00199e6&lt;/p&gt;</comment>
                            <comment id="114259" author="gerrit" created="Tue, 5 May 2015 17:54:48 +0000"  >&lt;p&gt;James Nunez (james.a.nunez@intel.com) uploaded a new patch: &lt;a href=&quot;http://review.whamcloud.com/14680&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/14680&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-2524&quot; title=&quot;Tests regressions: tests interrelation introduced.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-2524&quot;&gt;&lt;del&gt;LU-2524&lt;/del&gt;&lt;/a&gt; test: Clean up sanity-quota&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: dfc1b0f4ceebd580b74c1701725d778185461f4c&lt;/p&gt;</comment>
                            <comment id="114309" author="gerrit" created="Tue, 5 May 2015 22:20:53 +0000"  >&lt;p&gt;James Nunez (james.a.nunez@intel.com) uploaded a new patch: &lt;a href=&quot;http://review.whamcloud.com/14685&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/14685&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-2524&quot; title=&quot;Tests regressions: tests interrelation introduced.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-2524&quot;&gt;&lt;del&gt;LU-2524&lt;/del&gt;&lt;/a&gt; test: Clean up replay-ost-single test suite&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: ead20ce593e2b6b1e85a0898ed05013430189f41&lt;/p&gt;</comment>
                            <comment id="124756" author="gerrit" created="Thu, 20 Aug 2015 23:26:59 +0000"  >&lt;p&gt;Andreas Dilger (andreas.dilger@intel.com) merged in patch &lt;a href=&quot;http://review.whamcloud.com/14685/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/14685/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-2524&quot; title=&quot;Tests regressions: tests interrelation introduced.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-2524&quot;&gt;&lt;del&gt;LU-2524&lt;/del&gt;&lt;/a&gt; test: Clean up replay-ost-single test suite&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: 1d40519afde98abf22bf0e4998effc656f1cb1f0&lt;/p&gt;</comment>
                            <comment id="135874" author="gerrit" created="Thu, 10 Dec 2015 17:44:57 +0000"  >&lt;p&gt;Oleg Drokin (oleg.drokin@intel.com) merged in patch &lt;a href=&quot;http://review.whamcloud.com/14680/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://review.whamcloud.com/14680/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-2524&quot; title=&quot;Tests regressions: tests interrelation introduced.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-2524&quot;&gt;&lt;del&gt;LU-2524&lt;/del&gt;&lt;/a&gt; test: Clean up sanity-quota&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: cc623e9ff1a0b6e3ffcdfac086a7630f93e70b93&lt;/p&gt;</comment>
                            <comment id="161843" author="simmonsja" created="Sun, 14 Aug 2016 17:21:31 +0000"  >&lt;p&gt;Old blocker for unsupported version&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10010">
                    <name>Duplicate</name>
                                                                <inwardlinks description="is duplicated by">
                                        <issuelink>
            <issuekey id="17282">LU-2671</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="18015">LU-2992</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="20162">LU-3687</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                            <outwardlinks description="is related to ">
                                        <issuelink>
            <issuekey id="19575">LU-3514</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="24680">LU-5047</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="23633">LU-4769</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="22869">LU-4536</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="22928">LU-4564</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="22318">LU-4343</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                            <customfield id="customfield_10890" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10390" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hzve7r:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10090" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>5942</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10060" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Severity</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10022"><![CDATA[3]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                        </customfields>
    </item>
</channel>
</rss>