On Wed, May 8, 2013 at 1:12 PM, Reuti <[email protected]> wrote:
> Hi,
>
> Am 08.05.2013 um 19:46 schrieb Michael Coffman:
>
>> I am having a problem with a client side jsv submit script setting a boolen
>> complex to 0. I've kind of worked around it until now...
>>
>> #grid version
>> 6.2u5
>>
>> # complex line
>> spice                 spice             BOOL        ==    FORCED
>> NO         0        0
>>
>> # jsv script is called from global sge_request.
>>
>> # grid submit line
>> qrsh  -now no -l spice
>>
>> #without memory rule (commented out so nothing in the jsv is exercised)
>> hard resource_list:         spice=TRUE
>>
>> #with memory rule
>> hard resource_list:         mem_total=128G,spice=0.000000
>
> This looks like:
>
> http://gridengine.org/pipermail/users/2012-December/005360.html
>
> But besides the calling issue it wasn't elaborated further AFAICS.
>
> -- Reuti

Thanks for the response.   Yes this is the same problem.

Given that the post you reference is using the shell version and I am
using the perl version, it seems like the boolean values are being
passed to the jsv script incorrectly from the start.   Sounds like a
bug to me, but I'm not sure how it works.

Are there docs that give more details on the interaction between the
jsv script and grid command?

>
>
>> # output of jsv debug log (logging_enabled) - this is the same with either 
>> way.
>>>>> START
>> <<< SEND ENV
>> <<< STARTED
>>>>> PARAM VERSION 1.0
>>>>> PARAM CONTEXT client
>>>>> PARAM CLIENT qrsh
>>>>> PARAM USER coffman
>>>>> PARAM GROUP games
>>>>> PARAM CMDNAME NONE
>>>>> PARAM CMDARGS 0
>>>>> PARAM e /dev/null
>>>>> PARAM l_hard spice=0.000000
>>>>> PARAM M [email protected]
>>>>> PARAM N QRLOGIN
>>>>> PARAM o /dev/null
>>>>> PARAM display localhost:11.0
>>>>> ENV ADD DISPLAY localhost:11.0
>>>>> ENV ADD QRSH_PORT gtmaster.ftc.avagotech.net:44360
>>>>> BEGIN
>> <<< PARAM l_hard mem_total=128G,spice=0.000000
>> <<< RESULT STATE CORRECT Job was modified before it was accepted
>>>>> QUIT
>>
>>
>> Any clues as to how best to fix this?  It seems to be something in the
>> JSV.pm file that maps the r_value to 0 if none is given.  It only seems
>> to happen when the jsv_sub_add_param is called.
>>
>> Here is a jsv script that I see this issue with...
>> ----------------------------------------------
>> #!/usr/bin/perl
>> use strict;
>> use warnings;
>> no warnings qw/uninitialized/;
>>
>> use Env qw(SGE_ROOT);
>> use lib "$SGE_ROOT/util/resources/jsv";
>> use JSV qw( :DEFAULT jsv_send_env jsv_log_info );
>>
>> jsv_on_start(sub {
>>  jsv_send_env();
>> });
>>
>> jsv_on_verify(sub {
>>  my %params = jsv_get_param_hash();
>>  my $do_correct = 0;
>>  my $do_wait = 0;
>>
>>  if ((exists $params{l_hard}{memory}) or (exists $params{l_hard}{mem})) {
>>    my $memory = 0;
>>    # set local memory value the l_hard memory value is one that I
>> created and the short
>>    # cut is mem..
>>    if (exists $params{l_hard}{memory}) { $memory = $params{l_hard}{memory} }
>>    elsif (exists $params{l_hard}{mem}) { $memory = $params{l_hard}{mem} }
>>    if (!exists $params{l_hard}{mem_total})  {
>>    # check values and set memory ceilings
>>      if ($memory < 128 ) {
>>        $do_correct = 1;
>>        jsv_sub_add_param('l_hard','mem_total', '260G');
>>      } elsif ($memory < 387 ) {
>>        $do_correct = 1;
>>        jsv_sub_add_param('l_hard','mem_total', '400G');
>>      }
>>    }
>>  } else {
>>    $do_correct = 1;
>>    jsv_sub_add_param('l_hard','mem_total', '128G');
>>  }
>>
>>  if ($do_wait) {
>>     jsv_reject_wait('Job is rejected. It might be submitted later.');
>>  } elsif ($do_correct) {
>>     jsv_correct('Job was modified before it was accepted');
>>  } else {
>>     jsv_accept('Job is accepted');
>>  }
>> });
>>
>> jsv_main();
>> ----------------------------------------------
>>
>> Any help is greatly appreciated.  Hopefully I don't have to check
>> every boolean value and if the r_value is 0, remap to true.  I guess
>> that wouldn't be the worst thing...
>>
>> Thanks.
>> --
>> -MichaelC
>> _______________________________________________
>> users mailing list
>> [email protected]
>> https://gridengine.org/mailman/listinfo/users
>



-- 
-MichaelC
_______________________________________________
users mailing list
[email protected]
https://gridengine.org/mailman/listinfo/users

Reply via email to