B2_Command_Line_Tool icon indicating copy to clipboard operation
B2_Command_Line_Tool copied to clipboard

b2 sync fails with Connection error

Open dhyengit opened this issue 7 years ago • 2 comments

My b2 sync will run for a few weeks and then eventually there will be this traceback and any subsqeuent attempt to sync will fail with an error. How do I start my sync again, and how do I prevent this from happening again?

ERROR:b2.console_tool:ConsoleTool command error
Traceback (most recent call last):
  File "build/bdist.linux-x86_64/egg/b2/console_tool.py", line 1031, in run_command
    return command.run(args)
  File "build/bdist.linux-x86_64/egg/b2/console_tool.py", line 816, in run
    allow_empty_source=args.allowEmptySource,
  File "/usr/local/lib/python2.7/dist-packages/logfury-0.1.2-py2.7.egg/logfury/v0_1/trace_call.py", line 84, in wrapper
    return function(*wrapee_args, **wrapee_kwargs)
  File "build/bdist.linux-x86_64/egg/b2/sync/sync.py", line 261, in sync_folders
    source_folder, dest_folder, args, now_millis, reporter
  File "build/bdist.linux-x86_64/egg/b2/sync/sync.py", line 135, in make_folder_sync_actions
    dest_file) in zip_folders(source_folder, dest_folder, reporter, exclusions, inclusions):
  File "build/bdist.linux-x86_64/egg/b2/sync/sync.py", line 93, in zip_folders
    current_b = next_or_none(iter_b)
  File "build/bdist.linux-x86_64/egg/b2/sync/sync.py", line 36, in next_or_none
    return six.advance_iterator(iterator)
  File "build/bdist.linux-x86_64/egg/b2/sync/folder.py", line 201, in all_files
    self.folder_name, show_versions=True, recursive=True, fetch_count=1000
  File "build/bdist.linux-x86_64/egg/b2/bucket.py", line 208, in ls
    self.id_, start_file_name, start_file_id, fetch_count
  File "build/bdist.linux-x86_64/egg/b2/session.py", line 38, in wrapper
    return f(api_url, account_auth_token, *args, **kwargs)
  File "build/bdist.linux-x86_64/egg/b2/raw_api.py", line 361, in list_file_versions
    maxFileCount=max_file_count
  File "build/bdist.linux-x86_64/egg/b2/raw_api.py", line 138, in _post_json
    return self.b2_http.post_json_return_json(url, headers, params)
  File "build/bdist.linux-x86_64/egg/b2/b2http.py", line 299, in post_json_return_json
    return self.post_content_return_json(url, headers, data, try_count, params)
  File "build/bdist.linux-x86_64/egg/b2/b2http.py", line 272, in post_content_return_json
    response = _translate_and_retry(do_post, try_count, post_params)
  File "build/bdist.linux-x86_64/egg/b2/b2http.py", line 116, in _translate_and_retry
    return _translate_errors(fcn, post_params)
  File "build/bdist.linux-x86_64/egg/b2/b2http.py", line 76, in _translate_errors
    raise B2ConnectionError(str(e0))
B2ConnectionError: Connection error: ('Connection aborted.', error(104, 'Connection reset by peer'))
ERROR: Connection error: ('Connection aborted.', error(104, 'Connection reset by peer'))
Sat Mar 3 00:08:32 PST 2018
ERROR: Connection error: HTTPSConnectionPool(host='api001.backblazeb2.com', port=443): Max retries exceeded with url: /b2api/v1/b2_list_buckets (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7f8f67db3950>: Failed to establish a new connection: [Errno -2] Name or service not known',))
Sun Mar 4 00:00:02 PST 2018
ERROR: Connection error: HTTPSConnectionPool(host='api001.backblazeb2.com', port=443): Max retries exceeded with url: /b2api/v1/b2_list_buckets (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7f291064d950>: Failed to establish a new connection: [Errno -2] Name or service not known',))
Mon Mar 5 00:00:02 PST 2018
ERROR: Connection error: HTTPSConnectionPool(host='api001.backblazeb2.com', port=443): Max retries exceeded with url: /b2api/v1/b2_list_buckets (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7f08bd22a950>: Failed to establish a new connection: [Errno -2] Name or service not known',))
Tue Mar 6 00:00:02 PST 2018
ERROR: Connection error: HTTPSConnectionPool(host='api001.backblazeb2.com', port=443): Max retries exceeded with url: /b2api/v1/b2_list_buckets (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7f950737b950>: Failed to establish a new connection: [Errno -2] Name or service not known',))
Wed Mar 7 00:00:02 PST 2018
ERROR: Connection error: HTTPSConnectionPool(host='api001.backblazeb2.com', port=443): Max retries exceeded with url: /b2api/v1/b2_list_buckets (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7f6306ddb950>: Failed to establish a new connection: [Errno -2] Name or service not known',))
Thu Mar 8 00:00:02 PST 2018
ERROR: Connection error: HTTPSConnectionPool(host='api001.backblazeb2.com', port=443): Max retries exceeded with url: /b2api/v1/b2_list_buckets (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7f84ef093950>: Failed to establish a new connection: [Errno -2] Name or service not known',))
Fri Mar 9 00:00:02 PST 2018

dhyengit avatar Mar 28 '18 01:03 dhyengit

You should be able to restart your sync just by running the same command again. It should relatively quickly scan through the files it has already done, and then get to work on the ones that haven't been done.

I'm a little puzzled trying to figure out what happened here. It would be good to improve the error reporting in the tool.

One weird thing is that there's an error at midnight, PST, every day for 7 days is a row. The first error is a connection reset, and the rest are "Name or service not known". Could there be a networking problem between the computer where the sync is running and api001.backblazeb2.com?

bwbeach avatar Mar 28 '18 03:03 bwbeach

This error is clearly caused by user's DNS transient failure and is an issue specific to his environment. Basically DNS stops working at midnight for some reason.

It is very interesting to see a sync session that long!

Actually, it seems that the last error is the connection reset.

ppolewicz avatar Mar 28 '18 09:03 ppolewicz