<font size=2 face="sans-serif">Thanks for this tip. I will try these commands
and give feedback in the next week.</font>
<br>
<br><font size=2 face="sans-serif">Matthias</font>
<br>
<br>
<br>
<br>
<br><font size=1 color=#5f5f5f face="sans-serif">Von:      
 </font><font size=1 face="sans-serif">"Marc A Kaplan"
<makaplan@us.ibm.com></font>
<br><font size=1 color=#5f5f5f face="sans-serif">An:      
 </font><font size=1 face="sans-serif">gpfsug main discussion
list <gpfsug-discuss@spectrumscale.org></font>
<br><font size=1 color=#5f5f5f face="sans-serif">Datum:      
 </font><font size=1 face="sans-serif">01.11.2017 15:43</font>
<br><font size=1 color=#5f5f5f face="sans-serif">Betreff:    
   </font><font size=1 face="sans-serif">[Newsletter]
Re: [gpfsug-discuss] Combine different rules - tip: use mmfind & co;
FOR FILESET; FILESET_NAME</font>
<br><font size=1 color=#5f5f5f face="sans-serif">Gesendet von:    
   </font><font size=1 face="sans-serif">gpfsug-discuss-bounces@spectrumscale.org</font>
<br>
<hr noshade>
<br>
<br>
<br><font size=2 face="sans-serif">Thanks Jonathan B for your comments
and tips on experience using mmapplypolicy and policy rules.  Good
to see that some of the features we put into the product are actually useful.
 </font><font size=3><br>
</font><font size=2 face="sans-serif"><br>
For those not quite as familiar, and have come somewhat later to the game,
like Matthias K - I have a few remarks and tips that may be helpful:</font><font size=3><br>
</font><font size=2 face="sans-serif"><br>
You can think of and use mmapplypolicy as a fast, parallelized version
of the classic   `<b>find ... | xargs ...</b> `  pipeline.<br>
In fact we've added some "sample" scripts with options that make
this easy:</font><font size=3><br>
</font><font size=2 face="sans-serif"><b><br>
samples/ilm/mmfind</b>  :  "understands" the classic
find search arguments as well as all the mmapplypolicy options and the
recent versions<br>
  also support an -xargs option so you can write the classic pipepline
as one command:  <b> mmfind ... -xargs ...</b><br>
    <br>
There are debug/diagnostic options so you can see the underlying GPFS commands
and policy rules that are generated, so if mmfind doesn't do exactly what
you were hoping, you can capture the commands and rules that it does do
and tweak/hack those.</font><font size=3><br>
</font><font size=2 face="sans-serif"><br>
Two of the most crucial and tricky parts of mmfind are available as separate
scripts that can be used separately:</font><font size=3><br>
</font><font size=2 face="sans-serif"><b><br>
tr_findToPol.pl </b>:  convert classic options to policy rules.<br>
 <b><br>
mmxargs :</b>   100% correctly deal with the problem of whitespace
and/or "special" characters in the pathnames output as file lists
by<br>
                    
  mmapplypolicy.  This is somewhat tricky.  </font><font size=3><br>
</font><font size=2 face="sans-serif"><br>
EVEN IF you've already worked out your own policy rules and use policy
 RULE  ... EXTERNAL ...  EXEC 'myscript'<br>
you may want to use mmxargs or "lift" some of the code there-in
-- because it is very likely your 'myscript' is not handling the problem
of special characters correctly.</font><font size=3><br>
</font><font size=2 face="sans-serif"><b><br>
FILESETs vs POOLs</b> - yes these are "orthogonal" concepts in
GPFS (Spectrum Scale!)  BUT some customer/admins may choose to direct
GPFS to assign to POOL based on FILESET using policy rules clauses like:<br>
    FOR FILESET('a_fs', 'b_fs')   /* handy to restrict a
rule to one or a few filesets */<br>
    WHERE ...   AND (FILESET_NAME LIKE 'xyz_%') AND ...
 /*  restrict to filesets whose name matches a pattern */</font><font size=3><br>
</font><font size=2 face="sans-serif"><br>
-- marc of GPFS</font><tt><font size=2>_______________________________________________<br>
gpfsug-discuss mailing list<br>
gpfsug-discuss at spectrumscale.org<br>
</font></tt><a href="http://gpfsug.org/mailman/listinfo/gpfsug-discuss"><tt><font size=2>http://gpfsug.org/mailman/listinfo/gpfsug-discuss</font></tt></a><tt><font size=2><br>
</font></tt>
<br>
<br>