See
<https://ci-beam.apache.org/job/beam_PostCommit_Py_ValCont/6867/display/redirect?page=changes>
Changes:
[sambvfx] [BEAM-8660] Use PortableOptions.artifact_endpoint if provided over
[sambvfx] Add artifact_endpoint to TestJobServicePlan
[sambvfx] Add simple test for artifact_endpoint
[noreply] [BEAM-10844] Add experiment option prebuild_sdk_container to prebuild
[Robin Qiu] Moving to 2.26.0-SNAPSHOT on master branch.
[noreply] [BEAM-9616] Consolidate Element and DoFn json impl (#12925)
------------------------------------------
[...truncated 911.04 KB...]
copying apache_beam/transforms/cy_dataflow_distribution_counter.pxd ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/cy_dataflow_distribution_counter.pyx ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/dataflow_distribution_counter_test.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/deduplicate.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/deduplicate_test.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/display.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/display_test.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/dofn_lifecycle_test.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/environments.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/environments_test.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/external.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/external_it_test.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/external_java.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/external_test.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/external_test_py3.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/external_test_py37.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/periodicsequence.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/periodicsequence_test.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/ptransform.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/ptransform_test.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/py_dataflow_distribution_counter.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/sideinputs.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/sideinputs_test.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/sql.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/sql_test.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/stats.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/stats_test.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/timeutil.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/transforms_keyword_only_args_test_py3.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/trigger.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/trigger_test.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/userstate.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/userstate_test.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/util.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/util_test.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/validate_runner_xlang_test.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/window.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/window_test.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/transforms/write_ptransform_test.py ->
apache-beam-2.26.0.dev0/apache_beam/transforms
copying apache_beam/typehints/__init__.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/typehints/decorators.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/typehints/decorators_test.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/typehints/decorators_test_py3.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/typehints/native_type_compatibility.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/typehints/native_type_compatibility_test.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/typehints/opcodes.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/typehints/row_type.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/typehints/schemas.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/typehints/schemas_test.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/typehints/trivial_inference.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/typehints/trivial_inference_test.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/typehints/trivial_inference_test_py3.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/typehints/typecheck.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/typehints/typecheck_test_py3.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/typehints/typed_pipeline_test.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/typehints/typed_pipeline_test_py3.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/typehints/typehints.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/typehints/typehints_test.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/typehints/typehints_test_py3.py ->
apache-beam-2.26.0.dev0/apache_beam/typehints
copying apache_beam/utils/__init__.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/annotations.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/annotations_test.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/counters.pxd ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/counters.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/counters_test.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/histogram.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/histogram_test.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/interactive_utils.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/interactive_utils_test.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/plugin.py -> apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/processes.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/processes_test.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/profiler.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/proto_utils.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/retry.py -> apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/retry_test.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/shared.py -> apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/shared_test.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/subprocess_server.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/subprocess_server_test.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/thread_pool_executor.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/thread_pool_executor_test.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/timestamp.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/timestamp_test.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/urns.py -> apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/windowed_value.pxd ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/windowed_value.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
copying apache_beam/utils/windowed_value_test.py ->
apache-beam-2.26.0.dev0/apache_beam/utils
Writing apache-beam-2.26.0.dev0/setup.cfg
creating dist
Creating tar archive
removing 'apache-beam-2.26.0.dev0' (and everything under it)
SDK_LOCATION=$(find dist/apache-beam-*.tar.gz)
find dist/apache-beam-*.tar.gz
# Run ValidatesRunner tests on Google Cloud Dataflow service
echo ">>> RUNNING DATAFLOW RUNNER VALIDATESCONTAINER TEST"
>>> RUNNING DATAFLOW RUNNER VALIDATESCONTAINER TEST
python setup.py nosetests \
--attr ValidatesContainer \
--nologcapture \
--processes=1 \
--process-timeout=900 \
--with-xunitmp \
--xunitmp-file=$XUNIT_FILE \
--ignore-files '.*py3\d?\.py$' \
--test-pipeline-options=" \
--runner=TestDataflowRunner \
--project=$PROJECT \
--region=$REGION \
--worker_harness_container_image=$CONTAINER:$TAG \
--staging_location=$GCS_LOCATION/staging-validatesrunner-test \
--temp_location=$GCS_LOCATION/temp-validatesrunner-test \
--output=$GCS_LOCATION/output \
--sdk_location=$SDK_LOCATION \
--num_workers=1 \
--prebuild_sdk_container_base_image=$CONTAINER:$TAG \
--docker_registry_push_url=us.gcr.io/$PROJECT/$USER"
running nosetests
running egg_info
<https://ci-beam.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python3.6/lib/python3.6/site-packages/setuptools/dist.py>:452:
UserWarning: Normalizing '2.26.0.dev' to '2.26.0.dev0'
warnings.warn(tmpl.format(**locals()))
<https://ci-beam.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/gen_protos.py>:243:
UserWarning: Installing grpcio-tools is recommended for development.
warnings.warn('Installing grpcio-tools is recommended for development.')
INFO:gen_protos:Skipping proto regeneration: all files up to date
writing apache_beam.egg-info/PKG-INFO
writing dependency_links to apache_beam.egg-info/dependency_links.txt
writing entry points to apache_beam.egg-info/entry_points.txt
writing requirements to apache_beam.egg-info/requires.txt
writing top-level names to apache_beam.egg-info/top_level.txt
reading manifest file 'apache_beam.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching 'README.md'
warning: no files found matching 'NOTICE'
warning: no files found matching 'LICENSE'
writing manifest file 'apache_beam.egg-info/SOURCES.txt'
WARNING:root:python-snappy is not installed; some tests will be skipped.
WARNING:root:Tensorflow is not installed, so skipping some tests.
<https://ci-beam.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/io/vcfio.py>:50:
UserWarning: VCF IO will support Python 3 after migration to Nucleus, see:
BEAM-5628.
"VCF IO will support Python 3 after migration to Nucleus, "
WARNING:apache_beam.runners.interactive.interactive_environment:Dependencies
required for Interactive Beam PCollection visualization are not available,
please use: `pip install apache-beam[interactive]` to install necessary
dependencies to enable all data visualization features.
WARNING:apache_beam.runners.interactive.interactive_environment:You cannot use
Interactive Beam features when you are not in an interactive environment such
as a Jupyter notebook or ipython terminal.
WARNING:root:Make sure that locally built Python SDK docker image has Python
3.6 interpreter.
WARNING:root:Make sure that locally built Python SDK docker image has Python
3.6 interpreter.
WARNING:root:Make sure that locally built Python SDK docker image has Python
3.6 interpreter.
test_wordcount_fnapi_it (apache_beam.examples.wordcount_it_test.WordCountIT)
... ok
test_wordcount_it_with_prebuilt_sdk_container
(apache_beam.examples.wordcount_it_test.WordCountIT) ... ERROR
test_metrics_fnapi_it
(apache_beam.runners.dataflow.dataflow_exercise_metrics_pipeline_test.ExerciseMetricsPipelineTest)
... ok
======================================================================
ERROR: test_wordcount_it_with_prebuilt_sdk_container
(apache_beam.examples.wordcount_it_test.WordCountIT)
----------------------------------------------------------------------
Traceback (most recent call last):
File
"<https://ci-beam.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/examples/wordcount_it_test.py",>
line 64, in test_wordcount_it_with_prebuilt_sdk_container
prebuild_sdk_container_engine='local_docker')
File
"<https://ci-beam.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/examples/wordcount_it_test.py",>
line 107, in _run_wordcount_it
save_main_session=False,
File
"<https://ci-beam.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/examples/wordcount.py",>
line 94, in run
output | 'Write' >> WriteToText(known_args.output)
File
"<https://ci-beam.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/pipeline.py",>
line 568, in __exit__
self.result = self.run()
File
"<https://ci-beam.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/pipeline.py",>
line 518, in run
allow_proto_holders=True).run(False)
File
"<https://ci-beam.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/pipeline.py",>
line 547, in run
return self.runner.run_pipeline(self, self._options)
File
"<https://ci-beam.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/dataflow/test_dataflow_runner.py",>
line 57, in run_pipeline
self).run_pipeline(pipeline, options)
File
"<https://ci-beam.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/dataflow/dataflow_runner.py",>
line 486, in run_pipeline
environments.DockerEnvironment.from_options(options))
File
"<https://ci-beam.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/transforms/environments.py",>
line 259, in from_options
options)
File
"<https://ci-beam.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/portability/sdk_container_builder.py",>
line 141, in build_container_image
return builder.build()
File
"<https://ci-beam.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/portability/sdk_container_builder.py",>
line 90, in build
self.invoke_docker_build_and_push(container_image_name)
File
"<https://ci-beam.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/portability/sdk_container_builder.py",>
line 154, in invoke_docker_build_and_push
cwd=self._temp_src_dir)
File "/usr/lib/python3.6/subprocess.py", line 423, in run
with Popen(*popenargs, **kwargs) as process:
TypeError: __init__() got an unexpected keyword argument 'capture_output'
----------------------------------------------------------------------
XML: nosetests-beam_python3.6_sdk.xml
----------------------------------------------------------------------
XML:
<https://ci-beam.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/nosetests.xml>
----------------------------------------------------------------------
Ran 3 tests in 555.535s
FAILED (errors=1)
cleanup_container
Untagged:
us.gcr.io/apache-beam-testing/jenkins/beam_python3.6_sdk:20200924-060022
Untagged:
us.gcr.io/apache-beam-testing/jenkins/beam_python3.6_sdk@sha256:edd6b62c81e107996a0a7d4f47a9be71451c34e255ab75f208dd6deed7fc79cf
Deleted: sha256:8e237e12b979d0dafb21cd63aa5b0004438ad07375b3f2fa5f954e3112270279
Deleted: sha256:ce4ad2ab681e06d7d34910b2d1ca414bd8069ef26df2c60f0f1211554fe3c39e
Deleted: sha256:89cc09d820e8b45895a2a94b17b4b19836057ba824ac833830826a5260c71dd6
Deleted: sha256:e07ab006920bbc97b77a7628b2f8c18c7f763d41647e00ce8d27f588d1a480d9
Deleted: sha256:ff3a37733f53e5eba65060dff7d485af841716e5db754349e04783f3cfd7128a
Deleted: sha256:8e74aaf00c539e6b897a9fd1ef3e6d50e18c7321c727ef6617d7c52eb58fb6c0
Deleted: sha256:b0a53f55f60923c415fb56a45c5878d6a94b2adb6f051e3c580af7877bf7a2a9
Deleted: sha256:6657fd502287392aaaaf8e68e55e3341a5e217d5aa9687aed2e89b519de03744
Deleted: sha256:9ccd4443a66a98e933d5d7bf2bb08fb8b25c4a62def09b65c07380655a9fd009
Deleted: sha256:5768162d6c5bde1a9af097c025eec06284af367ff097e8b39e0e6d6722d80387
Deleted: sha256:3277e6ba99b69efac23322f181ff7437d733fd05bd8a01bb188a0b11394716ac
Deleted: sha256:42577e613cf82c3f04a8085cbb1e8295061642318c5b9b549f8b07bf7e0683c9
Deleted: sha256:2cb7ca267acc7413b2f570b11a36aa093f3557eb0554728016fde0945d6ed9c3
Deleted: sha256:05144c36ce42210b64dfea60a76dfd73e33e1a8790ea15834d36de55ec7fbb1e
Deleted: sha256:0e6ffd7b9fa04cd13e7b6453d269dd6a5dbb450ca093b834c03522fb0bdfe65c
Deleted: sha256:dfe52453a61340487a02ebe4c17ff1afbb31fcf1ac4c32349e93dfb4a42db3a5
Deleted: sha256:d565ec846033ba6e773aff9b7513b75624d18cb8627f76c36c9bd8ba32a17792
Deleted: sha256:3140869246d686fce557ea194b7c55263eb8cdc5bdf7446a277839bdbba13ff8
Deleted: sha256:7719352d4ca91fa2d4426412592983712e7a96dbb138193644b2a91439efc2b2
Deleted: sha256:c5c7c49f4f1b68f58a735f8859e9472d72d259cb3b79787f95ffb214c59b68e1
Deleted: sha256:ed8f153e645ab5bd49716d376030e6743af2f9703503420afc0c5fb0c0054ac4
Deleted: sha256:1bd13f2fd15f0190fe361caf5c66cdf01af799e1193e525b6f047ebf2eb9041e
Deleted: sha256:65590d0288c796173029cca9bf698c4206a072e5170fabbf6434a5cb5e07198c
Deleted: sha256:8532662aad9b75d2020cedc77e83524741cffefb7c9b4fbca4a728f89f8478f1
Deleted: sha256:5868e58900372714b34ddf39de25a09f1c1262f4e1ccfd37f25a3072dba0db7b
Deleted: sha256:518da30e80e3c7b6996ecb6b252a7b4153fc6477993c44802c6937050269bca1
Deleted: sha256:a111c1b5c842e7531e0466827c15e0ba9481388e60b36e23810c56d2c882360d
Deleted: sha256:1a88e58aa0f098392c827bbfa021bf506cf151d5377bf7fad49ce8db814a62a8
Deleted: sha256:98dd57d78722eb24cdb297b885bd072408a506c869e57df53ca604e80324ddc6
Deleted: sha256:c897183fc21c52e40b3fc32af9524997969379459da99fa3432375088ed77383
Deleted: sha256:934b840049e5cdca21e5ac287f9cf174cc45ddec4f329c6c7b313e027c64131e
Deleted: sha256:33eeb62b8f6bb16c2b6acaa1b25d8e2010d59773ee4102ece1e0b9a505f59981
Deleted: sha256:0416c2c8771469cfec5b877f89cad3f57beb4ad1dc6322e9ccafb525035f50a6
Deleted: sha256:7744523457e72eee8e740e291bd03dffb1463655a1d3349908bbad9af41b9baa
Deleted: sha256:d8f7a83798627893fcd167a244e68fd4a3a99eb67bd6ac4e4bcb93e4c890c46c
Deleted: sha256:3f5983ad3fd8c1cd234380eea1fc6d38947f0e73dcfd96a58533297237efa3ac
Deleted: sha256:801799d8621fc731f8258c1319e93f6955d2ab8f4ce0887b96c9ce5e941a0357
Deleted: sha256:88d9de6e62553ce6a8973641adebf2fabbc38a288f2660b194dbdac9b75ff0a8
Deleted: sha256:0a3a64059e0759ee4c7095bc2fcf9d9a42348bf05d62c9725c1e252c325a1154
docker images --format '{{.Repository}}:{{.Tag}}' | grep 'prebuilt_sdk'
"docker rmi" requires at least 1 argument.
See 'docker rmi --help'.
Usage: docker rmi [OPTIONS] IMAGE [IMAGE...]
Remove one or more images
Failed to remove prebuilt sdk container
Digests:
-
us.gcr.io/apache-beam-testing/jenkins/beam_python3.6_sdk@sha256:edd6b62c81e107996a0a7d4f47a9be71451c34e255ab75f208dd6deed7fc79cf
Associated tags:
- 20200924-060022
Tags:
- us.gcr.io/apache-beam-testing/jenkins/beam_python3.6_sdk:20200924-060022
Deleted
[us.gcr.io/apache-beam-testing/jenkins/beam_python3.6_sdk:20200924-060022].
Deleted
[us.gcr.io/apache-beam-testing/jenkins/beam_python3.6_sdk@sha256:edd6b62c81e107996a0a7d4f47a9be71451c34e255ab75f208dd6deed7fc79cf].
Removed the container
Build step 'Execute shell' marked build as failure
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]