index.html

Report generated on 16-May-2020 at 21:14:36 by pytest-html v2.0.1

Environment

BITBUCKET_BUILD_NUMBER 134
BITBUCKET_CLONE_DIR /opt/atlassian/pipelines/agent/build
BITBUCKET_COMMIT 3ea8122d0b9e4764f80f6c02ab1c85ac1a6f8a3e
BITBUCKET_REPO_OWNER stefancountryman
BITBUCKET_REPO_OWNER_UUID {e97f2c46-17bd-4c19-9f75-a8048a1ef558}
BITBUCKET_REPO_SLUG multimessenger-pipeline
BITBUCKET_REPO_UUID {5314ffc6-3f72-4f8c-b3d6-6c65e25a0043}
BITBUCKET_TAG v3.5.1
CI true
Packages {'pytest': '5.3.2', 'py': '1.8.1', 'pluggy': '0.12.0'}
Platform Linux-4.19.95-flatcar-x86_64-with-debian-9.11
Plugins {'profiling': '1.7.0', 'html': '2.0.1', 'metadata': '1.8.0', 'cov': '2.8.1', 'astropy-header': '0.1.2', 'hypothesis': '5.1.1', 'doctestplus': '0.4.0', 'openfiles': '0.4.0', 'remotedata': '0.3.1', 'arraydiff': '0.3', 'celery': '4.4.0rc1'}
Python 3.7.5

Summary

61 tests ran in 33.45 seconds.

47 passed, 0 skipped, 14 failed, 0 errors, 0 expected failures, 0 unexpected passes

Results

Result Test Duration Links
Failed com/gracedb/__init__.py::llama.com.gracedb.GraceDb 0.00
272 renewal. The path to the new/renewed certificate **must** be the
273 same as for the old certificate.
274 reload_buffer (:obj:`int`, optional): buffer (in seconds) for reloading
275 a certificate in advance of its expiration. Only used if
276 ``reload_certificate`` is ``True``.
277
278 Examples:
279 Instantiate a client to use the production GraceDB server:
280
281 >>> g = GraceDb()
UNEXPECTED EXCEPTION: RuntimeError('No authentication credentials found.')
Traceback (most recent call last):

File "/opt/anaconda/lib/python3.7/doctest.py", line 1329, in __run
compileflags, 1), test.globs)

File "<doctest llama.com.gracedb.GraceDb[0]>", line 1, in <module>

File "/opt/anaconda/lib/python3.7/site-packages/llama/com/gracedb/__init__.py", line 258, in __init__
super().__init__(*args, fail_if_noauth=fail_if_noauth, **kwargs)

File "/opt/anaconda/lib/python3.7/site-packages/ligo/gracedb/rest.py", line 663, in __init__
reload_certificate=reload_certificate, reload_buffer=reload_buffer

File "/opt/anaconda/lib/python3.7/site-packages/ligo/gracedb/rest.py", line 203, in __init__
raise RuntimeError('No authentication credentials found.')

RuntimeError: No authentication credentials found.

/opt/anaconda/lib/python3.7/site-packages/llama/com/gracedb/__init__.py:281: UnexpectedException
Failed dev/upload/__init__.py::llama.dev.upload.upload_and_get_manifest 0.23
094 directory to confirm that you have access rights.
095
096 >>> # coding: utf-8
097 >>> import os
098 >>> from llama.dev.upload import upload_and_get_manifest
099 >>> from tempfile import TemporaryDirectory
100 >>> from pathlib import Path
101 >>> from requests import get
102 >>> from hashlib import sha256
103 >>> with TemporaryDirectory() as tmpdirpath:
UNEXPECTED EXCEPTION: S3UploadFailedError('Failed to upload /tmp/tmpmqypybo2/foo to test/llama/dev/upload/fcde2b2edba56bf408601fb721fe9b5c338d10ee429ea04fae5511b68fbf8fb9: An error occurred (NoSuchBucket) when calling the PutObject operation: Unknown')
Traceback (most recent call last):

File "/opt/anaconda/lib/python3.7/site-packages/boto3/s3/transfer.py", line 279, in upload_file
future.result()

File "/opt/anaconda/lib/python3.7/site-packages/s3transfer/futures.py", line 73, in result
return self._coordinator.result()

File "/opt/anaconda/lib/python3.7/site-packages/s3transfer/futures.py", line 233, in result
raise self._exception

File "/opt/anaconda/lib/python3.7/site-packages/s3transfer/tasks.py", line 126, in __call__
return self._execute_main(kwargs)

File "/opt/anaconda/lib/python3.7/site-packages/s3transfer/tasks.py", line 150, in _execute_main
return_value = self._main(**kwargs)

File "/opt/anaconda/lib/python3.7/site-packages/s3transfer/upload.py", line 692, in _main
client.put_object(Bucket=bucket, Key=key, Body=body, **extra_args)

File "/opt/anaconda/lib/python3.7/site-packages/botocore/client.py", line 324, in _api_call
return self._make_api_call(operation_name, kwargs)

File "/opt/anaconda/lib/python3.7/site-packages/botocore/client.py", line 622, in _make_api_call
raise error_class(parsed_response, operation_name)

botocore.errorfactory.NoSuchBucket: An error occurred (NoSuchBucket) when calling the PutObject operation: Unknown


During handling of the above exception, another exception occurred:


Traceback (most recent call last):

File "/opt/anaconda/lib/python3.7/doctest.py", line 1329, in __run
compileflags, 1), test.globs)

File "<doctest llama.dev.upload.upload_and_get_manifest[6]>", line 9, in <module>

File "/opt/anaconda/lib/python3.7/site-packages/llama/dev/upload/__init__.py", line 142, in upload_and_get_manifest
**kwargs)

File "/opt/anaconda/lib/python3.7/site-packages/llama/com/s3/__init__.py", line 143, in upload_file
client.upload_file(filename, bucket, key)

File "/opt/anaconda/lib/python3.7/site-packages/boto3/s3/inject.py", line 110, in upload_file
extra_args=ExtraArgs, callback=Callback)

File "/opt/anaconda/lib/python3.7/site-packages/boto3/s3/transfer.py", line 287, in upload_file
filename, '/'.join([bucket, key]), e))

boto3.exceptions.S3UploadFailedError: Failed to upload /tmp/tmpmqypybo2/foo to test/llama/dev/upload/fcde2b2edba56bf408601fb721fe9b5c338d10ee429ea04fae5511b68fbf8fb9: An error occurred (NoSuchBucket) when calling the PutObject operation: Unknown

/opt/anaconda/lib/python3.7/site-packages/llama/dev/upload/__init__.py:103: UnexpectedException
Failed files/lvc_skymap/utils.py::llama.files.lvc_skymap.utils.SkymapFilename.canonicalize 0.00
126 ``ligo.gracedb.rest.HTTPError`` if a GraceDB query fails to connect.
127
128 For this event, a second version (v1) of ``bayestar.fits`` was created
129 at 2019-05-10 04:03:40 UTC; canonicalizing at an earlier date should
130 return v0 (the original) while a later date should return v1 (the
131 update):
132
133 >>> from dateutil.parser import parse
134 >>> skymap = SkymapFilename("bayestar.fits")
135 >>> skymap.canonicalize("S190510g", parse("2019-05-10 04:03:30 UTC"))
UNEXPECTED EXCEPTION: RuntimeError('No authentication credentials found.')
Traceback (most recent call last):

File "/opt/anaconda/lib/python3.7/doctest.py", line 1329, in __run
compileflags, 1), test.globs)

File "<doctest llama.files.lvc_skymap.utils.SkymapFilename.canonicalize[2]>", line 1, in <module>

File "/opt/anaconda/lib/python3.7/site-packages/llama/files/lvc_skymap/utils.py", line 160, in canonicalize
logs = GraceDb().logs(graceid).json()['log']

File "/opt/anaconda/lib/python3.7/site-packages/llama/com/gracedb/__init__.py", line 258, in __init__
super().__init__(*args, fail_if_noauth=fail_if_noauth, **kwargs)

File "/opt/anaconda/lib/python3.7/site-packages/ligo/gracedb/rest.py", line 663, in __init__
reload_certificate=reload_certificate, reload_buffer=reload_buffer

File "/opt/anaconda/lib/python3.7/site-packages/ligo/gracedb/rest.py", line 203, in __init__
raise RuntimeError('No authentication credentials found.')

RuntimeError: No authentication credentials found.

/opt/anaconda/lib/python3.7/site-packages/llama/files/lvc_skymap/utils.py:135: UnexpectedException
Failed test/test_bin.py::TestS190412mSkymapInfoCliTest::test 0.03
self = <llama.test.test_bin.TestS190412mSkymapInfoCliTest object at 0x7f47348c6150>

def test(self):
"""Run this test with ``execute`` and then check whether outputs are as
expected with ``compare``."""
with tempfile.TemporaryDirectory() as tmpdir:
print("CREATED TMPDIR FOR ", self.EVENTID, ": ", tmpdir)
self.run = Run(tmpdir)
print("SET self.run for ", self, " TO ", self.run)
self.provision()
print("PROVISIONED TMPDIR FOR ", self.EVENTID, ", CONTENTS: ",
os.listdir(tmpdir))
> self.execute()

/opt/anaconda/lib/python3.7/site-packages/llama/test/classes.py:135:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/opt/anaconda/lib/python3.7/site-packages/llama/test/test_bin.py:175: in execute
run_on_args(cliargs=cmd)
/opt/anaconda/lib/python3.7/site-packages/llama/files/skymap_info/__main__.py:105: in run_on_args
args.skymap)
/opt/anaconda/lib/python3.7/site-packages/llama/files/skymap_info/__init__.py:134: in generate_from_gracedb_superevent
superevent = GraceDb().superevent(graceid).json()
/opt/anaconda/lib/python3.7/site-packages/llama/com/gracedb/__init__.py:258: in __init__
super().__init__(*args, fail_if_noauth=fail_if_noauth, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/ligo/gracedb/rest.py:663: in __init__
reload_certificate=reload_certificate, reload_buffer=reload_buffer
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <llama.com.gracedb.GraceDb object at 0x7f4747f086d0>
url = 'https://gracedb.ligo.org/api/', proxy_host = None, proxy_port = 3128
cred = None, username = None, password = None, force_noauth = False
fail_if_noauth = True, reload_certificate = False, reload_buffer = 300

def __init__(self, url=DEFAULT_SERVICE_URL, proxy_host=None,
proxy_port=3128, cred=None, username=None, password=None,
force_noauth=False, fail_if_noauth=False,
reload_certificate=False, reload_buffer=300):
"""
url (:obj:`str`, optional): URL of server API
proxy_host (:obj:`str`, optional): proxy host
proxy_port (:obj:`str`, optional): proxy port
cred (:obj:`tuple` or :obj:`str, optional): a tuple or list of
(``/path/to/cert/file``, ``/path/to/key/file) or a single path to
a combined proxy file (if using an X.509 certificate for
authentication)
username (:obj:`str`, optional): username for basic auth
password (:obj:`str`, optional): password for basic auth
force_noauth (:obj:`bool`, optional): set to True if you want to skip
credential lookup and use this client as an unauthenticated user
fail_if_noauth (:obj:`bool`, optional): set to True if you want the
constructor to fail if no authentication credentials are provided
or found
reload_certificate (:obj:`bool`, optional): if ``True``, your
certificate will be checked before each request whether it is
within ``reload_buffer`` seconds of expiration, and if so, it will
be reloaded. Useful for processes which may live longer than the
certificate lifetime and have an automated method for certificate
renewal. The path to the new/renewed certificate **must** be the
same as for the old certificate.
reload_buffer (:obj:`int`, optional): buffer (in seconds) for reloading
a certificate in advance of its expiration. Only used if
``reload_certificate`` is ``True``.

Authentication details:
You can:
1. Provide a path to an X.509 certificate and key or a single
combined proxy file
2. Provide a username and password
Or:
The code will look for a certificate in a default location
(``/tmp/x509up_u%d``, where ``%d`` is your user ID)
The code will look for a username and password for the specified
server in ``$HOME/.netrc``
"""
# Process service URL
o = urlparse(url)
host = o.hostname
port = o.port or 443

# Store some of this information
self._server_host = host
self._server_port = port
self._proxy_host = proxy_host
self._proxy_port = proxy_port
self._reload_certificate = reload_certificate
self._reload_buffer = reload_buffer

# Store information about credentials and authentication type
self.credentials = {}
self.auth_type = None

# Fail if conflicting arguments: (fail if no auth, but force no auth)
if fail_if_noauth and force_noauth:
err_msg = ('You have provided conflicting parameters to the '
'client constructor: fail_if_noauth=True and '
'force_noauth=True.')
raise ValueError(err_msg)

# Try to get user-provided credentials, if we aren't forcing
# no authentication
if not force_noauth:
credentials_provided = self._process_credentials(
cred, username, password)

# If the user didn't provide credentials in the constructor,
# we try to look up the credentials
if not force_noauth and not credentials_provided:
# Look for X509 certificate and key
cred = self._find_x509_credentials()
if cred:
self.credentials['cert_file'], self.credentials['key_file'] = \
cred
self.auth_type = 'x509'
else:
# Look for basic auth credentials in .netrc file
try:
basic_auth_tuple = safe_netrc().authenticators(host)
except IOError:
# IOError = no .netrc file found, pass
pass
else:
# If credentials were found for host, set them up!
if basic_auth_tuple is not None:
self.credentials['username'] = basic_auth_tuple[0]
self.credentials['password'] = basic_auth_tuple[2]
self.auth_type = 'basic'

if (fail_if_noauth and not self.credentials):
> raise RuntimeError('No authentication credentials found.')
E RuntimeError: No authentication credentials found.

/opt/anaconda/lib/python3.7/site-packages/ligo/gracedb/rest.py:203: RuntimeError
------------------------------Captured stdout call------------------------------
CREATED TMPDIR FOR S190412m : /tmp/tmpmoe61ew7 SET self.run for <llama.test.test_bin.TestS190412mSkymapInfoCliTest object at 0x7f47348c6150> TO Run(rundir="/tmp/tmpmoe61ew7", pipeline="Pipeline(<['Advok', 'CoincScatterI3LvcPdf', 'CoincScatterI3LvcPng', 'CoincScatterZtfI3LvcPdf', 'CoincScatterZtfI3LvcPng', 'CoincScatterZtfLVCPdf', 'CoincScatterZtfLVCPng', 'CoincSignificanceI3Lvc', 'CoincSignificanceSubthresholdI3Lvc', 'CoincSummaryI3LvcPdf', 'CoincSummaryI3LvcTex', 'FermiGRBsJSON', 'IceCubeNeutrinoList', 'IceCubeNeutrinoListCoincTxt', 'IceCubeNeutrinoListTex', 'IceCubeNeutrinoListTxt', 'LVAlertAdvok', 'LVAlertJSON', 'LVCGraceDbEventData', 'LvcDistancesJson', 'LvcGcnXml', 'LvcRetractionXml', 'LvcSkymapFits', 'LvcSkymapHdf5', 'PAstro', 'RctSlkI3CoincSummaryI3LvcPdf', 'RctSlkLmaCoincScatterI3LvcPdf', 'RctSlkLmaCoincScatterI3LvcPng', 'RctSlkLmaCoincScatterZtfI3LvcPdf', 'RctSlkLmaCoincScatterZtfI3LvcPng', 'RctSlkLmaCoincScatterZtfLVCPdf', 'RctSlkLmaCoincScatterZtfLVCPng', 'RctSlkLmaCoincSignificanceI3Lvc', 'RctSlkLmaCoincSignificanceSubthresholdI3Lvc', 'RctSlkLmaCoincSummaryI3LvcPdf', 'RctSlkLmaLVAlertJSON', 'RctSlkLmaLVCGraceDbEventData', 'RctSlkLmaLvcDistancesJson', 'RctSlkLmaLvcGcnXml', 'RctSlkLmaLvcRetractionXml', 'RctSlkLmaSkymapInfo', 'SkymapInfo', 'ZtfTriggerList']>)") PROVISIONED TMPDIR FOR S190412m , CONTENTS: []
Failed test/test_bin.py::TestS190412mSkymapInfoCliPublic::test 0.03
self = <llama.test.test_bin.TestS190412mSkymapInfoCliPublic object at 0x7f47348c6b10>

def test(self):
"""Run this test with ``execute`` and then check whether outputs are as
expected with ``compare``."""
with tempfile.TemporaryDirectory() as tmpdir:
print("CREATED TMPDIR FOR ", self.EVENTID, ": ", tmpdir)
self.run = Run(tmpdir)
print("SET self.run for ", self, " TO ", self.run)
self.provision()
print("PROVISIONED TMPDIR FOR ", self.EVENTID, ", CONTENTS: ",
os.listdir(tmpdir))
> self.execute()

/opt/anaconda/lib/python3.7/site-packages/llama/test/classes.py:135:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/opt/anaconda/lib/python3.7/site-packages/llama/test/test_bin.py:175: in execute
run_on_args(cliargs=cmd)
/opt/anaconda/lib/python3.7/site-packages/llama/files/skymap_info/__main__.py:105: in run_on_args
args.skymap)
/opt/anaconda/lib/python3.7/site-packages/llama/files/skymap_info/__init__.py:134: in generate_from_gracedb_superevent
superevent = GraceDb().superevent(graceid).json()
/opt/anaconda/lib/python3.7/site-packages/llama/com/gracedb/__init__.py:258: in __init__
super().__init__(*args, fail_if_noauth=fail_if_noauth, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/ligo/gracedb/rest.py:663: in __init__
reload_certificate=reload_certificate, reload_buffer=reload_buffer
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <llama.com.gracedb.GraceDb object at 0x7f47348eb350>
url = 'https://gracedb.ligo.org/api/', proxy_host = None, proxy_port = 3128
cred = None, username = None, password = None, force_noauth = False
fail_if_noauth = True, reload_certificate = False, reload_buffer = 300

def __init__(self, url=DEFAULT_SERVICE_URL, proxy_host=None,
proxy_port=3128, cred=None, username=None, password=None,
force_noauth=False, fail_if_noauth=False,
reload_certificate=False, reload_buffer=300):
"""
url (:obj:`str`, optional): URL of server API
proxy_host (:obj:`str`, optional): proxy host
proxy_port (:obj:`str`, optional): proxy port
cred (:obj:`tuple` or :obj:`str, optional): a tuple or list of
(``/path/to/cert/file``, ``/path/to/key/file) or a single path to
a combined proxy file (if using an X.509 certificate for
authentication)
username (:obj:`str`, optional): username for basic auth
password (:obj:`str`, optional): password for basic auth
force_noauth (:obj:`bool`, optional): set to True if you want to skip
credential lookup and use this client as an unauthenticated user
fail_if_noauth (:obj:`bool`, optional): set to True if you want the
constructor to fail if no authentication credentials are provided
or found
reload_certificate (:obj:`bool`, optional): if ``True``, your
certificate will be checked before each request whether it is
within ``reload_buffer`` seconds of expiration, and if so, it will
be reloaded. Useful for processes which may live longer than the
certificate lifetime and have an automated method for certificate
renewal. The path to the new/renewed certificate **must** be the
same as for the old certificate.
reload_buffer (:obj:`int`, optional): buffer (in seconds) for reloading
a certificate in advance of its expiration. Only used if
``reload_certificate`` is ``True``.

Authentication details:
You can:
1. Provide a path to an X.509 certificate and key or a single
combined proxy file
2. Provide a username and password
Or:
The code will look for a certificate in a default location
(``/tmp/x509up_u%d``, where ``%d`` is your user ID)
The code will look for a username and password for the specified
server in ``$HOME/.netrc``
"""
# Process service URL
o = urlparse(url)
host = o.hostname
port = o.port or 443

# Store some of this information
self._server_host = host
self._server_port = port
self._proxy_host = proxy_host
self._proxy_port = proxy_port
self._reload_certificate = reload_certificate
self._reload_buffer = reload_buffer

# Store information about credentials and authentication type
self.credentials = {}
self.auth_type = None

# Fail if conflicting arguments: (fail if no auth, but force no auth)
if fail_if_noauth and force_noauth:
err_msg = ('You have provided conflicting parameters to the '
'client constructor: fail_if_noauth=True and '
'force_noauth=True.')
raise ValueError(err_msg)

# Try to get user-provided credentials, if we aren't forcing
# no authentication
if not force_noauth:
credentials_provided = self._process_credentials(
cred, username, password)

# If the user didn't provide credentials in the constructor,
# we try to look up the credentials
if not force_noauth and not credentials_provided:
# Look for X509 certificate and key
cred = self._find_x509_credentials()
if cred:
self.credentials['cert_file'], self.credentials['key_file'] = \
cred
self.auth_type = 'x509'
else:
# Look for basic auth credentials in .netrc file
try:
basic_auth_tuple = safe_netrc().authenticators(host)
except IOError:
# IOError = no .netrc file found, pass
pass
else:
# If credentials were found for host, set them up!
if basic_auth_tuple is not None:
self.credentials['username'] = basic_auth_tuple[0]
self.credentials['password'] = basic_auth_tuple[2]
self.auth_type = 'basic'

if (fail_if_noauth and not self.credentials):
> raise RuntimeError('No authentication credentials found.')
E RuntimeError: No authentication credentials found.

/opt/anaconda/lib/python3.7/site-packages/ligo/gracedb/rest.py:203: RuntimeError
------------------------------Captured stdout call------------------------------
CREATED TMPDIR FOR S190412m : /tmp/tmpkai_54gf SET self.run for <llama.test.test_bin.TestS190412mSkymapInfoCliPublic object at 0x7f47348c6b10> TO Run(rundir="/tmp/tmpkai_54gf", pipeline="Pipeline(<['Advok', 'CoincScatterI3LvcPdf', 'CoincScatterI3LvcPng', 'CoincScatterZtfI3LvcPdf', 'CoincScatterZtfI3LvcPng', 'CoincScatterZtfLVCPdf', 'CoincScatterZtfLVCPng', 'CoincSignificanceI3Lvc', 'CoincSignificanceSubthresholdI3Lvc', 'CoincSummaryI3LvcPdf', 'CoincSummaryI3LvcTex', 'FermiGRBsJSON', 'IceCubeNeutrinoList', 'IceCubeNeutrinoListCoincTxt', 'IceCubeNeutrinoListTex', 'IceCubeNeutrinoListTxt', 'LVAlertAdvok', 'LVAlertJSON', 'LVCGraceDbEventData', 'LvcDistancesJson', 'LvcGcnXml', 'LvcRetractionXml', 'LvcSkymapFits', 'LvcSkymapHdf5', 'PAstro', 'RctSlkI3CoincSummaryI3LvcPdf', 'RctSlkLmaCoincScatterI3LvcPdf', 'RctSlkLmaCoincScatterI3LvcPng', 'RctSlkLmaCoincScatterZtfI3LvcPdf', 'RctSlkLmaCoincScatterZtfI3LvcPng', 'RctSlkLmaCoincScatterZtfLVCPdf', 'RctSlkLmaCoincScatterZtfLVCPng', 'RctSlkLmaCoincSignificanceI3Lvc', 'RctSlkLmaCoincSignificanceSubthresholdI3Lvc', 'RctSlkLmaCoincSummaryI3LvcPdf', 'RctSlkLmaLVAlertJSON', 'RctSlkLmaLVCGraceDbEventData', 'RctSlkLmaLvcDistancesJson', 'RctSlkLmaLvcGcnXml', 'RctSlkLmaLvcRetractionXml', 'RctSlkLmaSkymapInfo', 'SkymapInfo', 'ZtfTriggerList']>)") PROVISIONED TMPDIR FOR S190412m , CONTENTS: []
Failed test/test_filehandler.py::TestObsolescenceAndLocking::test 0.14
self = <llama.test.test_filehandler.TestObsolescenceAndLocking object at 0x7f4737fd6b10>

def test(self):
"""Run the ``main`` test after having set everything up in a temporary
test directory."""
with tempfile.TemporaryDirectory() as tmpdir:
self.rundir = tmpdir
event = self.event
event.init()
event.files.MockFh1.generate()
event.files.update()
> assert all(f.exists() for f in event.files.values())
E assert False
E + where False = all(<generator object AbstractTestObsolescence.test.<locals>.<genexpr> at 0x7f47348fc050>)

/opt/anaconda/lib/python3.7/site-packages/llama/test/test_filehandler.py:104: AssertionError
Failed test/test_filehandler.py::TestGenerationOrder::test 0.13
self = <llama.test.test_filehandler.TestGenerationOrder object at 0x7f47348f68d0>

def test(self):
"""Run the ``main`` test after having set everything up in a temporary
test directory."""
with tempfile.TemporaryDirectory() as tmpdir:
self.rundir = tmpdir
event = self.event
event.init()
event.files.MockFh1.generate()
> event.files.update()

/opt/anaconda/lib/python3.7/site-packages/llama/test/test_filehandler.py:103:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py:693: in update
return get_io('file').generate.submit(regenlist)
/opt/anaconda/lib/python3.7/site-packages/llama/io/default/generate.py:52: in submit
for fh in graph.values())
/opt/anaconda/lib/python3.7/site-packages/llama/io/default/generate.py:52: in <genexpr>
for fh in graph.values())
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

args = [], kwargs = {}
self = <concurrent.futures.process.ProcessPoolExecutor object at 0x7f4734860d10>
fn = <bound method FileHandler.generate of MockFh2(eventid="obsolescence", rundir="/tmp/tmp2vru21mf")>

def submit(*args, **kwargs):
if len(args) >= 2:
self, fn, *args = args
elif not args:
raise TypeError("descriptor 'submit' of 'ProcessPoolExecutor' object "
"needs an argument")
elif 'fn' in kwargs:
fn = kwargs.pop('fn')
self, *args = args
else:
raise TypeError('submit expected at least 1 positional argument, '
'got %d' % (len(args)-1))

with self._shutdown_lock:
if self._broken:
> raise BrokenProcessPool(self._broken)
E concurrent.futures.process.BrokenProcessPool: A child process terminated abruptly, the process pool is not usable anymore

/opt/anaconda/lib/python3.7/concurrent/futures/process.py:625: BrokenProcessPool
------------------------------Captured stderr call------------------------------
Process ForkProcess-3: Traceback (most recent call last): File "/opt/anaconda/lib/python3.7/multiprocessing/process.py", line 297, in _bootstrap self.run() File "/opt/anaconda/lib/python3.7/multiprocessing/process.py", line 99, in run self._target(*self._args, **self._kwargs) File "/opt/anaconda/lib/python3.7/concurrent/futures/process.py", line 233, in _process_worker call_item = call_queue.get(block=True) File "/opt/anaconda/lib/python3.7/multiprocessing/queues.py", line 113, in get return _ForkingPickler.loads(res) File "/opt/anaconda/lib/python3.7/site-packages/llama/classes.py", line 240, in __new__ raise ValueError(f'rundir must exist. rundir specified: {rundir}') ValueError: rundir must exist. rundir specified: /tmp/tmpvez7hzdi
Failed test/test_utils.py::test_memoize 0.00
def test_memoize():
"""Test in-memory ``memoize`` on a function."""
> memoize_func_helper()

/opt/anaconda/lib/python3.7/site-packages/llama/test/test_utils.py:100:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/opt/anaconda/lib/python3.7/site-packages/llama/test/test_utils.py:91: in memoize_func_helper
assert func(*arguments) == results[i]
/opt/anaconda/lib/python3.7/site-packages/llama/test/test_utils.py:81: in func
return bare_func(*args)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

args = ('bar',), kwargs = {}, @py_assert0 = False, @py_format2 = 'assert False'

def called_once(*args, **kwargs): # pylint: disable=unused-argument
"""This function can only be called once, or else it fails."""
> assert has_not_been_called[0]
E assert False

/opt/anaconda/lib/python3.7/site-packages/llama/test/test_utils.py:38: AssertionError
Failed test/test_utils.py::test_memoize_class 0.00
def test_memoize_class():
"""Test ``utils.memoize`` for classes."""
# pick a few different return values
result_collections = [(), (3,), (3, 4)]
results = [None, 3, (3, 4)]
# pick a few different possible (hashable!) inputs
arg_collections = [(), ('age',), (4, 'foo', ('a', 'tuple'))]
for i, returnvals in enumerate(result_collections):
for arguments in arg_collections:
instance_method = memoize_helper(*returnvals)
class_method = memoize_helper(*returnvals)
property_method = memoize_helper(*returnvals)

class CallOnce(object):
"""This class has methods that can only be called once."""

@utils.memoize(method=True)
def meth(self, *args):
"""Test whether instance methods are memoizeable."""
# we are immediately using this class within this loop, so
# we don't need to worry about ``instance_methods`` (or the
# others) referring to a changing variable. For details,
# see: stackoverflow.com/questions/25314547
# pylint: disable=cell-var-from-loop
return instance_method(self, *args)

@classmethod
@utils.memoize(method=True)
def clas(cls, *args):
"""Test whether classmethods are memoizeable."""
# pylint: disable=cell-var-from-loop
return class_method(cls, *args)

@property
@utils.memoize(method=True)
def prop(self):
"""Test whether properties are memoizeable."""
# pylint: disable=cell-var-from-loop
return property_method(self)

instance = CallOnce()

# we should be able to call the below methods once to cache them...
assert instance.meth(*arguments) == results[i]
assert instance.clas(*arguments) == results[i]
assert instance.prop == results[i]

# then we can assert that the functions they rely on will raise
# exceptions if called again...
with pytest.raises(AssertionError):
instance_method(instance, *arguments)
with pytest.raises(AssertionError):
class_method(CallOnce, *arguments)
with pytest.raises(AssertionError):
property_method(instance)

# but due to caching, we should still get the same return values as
# before when using the @memoize methods.
> assert instance.meth(*arguments) == results[i]

/opt/anaconda/lib/python3.7/site-packages/llama/test/test_utils.py:173:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/opt/anaconda/lib/python3.7/site-packages/llama/test/test_utils.py:139: in meth
return instance_method(self, *args)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

args = (<llama.test.test_utils.test_memoize_class.<locals>.CallOnce object at 0x7f47346513d0>,)
kwargs = {}, @py_assert0 = False, @py_format2 = 'assert False'

def called_once(*args, **kwargs): # pylint: disable=unused-argument
"""This function can only be called once, or else it fails."""
> assert has_not_been_called[0]
E assert False

/opt/anaconda/lib/python3.7/site-packages/llama/test/test_utils.py:38: AssertionError
Failed test/test_listeners/test_gcn.py::TestLlamaHandlerMS181101ab::test 0.09
self = <llama.test.test_listeners.test_gcn.TestLlamaHandlerMS181101ab object at 0x7f4734650b10>

def test(self):
with tempfile.TemporaryDirectory() as tmpdir:
self.gcn_archive = tmpdir
# if you run the test at midnight, the files might be different
# based on the date switch, so look for files in both places in
# case the date switches in the middle of the test
start = datetime.utcnow()
> super().test()

/opt/anaconda/lib/python3.7/site-packages/llama/test/test_listeners/test_gcn.py:82:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/opt/anaconda/lib/python3.7/site-packages/llama/test/classes.py:135: in test
self.execute()
/opt/anaconda/lib/python3.7/site-packages/llama/test/test_listeners/test_gcn.py:73: in execute
run_on_voevent_file(files=filehandler.fullpath, handler=self.handler)
/opt/anaconda/lib/python3.7/site-packages/llama/listen/gcn/__init__.py:313: in run_on_voevent_file
handler(payload, fromstring(payload))
/opt/anaconda/lib/python3.7/site-packages/llama/listen/gcn/__init__.py:187: in __call__
handler(payload, root)
/opt/anaconda/lib/python3.7/site-packages/gcn/handlers.py:51: in handle
handler(payload, root)
/opt/anaconda/lib/python3.7/site-packages/llama/listen/gcn/__init__.py:220: in handle
handle_gcn(payload, root)
/opt/anaconda/lib/python3.7/site-packages/gcn/handlers.py:51: in handle
handler(payload, root)
/opt/anaconda/lib/python3.7/site-packages/llama/listen/gcn/__init__.py:102: in handle_lvc_gcn
voe.generate(payload)
/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py:1523: in generate
return self.checkin(self.checkout().generate_unsafe())
/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py:1348: in wrapper
return func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/intent.py:429: in wrapper
return func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/versioning.py:574: in wrapper
result = func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/intent.py:350: in wrapper
res = func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/vetoes.py:393: in wrapper
return func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/meta.py:184: in wrapper
result = func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py:1389: in checkin
raise gen_result.err
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = LvcGcnXml(eventid="MS181101ab-2-Initial", rundir="/tmp/tmprm2i74xd/MS181101ab-2-Initial/.tmp.d/LvcGcnXml-kz909uqu", parent="LvcGcnXml(eventid="MS181101ab-2-Initial", rundir="/tmp/tmprm2i74xd")")
args = (), kwargs = {}

@_generate_cleanup.__func__
@VetoMixin.decorate_generate
@MetaDataMixin.decorate_generate
def generate_unsafe(self, *args, **kwargs):
"""
Generate this file without performing any of the usual ``checkout`` and
``checkin`` procedures; no cleanup will happen if file generation
fails. You **almost certainly** want to call ``generate`` instead, or
if you need to execute more than a single step of the pipeline,
``FileGraph.update`` with an appropriate downselection.

Returns
-------
gen_result : GenerationResult
A ``GenerationResult`` containing any errors raised during any part
of file generation.
"""
if list(self.DEPENDENCIES) and (not self.are_dependencies_met()):
LOGGER.error("%s has unmet dependencies; cannot generate yet.",
self)
raise GenerationError(f"Unmet dependencies for {self}.")
# close all figure windows to conserve memory
if 'matplotlib.pyplot' in sys.modules:
sys.modules['matplotlib.pyplot'].close('all')
try:
LOGGER.info(COL.BLUE + COL.BOLD + "Generating " +
str(self) + COL.CLEAR)
# invalidate obsolescence caches for all files (robust
# against code changes that change obsolescence
# definitions) TODO remove this obsolescence caching crap
self.lock.remove_all_obsolescence()
> self._generate()
E TypeError: _generate() missing 1 required positional argument: 'payload'

/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py:1496: TypeError
------------------------------Captured stdout call------------------------------
CREATED TMPDIR FOR MS181101ab-2-Initial : /tmp/tmprm2i74xd SET self.run for <llama.test.test_listeners.test_gcn.TestLlamaHandlerMS181101ab object at 0x7f4734650b10> TO Run(rundir="/tmp/tmprm2i74xd", pipeline="Pipeline(<['Advok', 'CoincScatterI3LvcPdf', 'CoincScatterI3LvcPng', 'CoincScatterZtfI3LvcPdf', 'CoincScatterZtfI3LvcPng', 'CoincScatterZtfLVCPdf', 'CoincScatterZtfLVCPng', 'CoincSignificanceI3Lvc', 'CoincSignificanceSubthresholdI3Lvc', 'CoincSummaryI3LvcPdf', 'CoincSummaryI3LvcTex', 'FermiGRBsJSON', 'IceCubeNeutrinoList', 'IceCubeNeutrinoListCoincTxt', 'IceCubeNeutrinoListTex', 'IceCubeNeutrinoListTxt', 'LVAlertAdvok', 'LVAlertJSON', 'LVCGraceDbEventData', 'LvcDistancesJson', 'LvcGcnXml', 'LvcRetractionXml', 'LvcSkymapFits', 'LvcSkymapHdf5', 'PAstro', 'RctSlkI3CoincSummaryI3LvcPdf', 'RctSlkLmaCoincScatterI3LvcPdf', 'RctSlkLmaCoincScatterI3LvcPng', 'RctSlkLmaCoincScatterZtfI3LvcPdf', 'RctSlkLmaCoincScatterZtfI3LvcPng', 'RctSlkLmaCoincScatterZtfLVCPdf', 'RctSlkLmaCoincScatterZtfLVCPng', 'RctSlkLmaCoincSignificanceI3Lvc', 'RctSlkLmaCoincSignificanceSubthresholdI3Lvc', 'RctSlkLmaCoincSummaryI3LvcPdf', 'RctSlkLmaLVAlertJSON', 'RctSlkLmaLVCGraceDbEventData', 'RctSlkLmaLvcDistancesJson', 'RctSlkLmaLvcGcnXml', 'RctSlkLmaLvcRetractionXml', 'RctSlkLmaSkymapInfo', 'SkymapInfo', 'ZtfTriggerList']>)") PROVISIONED TMPDIR FOR MS181101ab-2-Initial , CONTENTS: []
-------------------------------Captured log call--------------------------------
INFO llama.listen.gcn:__init__.py:309 Running LlamaHandlers(rundir='/tmp/tmprm2i74xd', gcn_archive='/tmp/tmpag3x_sre', manually_included=None) handler on /root/.local/share/llama/inputs/tests/event_files/MS181101ab-2-Initial/lvc_gcn.xml. INFO llama.listen.gcn:__init__.py:183 NEW PAYLOAD. IVORN: ivo://gwnet/LVC#MS181101ab-2-Initial INFO llama.listen.gcn:__init__.py:186 Running handler: handle_archive from llama.listen.gcn INFO llama.listen.gcn:__init__.py:252 Running handle_archive on gcn archive directory /tmp/tmpag3x_sre DEBUG llama.listen.gcn:__init__.py:262 Received GCN notice: ivo://gwnet/LVC#MS181101ab-2-Initial INFO llama.listen.gcn:__init__.py:272 Selected outpath /tmp/tmpag3x_sre/2020-05/16/ivo%3A%2F%2Fgwnet%2FLVC%23MS181101ab-2-Initial INFO llama.listen.gcn:__init__.py:279 archived ivo://gwnet/LVC#MS181101ab-2-Initial INFO llama.listen.gcn:__init__.py:186 Running handler: handle from llama.listen.gcn INFO llama.listen.gcn:__init__.py:77 Running ``handle_lvc_gcn`` on rundir /tmp/tmprm2i74xd with handler LvcGcnXml INFO llama.listen.gcn:__init__.py:83 2020-05-16 21:14:25.565949: superid: MS181101ab INFO llama.listen.gcn:__init__.py:83 2020-05-16 21:14:25.566054: alerttype: Initial INFO llama.listen.gcn:__init__.py:99 Event does not exist, initializing MS181101ab-2-Initial WARNING llama.filehandler:__init__.py:1507 Wrapping exception raised while generating LvcGcnXml(eventid="MS181101ab-2-Initial", rundir="/tmp/tmprm2i74xd/MS181101ab-2-Initial/.tmp.d/LvcGcnXml-kz909uqu", parent="LvcGcnXml(eventid="MS181101ab-2-Initial", rundir="/tmp/tmprm2i74xd")"): TypeError("_generate() missing 1 required positional argument: 'payload'") ERROR llama.filehandler:__init__.py:1388 Exception while generating LvcGcnXml(eventid="MS181101ab-2-Initial", rundir="/tmp/tmprm2i74xd"): GenerationResult(fh=LvcGcnXml(eventid="MS181101ab-2-Initial", rundir="/tmp/tmprm2i74xd/MS181101ab-2-Initial/.tmp.d/LvcGcnXml-kz909uqu", parent="LvcGcnXml(eventid="MS181101ab-2-Initial", rundir="/tmp/tmprm2i74xd")"), err=TypeError("_generate() missing 1 required positional argument: 'payload'")) ERROR llama.versioning:versioning.py:576 Rolling back to last commit. ERROR llama.versioning:versioning.py:578 Rolled back.
Failed test/test_listeners/test_gcn.py::TestLlamaHandlerS190425z::test 0.08
self = <llama.test.test_listeners.test_gcn.TestLlamaHandlerS190425z object at 0x7f4734843d90>

def test(self):
with tempfile.TemporaryDirectory() as tmpdir:
self.gcn_archive = tmpdir
# if you run the test at midnight, the files might be different
# based on the date switch, so look for files in both places in
# case the date switches in the middle of the test
start = datetime.utcnow()
> super().test()

/opt/anaconda/lib/python3.7/site-packages/llama/test/test_listeners/test_gcn.py:82:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/opt/anaconda/lib/python3.7/site-packages/llama/test/classes.py:135: in test
self.execute()
/opt/anaconda/lib/python3.7/site-packages/llama/test/test_listeners/test_gcn.py:73: in execute
run_on_voevent_file(files=filehandler.fullpath, handler=self.handler)
/opt/anaconda/lib/python3.7/site-packages/llama/listen/gcn/__init__.py:313: in run_on_voevent_file
handler(payload, fromstring(payload))
/opt/anaconda/lib/python3.7/site-packages/llama/listen/gcn/__init__.py:187: in __call__
handler(payload, root)
/opt/anaconda/lib/python3.7/site-packages/gcn/handlers.py:51: in handle
handler(payload, root)
/opt/anaconda/lib/python3.7/site-packages/llama/listen/gcn/__init__.py:220: in handle
handle_gcn(payload, root)
/opt/anaconda/lib/python3.7/site-packages/gcn/handlers.py:51: in handle
handler(payload, root)
/opt/anaconda/lib/python3.7/site-packages/llama/listen/gcn/__init__.py:102: in handle_lvc_gcn
voe.generate(payload)
/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py:1523: in generate
return self.checkin(self.checkout().generate_unsafe())
/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py:1348: in wrapper
return func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/intent.py:429: in wrapper
return func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/versioning.py:574: in wrapper
result = func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/intent.py:350: in wrapper
res = func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/vetoes.py:393: in wrapper
return func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/meta.py:184: in wrapper
result = func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py:1389: in checkin
raise gen_result.err
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = LvcGcnXml(eventid="S190425z-1-Initial", rundir="/tmp/tmppk4tc8o1/S190425z-1-Initial/.tmp.d/LvcGcnXml-hzt1piel", parent="LvcGcnXml(eventid="S190425z-1-Initial", rundir="/tmp/tmppk4tc8o1")")
args = (), kwargs = {}

@_generate_cleanup.__func__
@VetoMixin.decorate_generate
@MetaDataMixin.decorate_generate
def generate_unsafe(self, *args, **kwargs):
"""
Generate this file without performing any of the usual ``checkout`` and
``checkin`` procedures; no cleanup will happen if file generation
fails. You **almost certainly** want to call ``generate`` instead, or
if you need to execute more than a single step of the pipeline,
``FileGraph.update`` with an appropriate downselection.

Returns
-------
gen_result : GenerationResult
A ``GenerationResult`` containing any errors raised during any part
of file generation.
"""
if list(self.DEPENDENCIES) and (not self.are_dependencies_met()):
LOGGER.error("%s has unmet dependencies; cannot generate yet.",
self)
raise GenerationError(f"Unmet dependencies for {self}.")
# close all figure windows to conserve memory
if 'matplotlib.pyplot' in sys.modules:
sys.modules['matplotlib.pyplot'].close('all')
try:
LOGGER.info(COL.BLUE + COL.BOLD + "Generating " +
str(self) + COL.CLEAR)
# invalidate obsolescence caches for all files (robust
# against code changes that change obsolescence
# definitions) TODO remove this obsolescence caching crap
self.lock.remove_all_obsolescence()
> self._generate()
E TypeError: _generate() missing 1 required positional argument: 'payload'

/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py:1496: TypeError
------------------------------Captured stdout call------------------------------
CREATED TMPDIR FOR S190425z-1-Initial : /tmp/tmppk4tc8o1 SET self.run for <llama.test.test_listeners.test_gcn.TestLlamaHandlerS190425z object at 0x7f4734843d90> TO Run(rundir="/tmp/tmppk4tc8o1", pipeline="Pipeline(<['Advok', 'CoincScatterI3LvcPdf', 'CoincScatterI3LvcPng', 'CoincScatterZtfI3LvcPdf', 'CoincScatterZtfI3LvcPng', 'CoincScatterZtfLVCPdf', 'CoincScatterZtfLVCPng', 'CoincSignificanceI3Lvc', 'CoincSignificanceSubthresholdI3Lvc', 'CoincSummaryI3LvcPdf', 'CoincSummaryI3LvcTex', 'FermiGRBsJSON', 'IceCubeNeutrinoList', 'IceCubeNeutrinoListCoincTxt', 'IceCubeNeutrinoListTex', 'IceCubeNeutrinoListTxt', 'LVAlertAdvok', 'LVAlertJSON', 'LVCGraceDbEventData', 'LvcDistancesJson', 'LvcGcnXml', 'LvcRetractionXml', 'LvcSkymapFits', 'LvcSkymapHdf5', 'PAstro', 'RctSlkI3CoincSummaryI3LvcPdf', 'RctSlkLmaCoincScatterI3LvcPdf', 'RctSlkLmaCoincScatterI3LvcPng', 'RctSlkLmaCoincScatterZtfI3LvcPdf', 'RctSlkLmaCoincScatterZtfI3LvcPng', 'RctSlkLmaCoincScatterZtfLVCPdf', 'RctSlkLmaCoincScatterZtfLVCPng', 'RctSlkLmaCoincSignificanceI3Lvc', 'RctSlkLmaCoincSignificanceSubthresholdI3Lvc', 'RctSlkLmaCoincSummaryI3LvcPdf', 'RctSlkLmaLVAlertJSON', 'RctSlkLmaLVCGraceDbEventData', 'RctSlkLmaLvcDistancesJson', 'RctSlkLmaLvcGcnXml', 'RctSlkLmaLvcRetractionXml', 'RctSlkLmaSkymapInfo', 'SkymapInfo', 'ZtfTriggerList']>)") PROVISIONED TMPDIR FOR S190425z-1-Initial , CONTENTS: []
-------------------------------Captured log call--------------------------------
INFO llama.listen.gcn:__init__.py:309 Running LlamaHandlers(rundir='/tmp/tmppk4tc8o1', gcn_archive='/tmp/tmpdyeth8lh', manually_included=None) handler on /root/.local/share/llama/inputs/tests/event_files/S190425z-1-Initial/lvc_gcn.xml. INFO llama.listen.gcn:__init__.py:183 NEW PAYLOAD. IVORN: ivo://gwnet/LVC#S190425z-1-Initial INFO llama.listen.gcn:__init__.py:186 Running handler: handle_archive from llama.listen.gcn INFO llama.listen.gcn:__init__.py:252 Running handle_archive on gcn archive directory /tmp/tmpdyeth8lh DEBUG llama.listen.gcn:__init__.py:262 Received GCN notice: ivo://gwnet/LVC#S190425z-1-Initial INFO llama.listen.gcn:__init__.py:272 Selected outpath /tmp/tmpdyeth8lh/2020-05/16/ivo%3A%2F%2Fgwnet%2FLVC%23S190425z-1-Initial INFO llama.listen.gcn:__init__.py:279 archived ivo://gwnet/LVC#S190425z-1-Initial INFO llama.listen.gcn:__init__.py:186 Running handler: handle from llama.listen.gcn INFO llama.listen.gcn:__init__.py:77 Running ``handle_lvc_gcn`` on rundir /tmp/tmppk4tc8o1 with handler LvcGcnXml INFO llama.listen.gcn:__init__.py:83 2020-05-16 21:14:25.809044: superid: S190425z INFO llama.listen.gcn:__init__.py:83 2020-05-16 21:14:25.809101: alerttype: Initial INFO llama.listen.gcn:__init__.py:99 Event does not exist, initializing S190425z-1-Initial WARNING llama.filehandler:__init__.py:1507 Wrapping exception raised while generating LvcGcnXml(eventid="S190425z-1-Initial", rundir="/tmp/tmppk4tc8o1/S190425z-1-Initial/.tmp.d/LvcGcnXml-hzt1piel", parent="LvcGcnXml(eventid="S190425z-1-Initial", rundir="/tmp/tmppk4tc8o1")"): TypeError("_generate() missing 1 required positional argument: 'payload'") ERROR llama.filehandler:__init__.py:1388 Exception while generating LvcGcnXml(eventid="S190425z-1-Initial", rundir="/tmp/tmppk4tc8o1"): GenerationResult(fh=LvcGcnXml(eventid="S190425z-1-Initial", rundir="/tmp/tmppk4tc8o1/S190425z-1-Initial/.tmp.d/LvcGcnXml-hzt1piel", parent="LvcGcnXml(eventid="S190425z-1-Initial", rundir="/tmp/tmppk4tc8o1")"), err=TypeError("_generate() missing 1 required positional argument: 'payload'")) ERROR llama.versioning:versioning.py:576 Rolling back to last commit. ERROR llama.versioning:versioning.py:578 Rolled back.
Failed test/test_listeners/test_gcn.py::TestLlamaHandlerS190521g::test 0.18
self = <llama.test.test_listeners.test_gcn.TestLlamaHandlerS190521g object at 0x7f4734651990>

def test(self):
with tempfile.TemporaryDirectory() as tmpdir:
self.gcn_archive = tmpdir
# if you run the test at midnight, the files might be different
# based on the date switch, so look for files in both places in
# case the date switches in the middle of the test
start = datetime.utcnow()
> super().test()

/opt/anaconda/lib/python3.7/site-packages/llama/test/test_listeners/test_gcn.py:82:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/opt/anaconda/lib/python3.7/site-packages/llama/test/classes.py:135: in test
self.execute()
/opt/anaconda/lib/python3.7/site-packages/llama/test/test_listeners/test_gcn.py:73: in execute
run_on_voevent_file(files=filehandler.fullpath, handler=self.handler)
/opt/anaconda/lib/python3.7/site-packages/llama/listen/gcn/__init__.py:313: in run_on_voevent_file
handler(payload, fromstring(payload))
/opt/anaconda/lib/python3.7/site-packages/llama/listen/gcn/__init__.py:187: in __call__
handler(payload, root)
/opt/anaconda/lib/python3.7/site-packages/gcn/handlers.py:51: in handle
handler(payload, root)
/opt/anaconda/lib/python3.7/site-packages/llama/listen/gcn/__init__.py:102: in handle_lvc_gcn
voe.generate(payload)
/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py:1523: in generate
return self.checkin(self.checkout().generate_unsafe())
/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py:1348: in wrapper
return func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/intent.py:429: in wrapper
return func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/versioning.py:574: in wrapper
result = func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/intent.py:350: in wrapper
res = func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/vetoes.py:393: in wrapper
return func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/meta.py:184: in wrapper
result = func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py:1389: in checkin
raise gen_result.err
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpcdcxe2ae/S190521g-1-Preliminary/.tmp.d/LvcGcnXml-9wm1jzl5", parent="LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpcdcxe2ae")")
args = (), kwargs = {}

@_generate_cleanup.__func__
@VetoMixin.decorate_generate
@MetaDataMixin.decorate_generate
def generate_unsafe(self, *args, **kwargs):
"""
Generate this file without performing any of the usual ``checkout`` and
``checkin`` procedures; no cleanup will happen if file generation
fails. You **almost certainly** want to call ``generate`` instead, or
if you need to execute more than a single step of the pipeline,
``FileGraph.update`` with an appropriate downselection.

Returns
-------
gen_result : GenerationResult
A ``GenerationResult`` containing any errors raised during any part
of file generation.
"""
if list(self.DEPENDENCIES) and (not self.are_dependencies_met()):
LOGGER.error("%s has unmet dependencies; cannot generate yet.",
self)
raise GenerationError(f"Unmet dependencies for {self}.")
# close all figure windows to conserve memory
if 'matplotlib.pyplot' in sys.modules:
sys.modules['matplotlib.pyplot'].close('all')
try:
LOGGER.info(COL.BLUE + COL.BOLD + "Generating " +
str(self) + COL.CLEAR)
# invalidate obsolescence caches for all files (robust
# against code changes that change obsolescence
# definitions) TODO remove this obsolescence caching crap
self.lock.remove_all_obsolescence()
> self._generate()
E TypeError: _generate() missing 1 required positional argument: 'payload'

/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py:1496: TypeError
------------------------------Captured stdout call------------------------------
CREATED TMPDIR FOR S190521g-1-Preliminary : /tmp/tmpcdcxe2ae SET self.run for <llama.test.test_listeners.test_gcn.TestLlamaHandlerS190521g object at 0x7f4734651990> TO Run(rundir="/tmp/tmpcdcxe2ae", pipeline="Pipeline(<['Advok', 'CoincScatterI3LvcPdf', 'CoincScatterI3LvcPng', 'CoincScatterZtfI3LvcPdf', 'CoincScatterZtfI3LvcPng', 'CoincScatterZtfLVCPdf', 'CoincScatterZtfLVCPng', 'CoincSignificanceI3Lvc', 'CoincSignificanceSubthresholdI3Lvc', 'CoincSummaryI3LvcPdf', 'CoincSummaryI3LvcTex', 'FermiGRBsJSON', 'IceCubeNeutrinoList', 'IceCubeNeutrinoListCoincTxt', 'IceCubeNeutrinoListTex', 'IceCubeNeutrinoListTxt', 'LVAlertAdvok', 'LVAlertJSON', 'LVCGraceDbEventData', 'LvcDistancesJson', 'LvcGcnXml', 'LvcRetractionXml', 'LvcSkymapFits', 'LvcSkymapHdf5', 'PAstro', 'RctSlkI3CoincSummaryI3LvcPdf', 'RctSlkLmaCoincScatterI3LvcPdf', 'RctSlkLmaCoincScatterI3LvcPng', 'RctSlkLmaCoincScatterZtfI3LvcPdf', 'RctSlkLmaCoincScatterZtfI3LvcPng', 'RctSlkLmaCoincScatterZtfLVCPdf', 'RctSlkLmaCoincScatterZtfLVCPng', 'RctSlkLmaCoincSignificanceI3Lvc', 'RctSlkLmaCoincSignificanceSubthresholdI3Lvc', 'RctSlkLmaCoincSummaryI3LvcPdf', 'RctSlkLmaLVAlertJSON', 'RctSlkLmaLVCGraceDbEventData', 'RctSlkLmaLvcDistancesJson', 'RctSlkLmaLvcGcnXml', 'RctSlkLmaLvcRetractionXml', 'RctSlkLmaSkymapInfo', 'SkymapInfo', 'ZtfTriggerList']>)") PROVISIONED TMPDIR FOR S190521g-1-Preliminary , CONTENTS: []
-------------------------------Captured log call--------------------------------
INFO llama.listen.gcn:__init__.py:309 Running LlamaHandlers(rundir='/tmp/tmpcdcxe2ae', gcn_archive='/tmp/tmpz_4j5_9c', manually_included=None) handler on /root/.local/share/llama/inputs/tests/event_files/S190521g-1-Preliminary/lvc_gcn.xml. INFO llama.listen.gcn:__init__.py:183 NEW PAYLOAD. IVORN: ivo://gwnet/LVC#S190521g-1-Preliminary INFO llama.listen.gcn:__init__.py:186 Running handler: handle_archive from llama.listen.gcn INFO llama.listen.gcn:__init__.py:252 Running handle_archive on gcn archive directory /tmp/tmpz_4j5_9c DEBUG llama.listen.gcn:__init__.py:262 Received GCN notice: ivo://gwnet/LVC#S190521g-1-Preliminary INFO llama.listen.gcn:__init__.py:272 Selected outpath /tmp/tmpz_4j5_9c/2020-05/16/ivo%3A%2F%2Fgwnet%2FLVC%23S190521g-1-Preliminary INFO llama.listen.gcn:__init__.py:279 archived ivo://gwnet/LVC#S190521g-1-Preliminary INFO llama.listen.gcn:__init__.py:186 Running handler: handle from llama.listen.gcn INFO llama.listen.gcn:__init__.py:186 Running handler: handle_lvc_gcn from llama.listen.gcn INFO llama.listen.gcn:__init__.py:77 Running ``handle_lvc_gcn`` on rundir /tmp/tmpcdcxe2ae with handler LvcGcnXml INFO llama.listen.gcn:__init__.py:83 2020-05-16 21:14:26.030892: superid: S190521g INFO llama.listen.gcn:__init__.py:83 2020-05-16 21:14:26.030943: alerttype: Preliminary INFO llama.listen.gcn:__init__.py:99 Event does not exist, initializing S190521g-1-Preliminary WARNING llama.filehandler:__init__.py:1507 Wrapping exception raised while generating LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpcdcxe2ae/S190521g-1-Preliminary/.tmp.d/LvcGcnXml-9wm1jzl5", parent="LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpcdcxe2ae")"): TypeError("_generate() missing 1 required positional argument: 'payload'") ERROR llama.filehandler:__init__.py:1388 Exception while generating LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpcdcxe2ae"): GenerationResult(fh=LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpcdcxe2ae/S190521g-1-Preliminary/.tmp.d/LvcGcnXml-9wm1jzl5", parent="LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpcdcxe2ae")"), err=TypeError("_generate() missing 1 required positional argument: 'payload'")) ERROR llama.versioning:versioning.py:576 Rolling back to last commit. ERROR llama.versioning:versioning.py:578 Rolled back.
Failed test/test_listeners/test_gcn.py::TestGcndS190425z::test 0.08
self = <llama.test.test_listeners.test_gcn.TestGcndS190425z object at 0x7f4734651cd0>

def test(self):
with tempfile.TemporaryDirectory() as tmpdir:
self.gcn_archive = tmpdir
# if you run the test at midnight, the files might be different
# based on the date switch, so look for files in both places in
# case the date switches in the middle of the test
start = datetime.utcnow()
> super().test()

/opt/anaconda/lib/python3.7/site-packages/llama/test/test_listeners/test_gcn.py:82:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/opt/anaconda/lib/python3.7/site-packages/llama/test/classes.py:135: in test
self.execute()
/opt/anaconda/lib/python3.7/site-packages/llama/test/test_listeners/test_gcn.py:73: in execute
run_on_voevent_file(files=filehandler.fullpath, handler=self.handler)
/opt/anaconda/lib/python3.7/site-packages/llama/listen/gcn/__init__.py:313: in run_on_voevent_file
handler(payload, fromstring(payload))
/opt/anaconda/lib/python3.7/site-packages/llama/listen/gcn/__init__.py:187: in __call__
handler(payload, root)
/opt/anaconda/lib/python3.7/site-packages/gcn/handlers.py:51: in handle
handler(payload, root)
/opt/anaconda/lib/python3.7/site-packages/llama/listen/gcn/__init__.py:220: in handle
handle_gcn(payload, root)
/opt/anaconda/lib/python3.7/site-packages/gcn/handlers.py:51: in handle
handler(payload, root)
/opt/anaconda/lib/python3.7/site-packages/llama/listen/gcn/__init__.py:102: in handle_lvc_gcn
voe.generate(payload)
/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py:1523: in generate
return self.checkin(self.checkout().generate_unsafe())
/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py:1348: in wrapper
return func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/intent.py:429: in wrapper
return func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/versioning.py:574: in wrapper
result = func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/intent.py:350: in wrapper
res = func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/vetoes.py:393: in wrapper
return func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/meta.py:184: in wrapper
result = func(self, gen_result, *args, **kwargs)
/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py:1389: in checkin
raise gen_result.err
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = LvcGcnXml(eventid="S190425z-1-Initial", rundir="/tmp/tmp27aj1hjn/S190425z-1-Initial/.tmp.d/LvcGcnXml-j6aj9era", parent="LvcGcnXml(eventid="S190425z-1-Initial", rundir="/tmp/tmp27aj1hjn")")
args = (), kwargs = {}

@_generate_cleanup.__func__
@VetoMixin.decorate_generate
@MetaDataMixin.decorate_generate
def generate_unsafe(self, *args, **kwargs):
"""
Generate this file without performing any of the usual ``checkout`` and
``checkin`` procedures; no cleanup will happen if file generation
fails. You **almost certainly** want to call ``generate`` instead, or
if you need to execute more than a single step of the pipeline,
``FileGraph.update`` with an appropriate downselection.

Returns
-------
gen_result : GenerationResult
A ``GenerationResult`` containing any errors raised during any part
of file generation.
"""
if list(self.DEPENDENCIES) and (not self.are_dependencies_met()):
LOGGER.error("%s has unmet dependencies; cannot generate yet.",
self)
raise GenerationError(f"Unmet dependencies for {self}.")
# close all figure windows to conserve memory
if 'matplotlib.pyplot' in sys.modules:
sys.modules['matplotlib.pyplot'].close('all')
try:
LOGGER.info(COL.BLUE + COL.BOLD + "Generating " +
str(self) + COL.CLEAR)
# invalidate obsolescence caches for all files (robust
# against code changes that change obsolescence
# definitions) TODO remove this obsolescence caching crap
self.lock.remove_all_obsolescence()
> self._generate()
E TypeError: _generate() missing 1 required positional argument: 'payload'

/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py:1496: TypeError
------------------------------Captured stdout call------------------------------
CREATED TMPDIR FOR S190425z-1-Initial : /tmp/tmp27aj1hjn SET self.run for <llama.test.test_listeners.test_gcn.TestGcndS190425z object at 0x7f4734651cd0> TO Run(rundir="/tmp/tmp27aj1hjn", pipeline="Pipeline(<['Advok', 'CoincScatterI3LvcPdf', 'CoincScatterI3LvcPng', 'CoincScatterZtfI3LvcPdf', 'CoincScatterZtfI3LvcPng', 'CoincScatterZtfLVCPdf', 'CoincScatterZtfLVCPng', 'CoincSignificanceI3Lvc', 'CoincSignificanceSubthresholdI3Lvc', 'CoincSummaryI3LvcPdf', 'CoincSummaryI3LvcTex', 'FermiGRBsJSON', 'IceCubeNeutrinoList', 'IceCubeNeutrinoListCoincTxt', 'IceCubeNeutrinoListTex', 'IceCubeNeutrinoListTxt', 'LVAlertAdvok', 'LVAlertJSON', 'LVCGraceDbEventData', 'LvcDistancesJson', 'LvcGcnXml', 'LvcRetractionXml', 'LvcSkymapFits', 'LvcSkymapHdf5', 'PAstro', 'RctSlkI3CoincSummaryI3LvcPdf', 'RctSlkLmaCoincScatterI3LvcPdf', 'RctSlkLmaCoincScatterI3LvcPng', 'RctSlkLmaCoincScatterZtfI3LvcPdf', 'RctSlkLmaCoincScatterZtfI3LvcPng', 'RctSlkLmaCoincScatterZtfLVCPdf', 'RctSlkLmaCoincScatterZtfLVCPng', 'RctSlkLmaCoincSignificanceI3Lvc', 'RctSlkLmaCoincSignificanceSubthresholdI3Lvc', 'RctSlkLmaCoincSummaryI3LvcPdf', 'RctSlkLmaLVAlertJSON', 'RctSlkLmaLVCGraceDbEventData', 'RctSlkLmaLvcDistancesJson', 'RctSlkLmaLvcGcnXml', 'RctSlkLmaLvcRetractionXml', 'RctSlkLmaSkymapInfo', 'SkymapInfo', 'ZtfTriggerList']>)") PROVISIONED TMPDIR FOR S190425z-1-Initial , CONTENTS: []
-------------------------------Captured log call--------------------------------
INFO llama.listen.gcn:__init__.py:309 Running LlamaHandlers(rundir='/tmp/tmp27aj1hjn', gcn_archive='/tmp/tmp_2wculiy', manually_included=None) handler on /root/.local/share/llama/inputs/tests/event_files/S190425z-1-Initial/lvc_gcn.xml. INFO llama.listen.gcn:__init__.py:183 NEW PAYLOAD. IVORN: ivo://gwnet/LVC#S190425z-1-Initial INFO llama.listen.gcn:__init__.py:186 Running handler: handle_archive from llama.listen.gcn INFO llama.listen.gcn:__init__.py:252 Running handle_archive on gcn archive directory /tmp/tmp_2wculiy DEBUG llama.listen.gcn:__init__.py:262 Received GCN notice: ivo://gwnet/LVC#S190425z-1-Initial INFO llama.listen.gcn:__init__.py:272 Selected outpath /tmp/tmp_2wculiy/2020-05/16/ivo%3A%2F%2Fgwnet%2FLVC%23S190425z-1-Initial INFO llama.listen.gcn:__init__.py:279 archived ivo://gwnet/LVC#S190425z-1-Initial INFO llama.listen.gcn:__init__.py:186 Running handler: handle from llama.listen.gcn INFO llama.listen.gcn:__init__.py:77 Running ``handle_lvc_gcn`` on rundir /tmp/tmp27aj1hjn with handler LvcGcnXml INFO llama.listen.gcn:__init__.py:83 2020-05-16 21:14:26.338265: superid: S190425z INFO llama.listen.gcn:__init__.py:83 2020-05-16 21:14:26.338324: alerttype: Initial INFO llama.listen.gcn:__init__.py:99 Event does not exist, initializing S190425z-1-Initial WARNING llama.filehandler:__init__.py:1507 Wrapping exception raised while generating LvcGcnXml(eventid="S190425z-1-Initial", rundir="/tmp/tmp27aj1hjn/S190425z-1-Initial/.tmp.d/LvcGcnXml-j6aj9era", parent="LvcGcnXml(eventid="S190425z-1-Initial", rundir="/tmp/tmp27aj1hjn")"): TypeError("_generate() missing 1 required positional argument: 'payload'") ERROR llama.filehandler:__init__.py:1388 Exception while generating LvcGcnXml(eventid="S190425z-1-Initial", rundir="/tmp/tmp27aj1hjn"): GenerationResult(fh=LvcGcnXml(eventid="S190425z-1-Initial", rundir="/tmp/tmp27aj1hjn/S190425z-1-Initial/.tmp.d/LvcGcnXml-j6aj9era", parent="LvcGcnXml(eventid="S190425z-1-Initial", rundir="/tmp/tmp27aj1hjn")"), err=TypeError("_generate() missing 1 required positional argument: 'payload'")) ERROR llama.versioning:versioning.py:576 Rolling back to last commit. ERROR llama.versioning:versioning.py:578 Rolled back.
Failed test/test_listeners/test_gcn.py::TestGcndS190521g::test 6.33
self = <llama.test.test_listeners.test_gcn.TestGcndS190521g object at 0x7f4737fd6310>

def test(self):
with tempfile.TemporaryDirectory() as tmpdir:
self.gcn_archive = tmpdir
# if you run the test at midnight, the files might be different
# based on the date switch, so look for files in both places in
# case the date switches in the middle of the test
start = datetime.utcnow()
> super().test()

/opt/anaconda/lib/python3.7/site-packages/llama/test/test_listeners/test_gcn.py:82:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <llama.test.test_listeners.test_gcn.TestGcndS190521g object at 0x7f4737fd6310>

def test(self):
"""Run this test with ``execute`` and then check whether outputs are as
expected with ``compare``."""
with tempfile.TemporaryDirectory() as tmpdir:
print("CREATED TMPDIR FOR ", self.EVENTID, ": ", tmpdir)
self.run = Run(tmpdir)
print("SET self.run for ", self, " TO ", self.run)
self.provision()
print("PROVISIONED TMPDIR FOR ", self.EVENTID, ", CONTENTS: ",
os.listdir(tmpdir))
self.execute()
print("EXECUTED TEST FOR ", self, " TMPDIR CONTENTS: ",
os.listdir(tmpdir))
print("TMP EVENTDIR CONTENTS: ", os.listdir(self.event.eventdir))
> assert self.compare()
E AssertionError

/opt/anaconda/lib/python3.7/site-packages/llama/test/classes.py:139: AssertionError
------------------------------Captured stdout call------------------------------
CREATED TMPDIR FOR S190521g-1-Preliminary : /tmp/tmpk088nceq SET self.run for <llama.test.test_listeners.test_gcn.TestGcndS190521g object at 0x7f4737fd6310> TO Run(rundir="/tmp/tmpk088nceq", pipeline="Pipeline(<['Advok', 'CoincScatterI3LvcPdf', 'CoincScatterI3LvcPng', 'CoincScatterZtfI3LvcPdf', 'CoincScatterZtfI3LvcPng', 'CoincScatterZtfLVCPdf', 'CoincScatterZtfLVCPng', 'CoincSignificanceI3Lvc', 'CoincSignificanceSubthresholdI3Lvc', 'CoincSummaryI3LvcPdf', 'CoincSummaryI3LvcTex', 'FermiGRBsJSON', 'IceCubeNeutrinoList', 'IceCubeNeutrinoListCoincTxt', 'IceCubeNeutrinoListTex', 'IceCubeNeutrinoListTxt', 'LVAlertAdvok', 'LVAlertJSON', 'LVCGraceDbEventData', 'LvcDistancesJson', 'LvcGcnXml', 'LvcRetractionXml', 'LvcSkymapFits', 'LvcSkymapHdf5', 'PAstro', 'RctSlkI3CoincSummaryI3LvcPdf', 'RctSlkLmaCoincScatterI3LvcPdf', 'RctSlkLmaCoincScatterI3LvcPng', 'RctSlkLmaCoincScatterZtfI3LvcPdf', 'RctSlkLmaCoincScatterZtfI3LvcPng', 'RctSlkLmaCoincScatterZtfLVCPdf', 'RctSlkLmaCoincScatterZtfLVCPng', 'RctSlkLmaCoincSignificanceI3Lvc', 'RctSlkLmaCoincSignificanceSubthresholdI3Lvc', 'RctSlkLmaCoincSummaryI3LvcPdf', 'RctSlkLmaLVAlertJSON', 'RctSlkLmaLVCGraceDbEventData', 'RctSlkLmaLvcDistancesJson', 'RctSlkLmaLvcGcnXml', 'RctSlkLmaLvcRetractionXml', 'RctSlkLmaSkymapInfo', 'SkymapInfo', 'ZtfTriggerList']>)") PROVISIONED TMPDIR FOR S190521g-1-Preliminary , CONTENTS: [] Server STDOUT: %s STDERR: %s INFO:gcn.serve:bound to 127.0.0.1:8099 INFO:gcn.serve:connected to ('127.0.0.1', 56458):8099 Listener STDOUT: %s STDERR: %s /opt/anaconda/lib/python3.7/site-packages/llama/classes.py:532: OptionalFeatureWarning: llama.utils tried to load undefined environmental variables: LLAMA_OUTPUT_DIR -- Specify where LLAMA data, triggers, and results should be saved locally. warnings.warn(errmsg, OptionalFeatureWarning) /opt/anaconda/lib/python3.7/site-packages/llama/classes.py:532: OptionalFeatureWarning: llama.utils tried to load undefined environmental variables: LLAMA_CACHEDIR -- Specify where LLAMA data should be cached. warnings.warn(errmsg, OptionalFeatureWarning) /opt/anaconda/lib/python3.7/site-packages/llama/classes.py:532: OptionalFeatureWarning: llama.io.default.generate tried to load undefined environmental variables: LLAMA_IO_DEFAULT_GEN_MAX_WORKERS --  Specify the maximum number of subprocesses to use for local file generation using LLAMA's `default` file generation manager. If not specified, the default of 4 subprocesses will be used.  warnings.warn(errmsg, OptionalFeatureWarning) /opt/anaconda/lib/python3.7/site-packages/llama/classes.py:532: OptionalFeatureWarning: llama.com.s3 tried to load undefined environmental variables: LLAMA_COM_S3_REGION, LLAMA_COM_S3_ENDPOINT, LLAMA_COM_S3_BUCKET -- Specify the S3 region, endpoint, and bucket as env variables. Must specify all, or else defaults will be used: DEFAULT_REGION=nyc3, DEFAULT_ENDPOINT=nyc3.digitaloceanspaces.com, DEFAULT_BUCKET=llama warnings.warn(errmsg, OptionalFeatureWarning) /opt/anaconda/lib/python3.7/site-packages/llama/classes.py:532: OptionalFeatureWarning: llama.com.gracedb tried to load undefined environmental variables: LLAMA_GRACEDB_AUTH -- Set LLAMA_GRACEDB_AUTH to the S3 object key of the LIGO GraceDb robot keytab to automatically authenticate with GraceDb. Otherwise, do not authenticate automatically. warnings.warn(errmsg, OptionalFeatureWarning) /opt/anaconda/lib/python3.7/site-packages/llama/classes.py:532: OptionalFeatureWarning: llama.serve.gui.domain tried to load undefined environmental variables: LLAMA_DOMAIN -- Specify the domain on which LLAMA processes are running. warnings.warn(errmsg, OptionalFeatureWarning) /opt/anaconda/lib/python3.7/site-packages/llama/classes.py:532: OptionalFeatureWarning: llama.serve.gui tried to load undefined environmental variables: LLAMA_GUI_PORT -- Specify the port on which ``llama serve gui`` is running. warnings.warn(errmsg, OptionalFeatureWarning) /opt/anaconda/lib/python3.7/site-packages/llama/classes.py:532: OptionalFeatureWarning: llama.serve.gui tried to load undefined environmental variables: FILE_PREVIEWS, FULL_WIDTH_FILE_PREVIEWS -- Specify a comma-separated list of FileHandler classes from the llama.pipeline.Pipeline in use that should have file previews on event pages. `FILE_PREVIEWS` will take up less than the full width of the page on desktop and `FULL_WIDTH_FILE_PREVIEWS` will take up the full width. If none are specified, defaults will be used. warnings.warn(errmsg, OptionalFeatureWarning) /opt/anaconda/lib/python3.7/site-packages/llama/classes.py:532: OptionalFeatureWarning: llama.serve.jupyter tried to load undefined environmental variables: LLAMA_JUP_PORT -- Specify the port on which ``llama serve jupyter`` is running. warnings.warn(errmsg, OptionalFeatureWarning) /opt/anaconda/lib/python3.7/site-packages/llama/classes.py:532: OptionalFeatureWarning: llama.com.slack tried to load undefined environmental variables: LLAMA_SLACK_MAINTAINERS -- Specify the comma-delimited real names, user names, or user IDs for Slack users who should be notified of errors. warnings.warn(errmsg, OptionalFeatureWarning) /opt/anaconda/lib/python3.7/site-packages/llama/files/i3/json.py:54: OptionalFeatureWarning: Could not import ``realtime_tools`` IceCube project. Will use stub implementations of IceCube software instead for fetching IceCube data. If you have a workable version of ``realtime_tools`` somewhere, add it to your ``PYTHONPATH`` environmental variable to use it here. warnings.warn(msg, OptionalFeatureWarning) /opt/anaconda/lib/python3.7/site-packages/llama/files/i3/json.py:78: OptionalFeatureWarning: Could not import ``realtime_gfu``. Will use stub implementations of IceCube software instead for formatting IceCube GFU neutrinos. If you have a workable version of ``realtime_gfu`` somewhere, add it to your ``PYTHONPATH`` environmental variable to use it here. warnings.warn(msg, OptionalFeatureWarning) /opt/anaconda/lib/python3.7/site-packages/llama/classes.py:532: OptionalFeatureWarning: llama.com.do tried to load undefined environmental variables: DIGITALOCEAN --  You need to specify a digitalocean API token to use this ``llama com do``. You can generate one from your control panel on digitalocean.com. This script expects the DIGITALOCEAN environmental variable to be set to your API token. Feel free to put your API token in a ``.bashrc`` (or similar) startup script, but: *DO NOT UNDER ANY CIRCUMSTANCES VERSION CONTROL THAT API KEY!* It is effectively a username/password combination, and if your code repository containing that credential is ever exposed, someone will be able to use your token to spin up as many servers (e.g. for crypto-mining) as they want *ON YOUR DIME*! This is a **VERY COMMON ATTACK**; people will search for such keys on GitHub and BitBucket and find them in plain sight.  warnings.warn(errmsg, OptionalFeatureWarning) |INFO |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.listen.gcn.__main__| __main__.py:74 | main| Starting GCN Listener, llama version 3.5.1. |INFO |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:183 | __call__| NEW PAYLOAD. IVORN: ivo://gwnet/LVC#S190521g-1-Preliminary |INFO |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:186 | __call__| Running handler: handle_archive from llama.listen.gcn |INFO |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:252 |handle_archive| Running handle_archive on gcn archive directory /tmp/tmpele9uv12 |DEBUG |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:262 |handle_archive| Received GCN notice: ivo://gwnet/LVC#S190521g-1-Preliminary |INFO |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:272 |handle_archive| Selected outpath /tmp/tmpele9uv12/2020-05/16/ivo%3A%2F%2Fgwnet%2FLVC%23S190521g-1-Preliminary |INFO |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:279 |handle_archive| archived ivo://gwnet/LVC#S190521g-1-Preliminary |INFO |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:186 | __call__| Running handler: handle from llama.listen.gcn |INFO |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:186 | __call__| Running handler: handle_lvc_gcn from llama.listen.gcn |INFO |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:77 |handle_lvc_gcn| Running ``handle_lvc_gcn`` on rundir /tmp/tmpk088nceq with handler LvcGcnXml |INFO |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:83 |handle_lvc_gcn| 2020-05-16 21:14:27.769843: superid: S190521g |INFO |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:83 |handle_lvc_gcn| 2020-05-16 21:14:27.769945: alerttype: Preliminary |INFO |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:99 |handle_lvc_gcn| Event does not exist, initializing S190521g-1-Preliminary |DEBUG |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.intent | intent.py:244 | acquire| Acquired EventLock for /tmp/tmpk088nceq/S190521g-1-Preliminary |DEBUG |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.versioning | versioning.py:261 |commit_changes| ``git commit -m`` 'Changes before generating LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq")' in /tmp/tmpk088nceq/S190521g-1-Preliminary |DEBUG |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.intent | intent.py:275 | release| Removed event lock for /tmp/tmpk088nceq/S190521g-1-Preliminary |DEBUG |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.vetoes | vetoes.py:257 | check| Running veto checks. |INFO |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.filehandler | __init__.py:1491|generate_unsafe| Generating LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq/S190521g-1-Preliminary/.tmp.d/LvcGcnXml-f310_r_g", parent="LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq")") |WARNING |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.filehandler | __init__.py:1507|generate_unsafe| Wrapping exception raised while generating LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq/S190521g-1-Preliminary/.tmp.d/LvcGcnXml-f310_r_g", parent="LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq")"): TypeError("_generate() missing 1 required positional argument: 'payload'") |DEBUG |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.intent | intent.py:244 | acquire| Acquired EventLock for /tmp/tmpk088nceq/S190521g-1-Preliminary |INFO |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.filehandler | __init__.py:1386| checkin| Checking in GenerationResult(fh=LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq/S190521g-1-Preliminary/.tmp.d/LvcGcnXml-f310_r_g", parent="LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq")"), err=TypeError("_generate() missing 1 required positional argument: 'payload'")) to LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq"). |ERROR |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.filehandler | __init__.py:1388| checkin| Exception while generating LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq"): GenerationResult(fh=LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq/S190521g-1-Preliminary/.tmp.d/LvcGcnXml-f310_r_g", parent="LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq")"), err=TypeError("_generate() missing 1 required positional argument: 'payload'")) |DEBUG |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.intent | intent.py:84 | write| Writing cooldown for CoolDown(eventdir='/tmp/tmpk088nceq/S190521g-1-Preliminary', manifest_filehandlers=[LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq")]) |ERROR |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.versioning | versioning.py:576 | wrapper| Rolling back to last commit. |ERROR |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.versioning | versioning.py:578 | wrapper| Rolled back. |DEBUG |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.intent | intent.py:275 | release| Removed event lock for /tmp/tmpk088nceq/S190521g-1-Preliminary |DEBUG |2020-05-16 21:14:27| MainProcess:2545 |MainThread |llama.filehandler | __init__.py:1351| wrapper| Deleting tempfiles from GenerationResult(fh=LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq/S190521g-1-Preliminary/.tmp.d/LvcGcnXml-f310_r_g", parent="LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq")"), err=TypeError("_generate() missing 1 required positional argument: 'payload'")) from atomic generation of LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq") exception in payload handler Traceback (most recent call last): File "/opt/anaconda/lib/python3.7/site-packages/llama/cli.py", line 975, in wrapper return func(*args, **kwargs) File "/opt/anaconda/lib/python3.7/site-packages/llama/listen/gcn/__init__.py", line 187, in __call__ handler(payload, root) File "/opt/anaconda/lib/python3.7/site-packages/gcn/handlers.py", line 51, in handle handler(payload, root) File "/opt/anaconda/lib/python3.7/site-packages/llama/listen/gcn/__init__.py", line 102, in handle_lvc_gcn voe.generate(payload) File "/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py", line 1523, in generate return self.checkin(self.checkout().generate_unsafe()) File "/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py", line 1348, in wrapper return func(self, gen_result, *args, **kwargs) File "/opt/anaconda/lib/python3.7/site-packages/llama/intent.py", line 429, in wrapper return func(self, gen_result, *args, **kwargs) File "/opt/anaconda/lib/python3.7/site-packages/llama/versioning.py", line 574, in wrapper result = func(self, gen_result, *args, **kwargs) File "/opt/anaconda/lib/python3.7/site-packages/llama/intent.py", line 350, in wrapper res = func(self, gen_result, *args, **kwargs) File "/opt/anaconda/lib/python3.7/site-packages/llama/vetoes.py", line 393, in wrapper return func(self, gen_result, *args, **kwargs) File "/opt/anaconda/lib/python3.7/site-packages/llama/meta.py", line 184, in wrapper result = func(self, gen_result, *args, **kwargs) File "/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py", line 1389, in checkin raise gen_result.err File "/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py", line 1496, in generate_unsafe self._generate() TypeError: _generate() missing 1 required positional argument: 'payload' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/opt/anaconda/lib/python3.7/site-packages/gcn/voeventclient.py", line 186, in _ingest_packet handler(payload, root) File "/opt/anaconda/lib/python3.7/site-packages/llama/cli.py", line 980, in wrapper func.__module__, func.__name__) AttributeError: 'LlamaHandlers' object has no attribute '__name__' |INFO |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:183 | __call__| NEW PAYLOAD. IVORN: ivo://gwnet/LVC#S190521g-1-Preliminary |INFO |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:186 | __call__| Running handler: handle_archive from llama.listen.gcn |INFO |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:252 |handle_archive| Running handle_archive on gcn archive directory /tmp/tmpele9uv12 |DEBUG |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:262 |handle_archive| Received GCN notice: ivo://gwnet/LVC#S190521g-1-Preliminary |INFO |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:272 |handle_archive| Selected outpath /tmp/tmpele9uv12/2020-05/16/ivo%3A%2F%2Fgwnet%2FLVC%23S190521g-1-Preliminary |INFO |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:278 |handle_archive| outpath /tmp/tmpele9uv12/2020-05/16/ivo%3A%2F%2Fgwnet%2FLVC%23S190521g-1-Preliminary exists, not overwriting. dumping xml: <?xml version="1.0" ?> <voe:VOEvent xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:voe="http://www.ivoa.net/xml/VOEvent/v2.0" xsi:schemaLocation="http://www.ivoa.net/xml/VOEvent/v2.0 http://www.ivoa.net/xml/VOEvent/VOEvent-v2.0.xsd"  version="2.0" role="observation" ivorn="ivo://gwnet/LVC#S190521g-1-Preliminary">  <Who>  <Date>2019-05-21T03:08:44</Date>  <Author>  <contactName>LIGO Scientific Collaboration and Virgo Collaboration</contactName>  </Author>  </Who>  <What>  <Param name="Packet_Type" dataType="int" value="150">  <Description>The Notice Type number is assigned/used within GCN, eg type=150 is an LVC_PRELIMINARY notice</Description>  </Param>  <Param name="internal" dataType="int" value="0">  <Description>Indicates whether this event should be distributed to LSC/Virgo members only</Description>  </Param>  <Param name="Pkt_Ser_Num" dataType="string" value="1">  <Description>A number that increments by 1 each time a new revision is issued for this event</Description>  </Param>  <Param name="GraceID" dataType="string" value="S190521g" ucd="meta.id">  <Description>Identifier in GraceDB</Description>  </Param>  <Param name="AlertType" dataType="string" value="Preliminary" ucd="meta.version">  <Description>VOEvent alert type</Description>  </Param>  <Param name="HardwareInj" dataType="int" value="0" ucd="meta.number">  <Description>Indicates that this event is a hardware injection if 1, no if 0</Description>  </Param>  <Param name="OpenAlert" dataType="int" value="1" ucd="meta.number">  <Description>Indicates that this event is an open alert if 1, no if 0</Description>  </Param>  <Param name="EventPage" dataType="string" value="https://gracedb.ligo.org/superevents/S190521g/view/" ucd="meta.ref.url">  <Description>Web page for evolving status of this GW candidate</Description>  </Param>  <Param name="Instruments" dataType="string" value="H1,L1,V1" ucd="meta.code">  <Description>List of instruments used in analysis to identify this event</Description>  </Param>  <Param name="FAR" dataType="float" value="3.80105501069e-09" ucd="arith.rate;stat.falsealarm" unit="Hz">  <Description>False alarm rate for GW candidates with this strength or greater</Description>  </Param>  <Param name="Group" dataType="string" value="CBC" ucd="meta.code">  <Description>Data analysis working group</Description>  </Param>  <Param name="Pipeline" dataType="string" value="pycbc" ucd="meta.code">  <Description>Low-latency data analysis pipeline</Description>  </Param>  <Param name="Search" dataType="string" value="AllSky" ucd="meta.code">  <Description>Specific low-latency search</Description>  </Param>  <Group type="GW_SKYMAP" name="bayestar">  <Param name="skymap_fits" dataType="string" value="https://gracedb.ligo.org/api/superevents/S190521g/files/bayestar.fits.gz" ucd="meta.ref.url">  <Description>Sky Map FITS</Description>  </Param>  </Group>  <Group type="Classification">  <Param name="BNS" dataType="float" value="0.0" ucd="stat.probability">  <Description>Probability that the source is a binary neutron star merger (both objects lighter than 3 solar masses)</Description>  </Param>  <Param name="NSBH" dataType="float" value="0.0" ucd="stat.probability">  <Description>Probability that the source is a neutron star-black hole merger (primary heavier than 5 solar masses, secondary lighter than 3 solar masses)</Description>  </Param>  <Param name="BBH" dataType="float" value="0.965882031742" ucd="stat.probability">  <Description>Probability that the source is a binary black hole merger (both objects heavier than 5 solar masses)</Description>  </Param>  <Param name="MassGap" dataType="float" value="0.0" ucd="stat.probability">  <Description>Probability that the source has at least one object between 3 and 5 solar masses</Description>  </Param>  <Param name="Terrestrial" dataType="float" value="0.0341179682578" ucd="stat.probability">  <Description>Probability that the source is terrestrial (i.e., a background noise fluctuation or a glitch)</Description>  </Param>  <Description>Source classification: binary neutron star (BNS), neutron star-black hole (NSBH), binary black hole (BBH), MassGap, or terrestrial (noise)</Description>  </Group>  <Group type="Properties">  <Param name="HasNS" dataType="float" value="0.0" ucd="stat.probability">  <Description>Probability that at least one object in the binary has a mass that is less than 3 solar masses</Description>  </Param>  <Param name="HasRemnant" dataType="float" value="0.0" ucd="stat.probability">  <Description>Probability that a nonzero mass was ejected outside the central remnant object</Description>  </Param>  <Description>Qualitative properties of the source, conditioned on the assumption that the signal is an astrophysical compact binary merger</Description>  </Group>  </What>  <WhereWhen>  <ObsDataLocation>  <ObservatoryLocation id="LIGO Virgo"/>  <ObservationLocation>  <AstroCoordSystem id="UTC-FK5-GEO"/>  <AstroCoords coord_system_id="UTC-FK5-GEO">  <Time>  <TimeInstant>  <ISOTime>2019-05-21T03:02:29.447266</ISOTime>  </TimeInstant>  </Time>  </AstroCoords>  </ObservationLocation>  </ObsDataLocation>  </WhereWhen>  <How>  <Description>Candidate gravitational wave event identified by low-latency analysis</Description>  <Description>H1: LIGO Hanford 4 km gravitational wave detector</Description>  <Description>L1: LIGO Livingston 4 km gravitational wave detector</Description>  <Description>V1: Virgo 3 km gravitational wave detector</Description>  </How>  <Description>Report of a candidate gravitational wave event</Description> </voe:VOEvent> |INFO |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:279 |handle_archive| archived ivo://gwnet/LVC#S190521g-1-Preliminary |INFO |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:186 | __call__| Running handler: handle from llama.listen.gcn |INFO |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:186 | __call__| Running handler: handle_lvc_gcn from llama.listen.gcn |INFO |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:77 |handle_lvc_gcn| Running ``handle_lvc_gcn`` on rundir /tmp/tmpk088nceq with handler LvcGcnXml |INFO |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:83 |handle_lvc_gcn| 2020-05-16 21:14:28.773293: superid: S190521g |INFO |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:83 |handle_lvc_gcn| 2020-05-16 21:14:28.773434: alerttype: Preliminary |INFO |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:97 |handle_lvc_gcn| Event exists, not initializing S190521g-1-Preliminary |DEBUG |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.intent | intent.py:244 | acquire| Acquired EventLock for /tmp/tmpk088nceq/S190521g-1-Preliminary |DEBUG |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.versioning | versioning.py:261 |commit_changes| ``git commit -m`` 'Changes before generating LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq")' in /tmp/tmpk088nceq/S190521g-1-Preliminary |DEBUG |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.intent | intent.py:275 | release| Removed event lock for /tmp/tmpk088nceq/S190521g-1-Preliminary |DEBUG |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.vetoes | vetoes.py:257 | check| Running veto checks. |INFO |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.filehandler | __init__.py:1491|generate_unsafe| Generating LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq/S190521g-1-Preliminary/.tmp.d/LvcGcnXml-7zy2a1x5", parent="LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq")") |WARNING |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.filehandler | __init__.py:1507|generate_unsafe| Wrapping exception raised while generating LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq/S190521g-1-Preliminary/.tmp.d/LvcGcnXml-7zy2a1x5", parent="LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq")"): TypeError("_generate() missing 1 required positional argument: 'payload'") |DEBUG |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.intent | intent.py:244 | acquire| Acquired EventLock for /tmp/tmpk088nceq/S190521g-1-Preliminary |INFO |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.filehandler | __init__.py:1386| checkin| Checking in GenerationResult(fh=LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq/S190521g-1-Preliminary/.tmp.d/LvcGcnXml-7zy2a1x5", parent="LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq")"), err=TypeError("_generate() missing 1 required positional argument: 'payload'")) to LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq"). |ERROR |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.filehandler | __init__.py:1388| checkin| Exception while generating LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq"): GenerationResult(fh=LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq/S190521g-1-Preliminary/.tmp.d/LvcGcnXml-7zy2a1x5", parent="LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq")"), err=TypeError("_generate() missing 1 required positional argument: 'payload'")) |DEBUG |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.intent | intent.py:84 | write| Writing cooldown for CoolDown(eventdir='/tmp/tmpk088nceq/S190521g-1-Preliminary', manifest_filehandlers=[LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq")]) |ERROR |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.versioning | versioning.py:576 | wrapper| Rolling back to last commit. |ERROR |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.versioning | versioning.py:578 | wrapper| Rolled back. |DEBUG |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.intent | intent.py:275 | release| Removed event lock for /tmp/tmpk088nceq/S190521g-1-Preliminary |DEBUG |2020-05-16 21:14:28| MainProcess:2545 |MainThread |llama.filehandler | __init__.py:1351| wrapper| Deleting tempfiles from GenerationResult(fh=LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq/S190521g-1-Preliminary/.tmp.d/LvcGcnXml-7zy2a1x5", parent="LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq")"), err=TypeError("_generate() missing 1 required positional argument: 'payload'")) from atomic generation of LvcGcnXml(eventid="S190521g-1-Preliminary", rundir="/tmp/tmpk088nceq") exception in payload handler Traceback (most recent call last): File "/opt/anaconda/lib/python3.7/site-packages/llama/cli.py", line 975, in wrapper return func(*args, **kwargs) File "/opt/anaconda/lib/python3.7/site-packages/llama/listen/gcn/__init__.py", line 187, in __call__ handler(payload, root) File "/opt/anaconda/lib/python3.7/site-packages/gcn/handlers.py", line 51, in handle handler(payload, root) File "/opt/anaconda/lib/python3.7/site-packages/llama/listen/gcn/__init__.py", line 102, in handle_lvc_gcn voe.generate(payload) File "/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py", line 1523, in generate return self.checkin(self.checkout().generate_unsafe()) File "/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py", line 1348, in wrapper return func(self, gen_result, *args, **kwargs) File "/opt/anaconda/lib/python3.7/site-packages/llama/intent.py", line 429, in wrapper return func(self, gen_result, *args, **kwargs) File "/opt/anaconda/lib/python3.7/site-packages/llama/versioning.py", line 574, in wrapper result = func(self, gen_result, *args, **kwargs) File "/opt/anaconda/lib/python3.7/site-packages/llama/intent.py", line 350, in wrapper res = func(self, gen_result, *args, **kwargs) File "/opt/anaconda/lib/python3.7/site-packages/llama/vetoes.py", line 393, in wrapper return func(self, gen_result, *args, **kwargs) File "/opt/anaconda/lib/python3.7/site-packages/llama/meta.py", line 184, in wrapper result = func(self, gen_result, *args, **kwargs) File "/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py", line 1389, in checkin raise gen_result.err File "/opt/anaconda/lib/python3.7/site-packages/llama/filehandler/__init__.py", line 1496, in generate_unsafe self._generate() TypeError: _generate() missing 1 required positional argument: 'payload' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/opt/anaconda/lib/python3.7/site-packages/gcn/voeventclient.py", line 186, in _ingest_packet handler(payload, root) File "/opt/anaconda/lib/python3.7/site-packages/llama/cli.py", line 980, in wrapper func.__module__, func.__name__) AttributeError: 'LlamaHandlers' object has no attribute '__name__' |INFO |2020-05-16 21:14:29| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:183 | __call__| NEW PAYLOAD. IVORN: ivo://gwnet/LVC#S190521g-1-Preliminary |INFO |2020-05-16 21:14:29| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:186 | __call__| Running handler: handle_archive from llama.listen.gcn |INFO |2020-05-16 21:14:29| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:252 |handle_archive| Running handle_archive on gcn archive directory /tmp/tmpele9uv12 |DEBUG |2020-05-16 21:14:29| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:262 |handle_archive| Received GCN notice: ivo://gwnet/LVC#S190521g-1-Preliminary |INFO |2020-05-16 21:14:29| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:272 |handle_archive| Selected outpath /tmp/tmpele9uv12/2020-05/16/ivo%3A%2F%2Fgwnet%2FLVC%23S190521g-1-Preliminary |INFO |2020-05-16 21:14:29| MainProcess:2545 |MainThread |llama.listen.gcn | __init__.py:278 |handle_archive| outpath /tmp/tmpele9uv12/2020-05/16/ivo%3A%2F%2Fgwnet%2FLVC%23S190521g-1-Preliminary exists, not overwriting. dumping xml: <?xml version="1.0" ?> <voe:VOEvent xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:voe="http://www.ivoa.net/xml/VOEvent/v2.0" xsi:schemaLocation="http://www.ivoa.net/xml/VOEvent/v2.0 http://www.ivoa.net/xml/VOEvent/VOEvent-v2.0.xsd"  version="2.0" role="observation" ivorn="ivo://gwnet/LVC#S190521g-1-Preliminary">  <Who>  <Date>2019-05-21T03:08:44</Date>  <Author>  <contactName>LIGO Scientific Collaboration and Virgo Collaboration</contactName>  </Author>  </Who>  <What>  <Param name="Packet_Type" dataType="int" value="150">  <Description>The Notice Type number is assigned/used within GCN, eg type=150 is an LVC_PRELIMINARY notice</Description>  </Param>  <Param name="internal" dataType="int" value="0">  <Description>Indicates whether this event should be distributed to LSC/Virgo members only</Description>  </Param>  <Param name="Pkt_Ser_Num" dataType="string" value="1">  <Description>A number that increments by 1 each time a new revision is issued for this event</Description>  </Param>  <Param name="GraceID" dataType="string" value="S190521g" ucd="meta.id">  <Description>Identifier in GraceDB</Description>  </Param>  <Param name="AlertType" dataType="string" value="Preliminary" ucd="meta.version">  <Description>VOEvent alert type</Description>  </Param>  <Param name="HardwareInj" dataType="int" value="0" ucd="meta.number">  <Description>Indicates that this event is a hardware injection if 1, no if 0</Description>  </Param>  <Param name="OpenAlert" dataType="int" value="1" ucd="meta.number">  <Description>Indicates that this event is an open alert if 1, no if 0</Description>  </Param>  <Param name="EventPage" dataType="string" value="https://gracedb.ligo.org/superevents/S190521g/view/" ucd="meta.ref.url">  <Description>Web page for evolving status of this GW candidate</Description>  </Param>  <Param name="Instruments" dataType="string" value="H1,L1,V1" ucd="meta.code">  <Description>List of instruments used in analysis to identify this event</Description>  </Param>  <Param name="FAR" dataType="float" value="3.80105501069e-09" ucd="arith.rate;stat.falsealarm" unit="Hz">  <Description>False alarm rate for GW candidates with this strength or greater</Description>  </Param>  <Param name="Group" dataType="string" value="CBC" ucd="meta.code">  <Description>Data analysis working group</Description>  </Param>  <Param name="Pipeline" dataType="string" value="pycbc" ucd="meta.code">  <Description>Low-latency data analysis pipeline</Description>  </Param>  <Param name="Search" dataType="string" value="AllSky" ucd="meta.code">  <Description>Specific low-latency search</Description>  </Param>  <Group type="GW_SKYMAP" name="bayestar">  <Param name="skymap_fits" dataType="string" value="https://gracedb.ligo.org/api/superevents/S190521g/files/bayestar.fits.gz" ucd="meta.ref.url">  <Description>Sky Map FITS</Description>  </Param>  </Group>  <Group type="Classification">  <Param name="BNS" dataType="float" value="0.0" ucd="stat.probability">  <Description>Probability that the source is a binary neutron star merger (both objects lighter than 3 solar masses)</Description>  </Param>  <Param name="NSBH" dataType="float" value="0.0" ucd="stat.probability">  <Description>Probability that the source is a neutron star-black hole merger (primary heavier than 5 solar masses, secondary lighter than 3 solar masses)</Description>  </Param>  <Param name="BBH" dataType="float" value="0.965882031742" ucd="stat.probability">  <Description>Probability that the source is a binary black hole merger (both objects heavier than 5 solar masses)</Description>  </Param>  <Param name="MassGap" dataType="float" value="0.0" ucd="stat.probability">  <Description>Probability that the source has at least one object between 3 and 5 solar masses</Description>  </Param>  <Param name="Terrestrial" dataType="float" value="0.0341179682578" ucd="stat.probability">  <Description>Probability that the source is terrestrial (i.e., a background noise fluctuation or a glitch)</Description>  </Param>  <Description>Source classification: binary neutron star (BNS), neutron star-black hole (NSBH), binary black hole (BBH), MassGap, or terrestrial (noise)</Description>  </Group>  <Group type="Properties">  <Param name="HasNS" dataType="float" value="0.0" ucd="stat.probability">  <Description>Probability that at least one object in the binary has a mass that is less than 3 solar masses</Description>  </Param>  <Param name="HasRemnant" dataType="float" value="0.0" ucd="stat.probability">  <Description>Probability that a nonzero mass was ejected outside the central remnant object</Description>  </Param>  <Description>Qualitative properties of the source, conditioned on the assumption that the signal is an astrophysical compact binary merger</Description>  </Group>  </What>  <WhereWhen>  <ObsDataLocation>  <ObservatoryLocation id="LIGO Virgo"/>  <ObservationLocation>  <AstroCoordSystem id="UTC-FK5-GEO"/>  <AstroCoords coord_system_id="UTC-FK5-GEO">  <Time>  <TimeInstant>  <ISOTime>2019-05-21T03:02:29.447266</ISOTime>  </TimeInstant>  [39 EXECUTED TEST FOR <llama.test.test_listeners.test_gcn.TestGcndS190521g object at 0x7f4737fd6310> TMPDIR CONTENTS: ['S190521g-1-Preliminary'] TMP EVENTDIR CONTENTS: ['FLAGS.json', '.git', '.lvc_gcn.xml.cooldown.json', '.tmp.d', '.gitignore']
Passed utils.py::llama.utils.get_voevent_param 0.01
No log output captured.
Passed utils.py::llama.utils.get_voevent_time 0.00
No log output captured.
Passed utils.py::llama.utils.parameter_factory 0.00
No log output captured.
Passed utils.py::llama.utils.rotate_angs2angs 0.00
No log output captured.
Passed utils.py::llama.utils.rotate_angs2vec 0.00
No log output captured.
Passed utils.py::llama.utils.write_gzip 0.00
No log output captured.
Passed utils.py::llama.utils.write_to_zip 0.01
No log output captured.
Passed dev/data/i3/__init__.py::llama.dev.data.i3.available_versions 0.88
No log output captured.
Passed filehandler/__init__.py::llama.filehandler.JSONFile.checksum 0.00
No log output captured.
Passed files/fermi_grb.py::llama.files.fermi_grb.get_grbs_from_csv 0.01
No log output captured.
Passed files/lvc_gcn_xml.py::llama.files.lvc_gcn_xml.parse_ivorn 0.00
No log output captured.
Passed files/matlab.py::llama.files.matlab.matlab_eval 0.00
No log output captured.
Passed files/healpix/__init__.py::llama.files.healpix.HEALPixSkyMapFileHandler.read_healpix_from_file 0.28
No log output captured.
Passed files/healpix/__init__.py::llama.files.healpix.LvcHEALPixSkyMapFileHandler.read_healpix_from_file 0.01
No log output captured.
Passed files/healpix/psf.py::llama.files.healpix.psf.Psf.skymap_product 1.72
No log output captured.
Passed files/healpix/skymap.py::llama.files.healpix.skymap.HEALPixSkyMap._read_from_hdf5_group 0.01
No log output captured.
Passed files/healpix/skymap.py::llama.files.healpix.skymap.HEALPixSkyMap.dangle 0.00
No log output captured.
Passed files/healpix/skymap.py::llama.files.healpix.skymap.HEALPixSkyMap.nside2ang 0.00
No log output captured.
Passed files/healpix/skymap.py::llama.files.healpix.skymap.psf_gaussian 0.00
No log output captured.
Passed files/healpix/utils.py::llama.files.healpix.utils.nest2uniq 0.00
No log output captured.
Passed files/healpix/utils.py::llama.files.healpix.utils.uniq2nest_and_nside 0.00
No log output captured.
Passed files/healpix/utils.py::llama.files.healpix.utils.uniq2uniq_lowres 0.00
No log output captured.
Passed files/healpix/utils.py::llama.files.healpix.utils.uniq_intersection 0.00
No log output captured.
Passed files/healpix/utils.py::llama.files.healpix.utils.uniq_rasterize 0.00
No log output captured.
Passed files/i3/json.py::llama.files.i3.json.blinder 0.00
No log output captured.
Passed files/i3/json.py::llama.files.i3.json.get_archive 2.76
No log output captured.
Passed files/i3/json.py::llama.files.i3.json.get_archive_and_real_neutrinos 6.66
No log output captured.
Passed files/i3/json.py::llama.files.i3.json.get_dec_filter 0.06
No log output captured.
Passed files/i3/json.py::llama.files.i3.json.get_ra_filter 0.06
No log output captured.
Passed files/i3/json.py::llama.files.i3.json.get_real 2.26
No log output captured.
Passed files/i3/json.py::llama.files.i3.json.neutrino_archive_available_years 0.00
No log output captured.
Passed files/i3/utils.py::llama.files.i3.utils.ra_dec2zen_az 2.20
No log output captured.
Passed files/i3/utils.py::llama.files.i3.utils.zen_az2ra_dec 2.16
No log output captured.
Passed files/lvc_skymap/utils.py::llama.files.lvc_skymap.utils.SkymapFilename.basename 0.00
No log output captured.
Passed files/lvc_skymap/utils.py::llama.files.lvc_skymap.utils.SkymapFilename.extension 0.00
No log output captured.
Passed files/lvc_skymap/utils.py::llama.files.lvc_skymap.utils.SkymapFilename.filename 0.00
No log output captured.
Passed files/lvc_skymap/utils.py::llama.files.lvc_skymap.utils.SkymapFilename.version 0.00
No log output captured.
Passed test/test_bin.py::test_llama_pipeline_parser 0.01
No log output captured.
Passed test/test_bin.py::test_llama_run_parser 0.00
No log output captured.
Passed test/test_bin.py::test_mjd_interval 0.01
No log output captured.
Passed test/test_filehandler.py::test_filehandler_definition_consistency 0.25
------------------------------Captured stdout call------------------------------
searching in llama searching in llama.batch searching in llama.com searching in llama.com.dl searching in llama.com.do searching in llama.com.email searching in llama.com.gracedb searching in llama.com.s3 searching in llama.com.slack searching in llama.dev searching in llama.dev.background searching in llama.dev.background.pvalue searching in llama.dev.background.table searching in llama.dev.background.table_singles searching in llama.dev.clean searching in llama.dev.data searching in llama.dev.data.i3 searching in llama.dev.docs searching in llama.dev.docs.cli searching in llama.dev.dv searching in llama.dev.log searching in llama.dev.log.lvalert searching in llama.dev.upload searching in llama.event searching in llama.filehandler searching in llama.files searching in llama.files.coinc_significance searching in llama.files.healpix searching in llama.files.i3 searching in llama.files.lvc_skymap searching in llama.files.skymap_info searching in llama.files.slack searching in llama.flags searching in llama.install searching in llama.io searching in llama.io.default searching in llama.listen searching in llama.listen.gcn searching in llama.listen.lvalert searching in llama.poll searching in llama.poll.gracedb searching in llama.run searching in llama.serve searching in llama.serve.gui searching in llama.serve.gui.wsgi searching in llama.serve.jupyter searching in llama.test searching in llama.test.test_files searching in llama.test.test_listeners
Passed test/test_pipeline.py::test_default_pipeline_consistency 0.00
No log output captured.
Passed test/test_utils.py::test_memoize_helper 0.00
No log output captured.
Passed test/test_utils.py::test_write_gzip 0.00
No log output captured.
Passed test/test_utils.py::test_rotate_angs2vec 0.00
No log output captured.
Passed test/test_utils.py::test_get_grid_make_grid 0.00
No log output captured.
Passed test/test_utils.py::test_get_grid_north_pole 0.00
No log output captured.