Error: Newline or carriage return character detected in HTTP status message or header

Hello

I get the following error when pulling from dvc. Any ideas where such problems come from or how to debug my configuration?

dvc pull

ERROR: unexpected error - An HTTP Client raised an unhandled exception: Newline or carriage return character detected in HTTP status message or header. This is a potential security issue.

Here the system info

DVC version: 2.10.0 (pip)

Platform: Python 3.9.5 on Linux-5.10.16.3-microsoft-standard-WSL2-x86_64-with-glibc2.27
Supports:
webhdfs (fsspec = 2022.5.0),
http (aiohttp = 3.8.1, aiohttp-retry = 2.5.0),
https (aiohttp = 3.8.1, aiohttp-retry = 2.5.0),
s3 (s3fs = 2022.5.0, boto3 = 1.21.21)
Cache types: https://error.dvc.org/no-dvc-cache
Caches: local
Remotes: s3
Workspace directory: ext4 on /dev/sdb
Repo: dvc, git

Hello @K99!
You could get more info about this error via dvc pull -v. Would it be possible to post it?

Hello @Paffciu

Thank you for following up.

Here the verbose output.

dvc pull -v

2022-07-12 11:37:16,352 DEBUG: Preparing to transfer data from ‘obs-globos-romahelper-p/dvc-romahelper-data’ to ‘/home/u234798/work/romahelper/romahelper-data/.dvc/cache’
2022-07-12 11:37:16,352 DEBUG: Preparing to collect status from ‘/home/u234798/work/romahelper/romahelper-data/.dvc/cache’
2022-07-12 11:37:16,352 DEBUG: Collecting status from ‘/home/u234798/work/romahelper/romahelper-data/.dvc/cache’
2022-07-12 11:37:16,352 DEBUG: Preparing to collect status from ‘obs-globos-romahelper-p/dvc-romahelper-data’
2022-07-12 11:37:16,353 DEBUG: Collecting status from ‘obs-globos-romahelper-p/dvc-romahelper-data’
2022-07-12 11:37:16,353 DEBUG: Querying 1 hashes via object_exists
2022-07-12 11:37:18,660 ERROR: unexpected error - An HTTP Client raised an unhandled exception: Newline or carriage return character detected in HTTP status message or header. This is a potential security issue.

Traceback (most recent call last):
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/output.py”, line 851, in get_dir_cache
ocheck(self.odb, obj)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/data/init.py”, line 19, in check
odb.check(obj.hash_info, **kwargs)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/objects/db.py”, line 172, in check
obj.check(self, check_hash=check_hash)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/objects/file.py”, line 66, in check
self._check_hash(odb)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/objects/file.py”, line 72, in _check_hash
_, actual = get_file_hash(
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/data/stage.py”, line 88, in get_file_hash
meta, hash_info = _get_file_hash(fs_path, fs, name)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/data/stage.py”, line 62, in _get_file_hash
info = _adapt_info(fs.info(fs_path), fs.scheme)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/fs/local.py”, line 148, in info
return self.fs.info(path)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/fsspec/implementations/local.py”, line 80, in info
out = os.stat(path, follow_symlinks=False)
FileNotFoundError: [Errno 2] No such file or directory: ‘/home/u234798/work/romahelper/romahelper-data/.dvc/cache/3a/0320c4291ca4972bd75cca1c874fdf.dir’

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/cli/init.py”, line 78, in main
ret = cmd.do_run()
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/cli/command.py”, line 22, in do_run
return self.run()
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/commands/data_sync.py”, line 31, in run
stats = self.repo.pull(
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/repo/init.py”, line 48, in wrapper
return f(repo, *args, **kwargs)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/repo/pull.py”, line 34, in pull
processed_files_count = self.fetch(
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/repo/init.py”, line 48, in wrapper
return f(repo, *args, **kwargs)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/repo/fetch.py”, line 45, in fetch
used = self.used_objs(
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/repo/init.py”, line 420, in used_objs
for odb, objs in self.index.used_objs(
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/repo/index.py”, line 219, in used_objs
for odb, objs in stage.get_used_objs(
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/stage/init.py”, line 661, in get_used_objs
for odb, objs in out.get_used_objs(*args, **kwargs).items():
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/output.py”, line 931, in get_used_objs
obj = self._collect_used_dir_cache(**kwargs)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/output.py”, line 873, in _collect_used_dir_cache
self.get_dir_cache(jobs=jobs, remote=remote)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/output.py”, line 855, in get_dir_cache
self.repo.cloud.pull([obj.hash_info], **kwargs)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/data_cloud.py”, line 114, in pull
return transfer(
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/data/transfer.py”, line 154, in transfer
status = compare_status(
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/data/status.py”, line 169, in compare_status
src_exists, src_missing = status(
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/data/status.py”, line 124, in status
exists = hashes.intersection(
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/data/status.py”, line 49, in _indexed_dir_hashes
dir_exists.update(odb.list_hashes_exists(dir_hashes - dir_exists, jobs))
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/objects/db.py”, line 370, in list_hashes_exists
ret = list(itertools.compress(hashes, in_remote))
File “/home/u234798/miniconda3/lib/python3.9/concurrent/futures/_base.py”, line 608, in result_iterator
yield fs.pop().result()
File “/home/u234798/miniconda3/lib/python3.9/concurrent/futures/_base.py”, line 445, in result
return self.__get_result()
File “/home/u234798/miniconda3/lib/python3.9/concurrent/futures/_base.py”, line 390, in __get_result
raise self._exception
File “/home/u234798/miniconda3/lib/python3.9/concurrent/futures/thread.py”, line 52, in run
result = self.fn(*self.args, **self.kwargs)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/objects/db.py”, line 361, in exists_with_progress
ret = self.fs.exists(fs_path)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/dvc/fs/fsspec_wrapper.py”, line 81, in exists
return self.fs.exists(path)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/fsspec/asyn.py”, line 86, in wrapper
return sync(self.loop, func, *args, **kwargs)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/fsspec/asyn.py”, line 66, in sync
raise return_result
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/fsspec/asyn.py”, line 26, in _runner
result[0] = await coro
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/s3fs/core.py”, line 888, in _exists
await self._info(path, bucket, key, version_id=version_id)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/s3fs/core.py”, line 1140, in _info
out = await self._call_s3(
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/s3fs/core.py”, line 332, in _call_s3
return await _error_wrapper(
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/s3fs/core.py”, line 137, in _error_wrapper
raise err
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/s3fs/core.py”, line 110, in _error_wrapper
return await func(*args, **kwargs)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/aiobotocore/client.py”, line 251, in _make_api_call
http, parsed_response = await self._make_request(
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/aiobotocore/client.py”, line 271, in _make_request
return await self._endpoint.make_request(operation_model, request_dict)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/aiobotocore/endpoint.py”, line 80, in _send_request
while await self._needs_retry(attempts, operation_model,
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/aiobotocore/endpoint.py”, line 213, in _needs_retry
responses = await self._event_emitter.emit(
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/aiobotocore/hooks.py”, line 50, in _emit
response = await resolve_awaitable(handler(**kwargs))
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/aiobotocore/_helpers.py”, line 11, in resolve_awaitable
return await obj
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/aiobotocore/retryhandler.py”, line 89, in _call
if await resolve_awaitable(self._checker(**checker_kwargs)):
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/aiobotocore/_helpers.py”, line 11, in resolve_awaitable
return await obj
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/aiobotocore/retryhandler.py”, line 107, in _call
should_retry = await self._should_retry(attempt_number, response,
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/aiobotocore/retryhandler.py”, line 129, in _should_retry
return await resolve_awaitable(
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/aiobotocore/_helpers.py”, line 11, in resolve_awaitable
return await obj
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/aiobotocore/retryhandler.py”, line 146, in _call
checker(attempt_number, response,
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/botocore/retryhandler.py”, line 231, in call
return self._check_caught_exception(
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/botocore/retryhandler.py”, line 374, in _check_caught_exception
raise caught_exception
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/aiobotocore/endpoint.py”, line 149, in _do_get_response
http_response = await self._send(request)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/aiobotocore/endpoint.py”, line 229, in _send
return await self.http_session.send(request)
File “/home/u234798/work/romahelper/romahelper-data/.venv/lib/python3.9/site-packages/aiobotocore/httpsession.py”, line 220, in send
raise HTTPClientError(error=e)
botocore.exceptions.HTTPClientError: An HTTP Client raised an unhandled exception: Newline or carriage return character detected in HTTP status message or header. This is a potential security issue.

2022-07-12 11:37:18,723 DEBUG: Version info for developers:
DVC version: 2.10.0 (pip)

Platform: Python 3.9.5 on Linux-5.10.16.3-microsoft-standard-WSL2-x86_64-with-glibc2.27
Supports:
webhdfs (fsspec = 2022.5.0),
http (aiohttp = 3.8.1, aiohttp-retry = 2.5.0),
https (aiohttp = 3.8.1, aiohttp-retry = 2.5.0),
s3 (s3fs = 2022.5.0, boto3 = 1.21.21)
Cache types: https://error.dvc.org/no-dvc-cache
Caches: local
Remotes: s3
Workspace directory: ext4 on /dev/sdb
Repo: dvc, git

Having any troubles? Hit us up at Support, we are always happy to help!
2022-07-12 11:37:18,725 DEBUG: Analytics is disabled.

Sorry for the strange formatting.

Hi @K99
It says

FileNotFoundError: [Errno 2] No such file or directory: ‘/home/u234798/work/romahelper/romahelper-data/.dvc/cache/3a/0320c4291ca4972bd75cca1c874fdf.dir’

Had you verified that all of your desired cache already been pushed to the remote?

Hi @YanxiangGao

There was a problem with empty/wrong credentials in the env vars, which probably caused the ‘newline’ error.

Thank you for your help and sorry for the trouble.

1 Like