Closed serhiy-storchaka closed 4 years ago
4.
$ time neuro --show-traceback storage cp -r storage:fastai /tmp
Copy storage://serhiystorchaka/fastai => file:///tmp/fastai
storage://serhiystorchaka/fastai/data/oxford-iiit-pet/images ...
english_cocker_spaniel_119.jpg [0.00%] 0B of 122.2K
american_bulldog_167.jpg [0.00%] 0B of 82.48K
scottish_terrier_111.jpg [0.00%] 0B of 132.9K
german_shorthaired_178.jpg [0.00%] 0B of 145.6K
pug_12.jpg [0.00%] 0B of 88.36K
american_bulldog_27.jpg [0.00%] 0B of 155K
american_pit_bull_terrier_76.jpg [0.00%] 0B of 180.5K
Maine_Coon_107.jpg [0.00%] 0B of 74.53K
japanese_chin_41.jpg [0.00%] 0B of 136.4K
ERROR: Connection error (None)
Traceback (most recent call last):
File "/home/serhiy/neuromation/platform-client-python/neuromation/cli/main.py", line 288, in main
cli.main(args=args, standalone_mode=False)
File "/home/serhiy/neuromation/platform-client-python/venv/lib/python3.6/site-packages/click/core.py", line 717, in main
rv = self.invoke(ctx)
File "/home/serhiy/neuromation/platform-client-python/venv/lib/python3.6/site-packages/click/core.py", line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/serhiy/neuromation/platform-client-python/venv/lib/python3.6/site-packages/click/core.py", line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/serhiy/neuromation/platform-client-python/venv/lib/python3.6/site-packages/click/core.py", line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/home/serhiy/neuromation/platform-client-python/venv/lib/python3.6/site-packages/click/core.py", line 555, in invoke
return callback(*args, **kwargs)
File "/home/serhiy/neuromation/platform-client-python/venv/lib/python3.6/site-packages/click/decorators.py", line 27, in new_func
return f(get_current_context().obj, *args, **kwargs)
File "/home/serhiy/neuromation/platform-client-python/neuromation/cli/utils.py", line 191, in wrapper
debug=root.verbosity >= 2, # see main:setup_logging for constants
File "/home/serhiy/neuromation/platform-client-python/neuromation/cli/asyncio_utils.py", line 63, in run
return loop.run_until_complete(main_task)
File "/usr/lib/python3.6/asyncio/base_events.py", line 484, in run_until_complete
return future.result()
File "/home/serhiy/neuromation/platform-client-python/neuromation/cli/utils.py", line 139, in _run_async_function
return await func(root, *args, **kwargs)
File "/home/serhiy/neuromation/platform-client-python/neuromation/cli/storage.py", line 335, in cp
src, dst, update=update, progress=progress_obj
File "/home/serhiy/neuromation/platform-client-python/neuromation/api/storage.py", line 563, in download_dir
src, dst, path, update=update, progress=progress, queue=queue
File "/home/serhiy/neuromation/platform-client-python/neuromation/api/storage.py", line 695, in _run_progress
await task
File "/home/serhiy/neuromation/platform-client-python/neuromation/api/storage.py", line 683, in wrapped
await coro
File "/home/serhiy/neuromation/platform-client-python/neuromation/api/storage.py", line 631, in _download_dir
await _run_concurrently(tasks)
File "/home/serhiy/neuromation/platform-client-python/neuromation/api/storage.py", line 668, in _run_concurrently
await task
File "/home/serhiy/neuromation/platform-client-python/neuromation/api/storage.py", line 631, in _download_dir
await _run_concurrently(tasks)
File "/home/serhiy/neuromation/platform-client-python/neuromation/api/storage.py", line 668, in _run_concurrently
await task
File "/home/serhiy/neuromation/platform-client-python/neuromation/api/storage.py", line 631, in _download_dir
await _run_concurrently(tasks)
File "/home/serhiy/neuromation/platform-client-python/neuromation/api/storage.py", line 668, in _run_concurrently
await task
File "/home/serhiy/neuromation/platform-client-python/neuromation/api/storage.py", line 631, in _download_dir
await _run_concurrently(tasks)
File "/home/serhiy/neuromation/platform-client-python/neuromation/api/storage.py", line 668, in _run_concurrently
await task
File "/home/serhiy/neuromation/platform-client-python/neuromation/api/storage.py", line 631, in _download_dir
await _run_concurrently(tasks)
File "/home/serhiy/neuromation/platform-client-python/neuromation/api/storage.py", line 668, in _run_concurrently
await task
File "/home/serhiy/neuromation/platform-client-python/neuromation/api/storage.py", line 536, in _download_file
async for chunk in self.open(src):
File "/home/serhiy/neuromation/platform-client-python/neuromation/api/storage.py", line 253, in open
async with self._core.request("GET", url, timeout=timeout) as resp:
File "/home/serhiy/neuromation/platform-client-python/venv/lib/python3.6/site-packages/async_generator/_util.py", line 34, in __aenter__
return await self._agen.asend(None)
File "/home/serhiy/neuromation/platform-client-python/neuromation/api/core.py", line 119, in request
timeout=timeout,
File "/home/serhiy/neuromation/platform-client-python/venv/lib/python3.6/site-packages/aiohttp/client.py", line 1012, in __aenter__
self._resp = await self._coro
File "/home/serhiy/neuromation/platform-client-python/venv/lib/python3.6/site-packages/aiohttp/client.py", line 504, in _request
await resp.start(conn)
File "/home/serhiy/neuromation/platform-client-python/venv/lib/python3.6/site-packages/aiohttp/client_reqrep.py", line 847, in start
message, payload = await self._protocol.read() # type: ignore # noqa
File "/home/serhiy/neuromation/platform-client-python/venv/lib/python3.6/site-packages/aiohttp/streams.py", line 591, in read
await self._waiter
aiohttp.client_exceptions.ServerDisconnectedError: None
real 6m8.857s
user 0m11.599s
sys 0m1.468s
Meanwhile, I cannot reproduce any of issues now. I ran uploading a large tree 100 times, and experimented with larger trees and different client configurations, but all were passed successfully. Maybe #1107 have larger affect than I expected, or it was affected by changes on the server side. In any case I am closing this issue. If we encounter any problem, we will open a new issue.
I have encountered the following issues when copying a large tree:
1.
2.
3.
(and hanged).
The first two could be solved by catching an error and retrying the request. But the later likely means a deadlock.