GASNET=localtarball does not work

Issue #24 resolved
Dan Bonachea created an issue

nobs drops dead when passed GASNET= a local EX tarball. Same error on both Linux and Cygwin, shown below.

Very low priority for me, I'd never actually use that feature myself, even if it worked.

cd /home/pcp1/bonachea/UPC/bex/dbg/upcxx && source ./sourceme && export CC=/usr/local/pkg/gcc/7.1.0/bin/gcc  CXX=/usr/local/pkg/gcc/7.1.0/bin/g++  DBGSYM=1 OPTLEV=0 GASNET="/home/pcp1/bonachea/UPC/bex/dbg/upcxx/gasnet.tar.gz" GASNET_CONDUIT=smp  TERM=dumb   && nobs exe test/hello_gasnet.cpp
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Uncaught exception

Traceback (most recent call last):
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/tool_main.py", line 87, in main
    printed.wait()
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/async.py", line 447, in wait
    return me.wait_futurized().value()
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/async.py", line 751, in fire
    arg = gen_throw(arg.exception, None, arg.traceback)
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/memodb.py", line 458, in memo_execute
    yield result
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/async.py", line 751, in fire
    arg = gen_throw(arg.exception, None, arg.traceback)
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobsrule.py", line 513, in execute
    objs, libset = yield me.crawl()
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/async.py", line 751, in fire
    arg = gen_throw(arg.exception, None, arg.traceback)
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobsrule.py", line 492, in crawl
    yield fresh_src(main_src)
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/async.py", line 601, in fire1
    proxied = lam(arg_result)
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/memodb.py", line 540, in result
    return resultoid()
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/async.py", line 751, in fire
    arg = gen_throw(arg.exception, None, arg.traceback)
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/memodb.py", line 458, in memo_execute
    yield result
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/async.py", line 751, in fire
    arg = gen_throw(arg.exception, None, arg.traceback)
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobsrule.py", line 382, in execute
    comp_pp, src, ipt = yield me.get_comp_pp_and_src_and_ipt()
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/async.py", line 601, in fire1
    proxied = lam(arg_result)
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/memodb.py", line 540, in result
    return resultoid()
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/async.py", line 751, in fire
    arg = gen_throw(arg.exception, None, arg.traceback)
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobsrule.py", line 374, in get_comp_pp_and_src_and_ipt
    comp_pp = yield cxt.comp_lang_pp(src)
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/async.py", line 751, in fire
    arg = gen_throw(arg.exception, None, arg.traceback)
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobsrule.py", line 187, in comp_lang_pp
    libs = yield cxt.libraries(src)
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/async.py", line 751, in fire
    arg = gen_throw(arg.exception, None, arg.traceback)
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobsrule.py", line 288, in libraries
    maybe_gasnet = yield cxt.gasnet()
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/async.py", line 751, in fire
    arg = gen_throw(arg.exception, None, arg.traceback)
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/memodb.py", line 398, in memo_execute
    yield failure
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/async.py", line 751, in fire
    arg = gen_throw(arg.exception, None, arg.traceback)
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobsrule.py", line 841, in execute
    = yield me.get_config()
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/async.py", line 601, in fire1
    proxied = lam(arg_result)
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/memodb.py", line 523, in result
    resultoid, name, full = stuff.value()
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/async.py", line 601, in fire1
    proxied = lam(arg_result)
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/memodb.py", line 333, in result
    h_update(file_digest(apath))
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/memodb.py", line 270, in file_digest
    db_mtimes[apath] = mtime = get_mtime_smart(apath)
  File "/home/pcp1/bonachea/UPC/bex/dbg/upcxx/nobs/nobs/memodb.py", line 261, in get_mtime_smart
    mt = max(mt, os_path_getmtime(path))
NameError: global name 'os_path_getmtime' is not defined

Comments (6)

  1. Dan Bonachea reporter

    Note that in the error above the tarball path was actually a symlink to the real tarball, and that appears to be a contributing factor in the error.

    Things also break in confusing ways if localtarball is a relative path (eg GASNET=./gasnet.tar.gz)

  2. Dan Bonachea reporter
    • changed status to open

    Still fails when localtarball is a relative path:

    {lh ~/UPC/upcxx} git describe --always
    a928e49
    
    {lh ~/UPC/upcxx} env GASNET=./GASNet-2017.6.1.tar.gz nobs exe test/dist_object.cpp
    *** Something FAILED! ***
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Non-existent path for GASNET=./GASNet-2017.6.1.tar.gz
    
    {lh ~/UPC/upcxx} env GASNET=GASNet-2017.6.1.tar.gz nobs exe test/dist_object.cpp  
    Configuring GASNet...
    <works>
    
    {lh ~/UPC/upcxx} env GASNET=../bupcr-ex/dbg/gasnet/GASNet-2017.6.1.tar.gz nobs exe test/dist_object.cpp
    *** Something FAILED! ***
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Non-existent path for GASNET=../bupcr-ex/dbg/gasnet/GASNet-2017.6.1.tar.gz
    
    
    {lh ~/UPC/upcxx} env GASNET=/home/bonachea/UPC/bupcr-ex/dbg/gasnet/GASNet-2017.6.1.tar.gz nobs exe test/dist_object.cpp  
    Configuring GASNet...
    <works>
    
  3. Log in to comment