SemenMartynov / Software-Engineering-2022

Peter the Great St. Petersburg Polytechnic University: Software Engineering course 2022
MIT License
4 stars 1 forks source link

Цаплин Илья. Network Programming x-course Spring 2023 #331

Closed TsaplinIA closed 1 year ago

TsaplinIA commented 1 year ago

Мини блокчейн

SemenMartynov commented 1 year ago
smart@thinkpad$ docker compose --verbose up
[+] Building 0.0s (0/0)                                                         
[+] Running 4/4
 ✔ Network smallblockchain2023_default    Created                          0.0s 
 ✔ Container smallblockchain2023-node1-1  Created                          0.1s 
 ✔ Container smallblockchain2023-node3-1  Created                          0.1s 
 ✔ Container smallblockchain2023-node2-1  Created                          0.1s 
Attaching to smallblockchain2023-node1-1, smallblockchain2023-node2-1, smallblockchain2023-node3-1
smallblockchain2023-node3-1  | INFO:     Will watch for changes in these directories: ['/']
smallblockchain2023-node3-1  | INFO:     Uvicorn running on http://0.0.0.0:6060 (Press CTRL+C to quit)
smallblockchain2023-node3-1  | INFO:     Started reloader process [1] using StatReload
smallblockchain2023-node1-1  | INFO:     Will watch for changes in these directories: ['/']
smallblockchain2023-node1-1  | INFO:     Uvicorn running on http://0.0.0.0:6060 (Press CTRL+C to quit)
smallblockchain2023-node1-1  | INFO:     Started reloader process [1] using StatReload
smallblockchain2023-node2-1  | INFO:     Will watch for changes in these directories: ['/']
smallblockchain2023-node2-1  | INFO:     Uvicorn running on http://0.0.0.0:6060 (Press CTRL+C to quit)
smallblockchain2023-node2-1  | INFO:     Started reloader process [1] using StatReload
smallblockchain2023-node2-1  | Process SpawnProcess-1:
smallblockchain2023-node2-1  | Traceback (most recent call last):
smallblockchain2023-node2-1  |   File "/usr/lib/python3.10/multiprocessing/process.py", line 314, in _bootstrap
smallblockchain2023-node2-1  |     self.run()
smallblockchain2023-node2-1  |   File "/usr/lib/python3.10/multiprocessing/process.py", line 108, in run
smallblockchain2023-node2-1  |     self._target(*self._args, **self._kwargs)
smallblockchain2023-node2-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/_subprocess.py", line 76, in subprocess_started
smallblockchain2023-node2-1  |     target(sockets=sockets)
smallblockchain2023-node2-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/server.py", line 61, in run
smallblockchain2023-node2-1  |     return asyncio.run(self.serve(sockets=sockets))
smallblockchain2023-node2-1  |   File "/usr/lib/python3.10/asyncio/runners.py", line 44, in run
smallblockchain2023-node2-1  |     return loop.run_until_complete(main)
smallblockchain2023-node2-1  |   File "/usr/lib/python3.10/asyncio/base_events.py", line 646, in run_until_complete
smallblockchain2023-node2-1  |     return future.result()
smallblockchain2023-node2-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/server.py", line 68, in serve
smallblockchain2023-node2-1  |     config.load()
smallblockchain2023-node2-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/config.py", line 473, in load
smallblockchain2023-node2-1  |     self.loaded_app = import_from_string(self.app)
smallblockchain2023-node2-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/importer.py", line 21, in import_from_string
smallblockchain2023-node2-1  |     module = importlib.import_module(module_str)
smallblockchain2023-node2-1  |   File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module
smallblockchain2023-node2-1  |     return _bootstrap._gcd_import(name[level:], package, level)
smallblockchain2023-node2-1  |   File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
smallblockchain2023-node2-1  |   File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
smallblockchain2023-node2-1  |   File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
smallblockchain2023-node2-1  |   File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
smallblockchain2023-node2-1  |   File "<frozen importlib._bootstrap_external>", line 883, in exec_module
smallblockchain2023-node2-1  |   File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
smallblockchain2023-node2-1  |   File "/utils.py", line 9, in <module>
smallblockchain2023-node2-1  |     from config import PORT, NODE_LIST
smallblockchain2023-node2-1  |   File "/config.py", line 17, in <module>
smallblockchain2023-node2-1  |     PORT = config("APP_PORT", cast=int)
smallblockchain2023-node2-1  |   File "/usr/local/lib/python3.10/dist-packages/starlette/config.py", line 100, in __call__
smallblockchain2023-node2-1  |     return self.get(key, cast, default)
smallblockchain2023-node2-1  |   File "/usr/local/lib/python3.10/dist-packages/starlette/config.py", line 117, in get
smallblockchain2023-node2-1  |     raise KeyError(f"Config '{key}' is missing, and has no default.")
smallblockchain2023-node2-1  | KeyError: "Config 'APP_PORT' is missing, and has no default."
smallblockchain2023-node3-1  | Process SpawnProcess-1:
smallblockchain2023-node3-1  | Traceback (most recent call last):
smallblockchain2023-node3-1  |   File "/usr/lib/python3.10/multiprocessing/process.py", line 314, in _bootstrap
smallblockchain2023-node3-1  |     self.run()
smallblockchain2023-node3-1  |   File "/usr/lib/python3.10/multiprocessing/process.py", line 108, in run
smallblockchain2023-node3-1  |     self._target(*self._args, **self._kwargs)
smallblockchain2023-node3-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/_subprocess.py", line 76, in subprocess_started
smallblockchain2023-node3-1  |     target(sockets=sockets)
smallblockchain2023-node3-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/server.py", line 61, in run
smallblockchain2023-node3-1  |     return asyncio.run(self.serve(sockets=sockets))
smallblockchain2023-node3-1  |   File "/usr/lib/python3.10/asyncio/runners.py", line 44, in run
smallblockchain2023-node3-1  |     return loop.run_until_complete(main)
smallblockchain2023-node3-1  |   File "/usr/lib/python3.10/asyncio/base_events.py", line 646, in run_until_complete
smallblockchain2023-node3-1  |     return future.result()
smallblockchain2023-node3-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/server.py", line 68, in serve
smallblockchain2023-node3-1  |     config.load()
smallblockchain2023-node3-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/config.py", line 473, in load
smallblockchain2023-node3-1  |     self.loaded_app = import_from_string(self.app)
smallblockchain2023-node3-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/importer.py", line 21, in import_from_string
smallblockchain2023-node3-1  |     module = importlib.import_module(module_str)
smallblockchain2023-node3-1  |   File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module
smallblockchain2023-node3-1  |     return _bootstrap._gcd_import(name[level:], package, level)
smallblockchain2023-node3-1  |   File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
smallblockchain2023-node3-1  |   File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
smallblockchain2023-node3-1  |   File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
smallblockchain2023-node3-1  |   File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
smallblockchain2023-node3-1  |   File "<frozen importlib._bootstrap_external>", line 883, in exec_module
smallblockchain2023-node3-1  |   File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
smallblockchain2023-node3-1  |   File "/utils.py", line 9, in <module>
smallblockchain2023-node3-1  |     from config import PORT, NODE_LIST
smallblockchain2023-node3-1  |   File "/config.py", line 17, in <module>
smallblockchain2023-node3-1  |     PORT = config("APP_PORT", cast=int)
smallblockchain2023-node3-1  |   File "/usr/local/lib/python3.10/dist-packages/starlette/config.py", line 100, in __call__
smallblockchain2023-node3-1  |     return self.get(key, cast, default)
smallblockchain2023-node3-1  |   File "/usr/local/lib/python3.10/dist-packages/starlette/config.py", line 117, in get
smallblockchain2023-node3-1  |     raise KeyError(f"Config '{key}' is missing, and has no default.")
smallblockchain2023-node3-1  | KeyError: "Config 'APP_PORT' is missing, and has no default."
smallblockchain2023-node1-1  | Process SpawnProcess-1:
smallblockchain2023-node1-1  | Traceback (most recent call last):
smallblockchain2023-node1-1  |   File "/usr/lib/python3.10/multiprocessing/process.py", line 314, in _bootstrap
smallblockchain2023-node1-1  |     self.run()
smallblockchain2023-node1-1  |   File "/usr/lib/python3.10/multiprocessing/process.py", line 108, in run
smallblockchain2023-node1-1  |     self._target(*self._args, **self._kwargs)
smallblockchain2023-node1-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/_subprocess.py", line 76, in subprocess_started
smallblockchain2023-node1-1  |     target(sockets=sockets)
smallblockchain2023-node1-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/server.py", line 61, in run
smallblockchain2023-node1-1  |     return asyncio.run(self.serve(sockets=sockets))
smallblockchain2023-node1-1  |   File "/usr/lib/python3.10/asyncio/runners.py", line 44, in run
smallblockchain2023-node1-1  |     return loop.run_until_complete(main)
smallblockchain2023-node1-1  |   File "/usr/lib/python3.10/asyncio/base_events.py", line 646, in run_until_complete
smallblockchain2023-node1-1  |     return future.result()
smallblockchain2023-node1-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/server.py", line 68, in serve
smallblockchain2023-node1-1  |     config.load()
smallblockchain2023-node1-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/config.py", line 473, in load
smallblockchain2023-node1-1  |     self.loaded_app = import_from_string(self.app)
smallblockchain2023-node1-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/importer.py", line 21, in import_from_string
smallblockchain2023-node1-1  |     module = importlib.import_module(module_str)
smallblockchain2023-node1-1  |   File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module
smallblockchain2023-node1-1  |     return _bootstrap._gcd_import(name[level:], package, level)
smallblockchain2023-node1-1  |   File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
smallblockchain2023-node1-1  |   File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
smallblockchain2023-node1-1  |   File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
smallblockchain2023-node1-1  |   File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
smallblockchain2023-node1-1  |   File "<frozen importlib._bootstrap_external>", line 883, in exec_module
smallblockchain2023-node1-1  |   File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
smallblockchain2023-node1-1  |   File "/utils.py", line 9, in <module>
smallblockchain2023-node1-1  |     from config import PORT, NODE_LIST
smallblockchain2023-node1-1  |   File "/config.py", line 17, in <module>
smallblockchain2023-node1-1  |     PORT = config("APP_PORT", cast=int)
smallblockchain2023-node1-1  |   File "/usr/local/lib/python3.10/dist-packages/starlette/config.py", line 100, in __call__
smallblockchain2023-node1-1  |     return self.get(key, cast, default)
smallblockchain2023-node1-1  |   File "/usr/local/lib/python3.10/dist-packages/starlette/config.py", line 117, in get
smallblockchain2023-node1-1  |     raise KeyError(f"Config '{key}' is missing, and has no default.")
smallblockchain2023-node1-1  | KeyError: "Config 'APP_PORT' is missing, and has no default."
smallblockchain2023-node2-1  | Traceback (most recent call last):
smallblockchain2023-node2-1  |   File "//main.py", line 23, in <module>
smallblockchain2023-node2-1  |     uvicorn.run("utils:fast_api_application", port=6060, host='0.0.0.0', reload=True)
smallblockchain2023-node2-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/main.py", line 573, in run
smallblockchain2023-node2-1  |     ChangeReload(config, target=server.run, sockets=[sock]).run()
smallblockchain2023-node2-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/supervisors/basereload.py", line 50, in run
smallblockchain2023-node2-1  |     for changes in self:
smallblockchain2023-node2-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/supervisors/basereload.py", line 69, in __next__
smallblockchain2023-node2-1  |     return self.should_restart()
smallblockchain2023-node2-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/supervisors/statreload.py", line 32, in should_restart
smallblockchain2023-node2-1  |     for file in self.iter_py_files():
smallblockchain2023-node2-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/supervisors/statreload.py", line 52, in iter_py_files
smallblockchain2023-node2-1  |     for path in list(reload_dir.rglob("*.py")):
smallblockchain2023-node2-1  |   File "/usr/lib/python3.10/pathlib.py", line 1047, in rglob
smallblockchain2023-node2-1  |     for p in selector.select_from(self):
smallblockchain2023-node2-1  |   File "/usr/lib/python3.10/pathlib.py", line 493, in _select_from
smallblockchain2023-node2-1  |     for p in successor_select(starting_point, is_dir, exists, scandir):
smallblockchain2023-node2-1  |   File "/usr/lib/python3.10/pathlib.py", line 441, in _select_from
smallblockchain2023-node2-1  |     entries = list(scandir_it)
smallblockchain2023-node2-1  | OSError: [Errno 22] Invalid argument: '/proc/8/task/8/net'
smallblockchain2023-node1-1  | Traceback (most recent call last):
smallblockchain2023-node1-1  |   File "//main.py", line 23, in <module>
smallblockchain2023-node1-1  |     uvicorn.run("utils:fast_api_application", port=6060, host='0.0.0.0', reload=True)
smallblockchain2023-node1-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/main.py", line 573, in run
smallblockchain2023-node1-1  |     ChangeReload(config, target=server.run, sockets=[sock]).run()
smallblockchain2023-node1-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/supervisors/basereload.py", line 50, in run
smallblockchain2023-node1-1  |     for changes in self:
smallblockchain2023-node1-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/supervisors/basereload.py", line 69, in __next__
smallblockchain2023-node1-1  |     return self.should_restart()
smallblockchain2023-node1-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/supervisors/statreload.py", line 32, in should_restart
smallblockchain2023-node1-1  |     for file in self.iter_py_files():
smallblockchain2023-node1-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/supervisors/statreload.py", line 52, in iter_py_files
smallblockchain2023-node1-1  |     for path in list(reload_dir.rglob("*.py")):
smallblockchain2023-node1-1  |   File "/usr/lib/python3.10/pathlib.py", line 1047, in rglob
smallblockchain2023-node1-1  |     for p in selector.select_from(self):
smallblockchain2023-node1-1  |   File "/usr/lib/python3.10/pathlib.py", line 493, in _select_from
smallblockchain2023-node1-1  |     for p in successor_select(starting_point, is_dir, exists, scandir):
smallblockchain2023-node1-1  |   File "/usr/lib/python3.10/pathlib.py", line 441, in _select_from
smallblockchain2023-node1-1  |     entries = list(scandir_it)
smallblockchain2023-node1-1  | OSError: [Errno 22] Invalid argument: '/proc/8/task/8/net'
smallblockchain2023-node3-1  | Traceback (most recent call last):
smallblockchain2023-node3-1  |   File "//main.py", line 23, in <module>
smallblockchain2023-node3-1  |     uvicorn.run("utils:fast_api_application", port=6060, host='0.0.0.0', reload=True)
smallblockchain2023-node3-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/main.py", line 573, in run
smallblockchain2023-node3-1  |     ChangeReload(config, target=server.run, sockets=[sock]).run()
smallblockchain2023-node3-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/supervisors/basereload.py", line 50, in run
smallblockchain2023-node3-1  |     for changes in self:
smallblockchain2023-node3-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/supervisors/basereload.py", line 69, in __next__
smallblockchain2023-node3-1  |     return self.should_restart()
smallblockchain2023-node3-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/supervisors/statreload.py", line 32, in should_restart
smallblockchain2023-node3-1  |     for file in self.iter_py_files():
smallblockchain2023-node3-1  |   File "/usr/local/lib/python3.10/dist-packages/uvicorn/supervisors/statreload.py", line 52, in iter_py_files
smallblockchain2023-node3-1  |     for path in list(reload_dir.rglob("*.py")):
smallblockchain2023-node3-1  |   File "/usr/lib/python3.10/pathlib.py", line 1047, in rglob
smallblockchain2023-node3-1  |     for p in selector.select_from(self):
smallblockchain2023-node3-1  |   File "/usr/lib/python3.10/pathlib.py", line 493, in _select_from
smallblockchain2023-node3-1  |     for p in successor_select(starting_point, is_dir, exists, scandir):
smallblockchain2023-node3-1  |   File "/usr/lib/python3.10/pathlib.py", line 441, in _select_from
smallblockchain2023-node3-1  |     entries = list(scandir_it)
smallblockchain2023-node3-1  | OSError: [Errno 22] Invalid argument: '/proc/8/task/8/net'
smallblockchain2023-node2-1 exited with code 1
smallblockchain2023-node1-1 exited with code 1
smallblockchain2023-node3-1 exited with code 1

Ещё выбранный подход сборки контейнеров приводит к тому, что вместо одного образа, собираются три. И непонятно, почему нельзя взять готовый Python-контейнер в качестве базы?..

TsaplinIA commented 1 year ago

Ошибка была из-за отсутсвия переменной в .env файле, задал значение по умолчанию.По поводу метода сборки, то согласен, получилось неоптимально, но прошу не требовать это исправлять, я физически не успею исправить

SemenMartynov commented 1 year ago

Сейчас работает только одна нода из трёх...

smart@thinkpad$ docker compose --verbose up
[+] Building 0.0s (0/0)                                                                                                                                                                       
[+] Running 3/0
 ✔ Container smallblockchain2023-node3-1  Created                                                                                                                                        0.1s 
 ✔ Container smallblockchain2023-node1-1  Created                                                                                                                                        0.1s 
 ✔ Container smallblockchain2023-node2-1  Created                                                                                                                                        0.1s 
Attaching to smallblockchain2023-node1-1, smallblockchain2023-node2-1, smallblockchain2023-node3-1
smallblockchain2023-node1-1  | INFO:     Will watch for changes in these directories: ['/']
smallblockchain2023-node1-1  | INFO:     Uvicorn running on http://0.0.0.0:6060 (Press CTRL+C to quit)
smallblockchain2023-node1-1  | INFO:     Started reloader process [1] using StatReload
smallblockchain2023-node3-1  | INFO:     Will watch for changes in these directories: ['/']
smallblockchain2023-node3-1  | INFO:     Uvicorn running on http://0.0.0.0:6060 (Press CTRL+C to quit)
smallblockchain2023-node3-1  | INFO:     Started reloader process [1] using StatReload
smallblockchain2023-node2-1  | INFO:     Will watch for changes in these directories: ['/']
smallblockchain2023-node2-1  | INFO:     Uvicorn running on http://0.0.0.0:6060 (Press CTRL+C to quit)
smallblockchain2023-node2-1  | INFO:     Started reloader process [1] using StatReload
smallblockchain2023-node1-1  | INFO:     Started server process [8]
smallblockchain2023-node1-1  | INFO:     Waiting for application startup.
smallblockchain2023-node2-1  | INFO:     Started server process [8]
smallblockchain2023-node2-1  | INFO:     Waiting for application startup.
smallblockchain2023-node3-1  | INFO:     Started server process [8]
smallblockchain2023-node3-1  | INFO:     Waiting for application startup.
smallblockchain2023-node1-1  | Block with hash 2025a826dcac945cb1362071f84b045b08685905405a852d6812d224bd2e0000 saved
smallblockchain2023-node1-1  | Block with hash b165ab4bff6a194ac42b85f30cf4cccb1b158f528b3042b606a8eb3df5490000 saved
smallblockchain2023-node1-1  | Block with hash 54da4daf05f94798293b1ac229c34ed758df66d580f8b950fa124a9b59490000 saved
smallblockchain2023-node1-1  | Block with hash 4cf68c3aaa5f1a6289994f09458e91e23b7fc4ffb737a5bd4bb9b05ce6c50000 saved
smallblockchain2023-node1-1  | Block with hash 37dd5fcd15d6266733d7f960393c511bb9a49dd9a424e289c52d46d887320000 saved
smallblockchain2023-node1-1  | Block with hash f630adc15ed598ee18f161c165249d1c4ea66ab0d10ab62987d633ba698f0000 saved
smallblockchain2023-node1-1  | Block with hash e09e813cade2fd35a81a2270aab2df190bd0b3e400a98e03fcd7746b0dec0000 saved
smallblockchain2023-node1-1  | Block with hash 3c2e247ecb8041b5dab9ef8c0f06077ab55cb6d16af7ad67caf61647bbab0000 saved
smallblockchain2023-node1-1  | Block with hash 5cb6882998e726ddf21e935fa96ffab0bd3871250c96e090b593682d54780000 saved
smallblockchain2023-node1-1  | Block with hash 5923b2c913512a9b47a9f3fc61f883564818f880eab879ed39dc06223ddc0000 saved
smallblockchain2023-node1-1  | Block with hash 70816be8ac6a4a717df297f9f0b1d79be65011c9d42a5a263d913ccdb5860000 saved
smallblockchain2023-node1-1  | Block with hash 88ca08664fb0779eb342bac4fa6f3d2759d47ac58bd16502ce6895e931be0000 saved
smallblockchain2023-node1-1  | Block with hash 53ec6f858eaf31790620cbf92f4643ba8c5e7e03f76e9bfc61d008a502ed0000 saved
smallblockchain2023-node1-1  | Block with hash 7394c7500d4db8590299d8132a3abf4c86fb133857f209a8d92a89b579240000 saved
smallblockchain2023-node1-1  | Block with hash 170fbc24f091ea122d66eeaaab4a030c06e1da1c33f45cb1f7fb4990f3880000 saved
smallblockchain2023-node1-1  | Block with hash 4c7df94f63159ccd51b749aedf364fc854d18864b4a359c7eb56274dd6320000 saved
smallblockchain2023-node1-1  | Block with hash 5b3da8e3e8f76efddc75e0cb311f0252482096f5c6dcfcb93e389d2d53fb0000 saved
smallblockchain2023-node1-1  | Block with hash 1c8aa0186a65a61ffefdb17c862effcedca35e64f35fa2acccc397294ecc0000 saved
smallblockchain2023-node1-1  | Block with hash 720a5fb39e3afb7e1290e651860eb6072f286077827f5bb58cd363cb71570000 saved
smallblockchain2023-node1-1  | Block with hash 930a212fae3029fc72d8abe1fc7ca4d1db772c97d7393e415d1e47520bf90000 saved
smallblockchain2023-node1-1  | Block with hash 848ca491edc4ed2dd59fd6229e09c829f5b115415df34fb0a662bc4373620000 saved
smallblockchain2023-node1-1  | Block with hash eaea723ef7ad9559a3209a99d8bdee18320c220767742d23e4782317868c0000 saved
smallblockchain2023-node1-1  | Block with hash efa9136503978a2ff3cdfdf7673751810b2d2a798ce9336c757e691fdfcd0000 saved
smallblockchain2023-node1-1  | Block with hash 7256fb9d7555bbee3a9b4d79c3a34b3abd5975f0b881f94c6998e274f6fa0000 saved
smallblockchain2023-node1-1  | Block with hash e42d4a5dacf9e2c18cfd2889b1010c1ebcc7fa65177e0c5b3cc15f2c9d0f0000 saved
smallblockchain2023-node1-1  | Block with hash 0969a1bd5903ebe6674c38d468d741f498c4d08c65b31b0702ada359101e0000 saved
smallblockchain2023-node1-1  | Block with hash 7de1b180028b889edbcba8a93c65d5618c37ec4259e79b2b3d9aa36be5d50000 saved
smallblockchain2023-node1-1  | Block with hash a70c0b8b5c1c0f594a9f68bab8205db6fd5ce529d4c1c0dd4d160dd5c2960000 saved
smallblockchain2023-node1-1  | Block with hash 1b82699b8d79d954ce54445835b43d716ebee07f496b22192662107578620000 saved
smallblockchain2023-node1-1  | Block with hash d0a9fc94dcc79a263807e988954c7bfc99ca1c83d2fb5e06f3e84aba026f0000 saved
smallblockchain2023-node1-1  | Block with hash 21bec628efa1bbe148143a81d092ed35eda71c81b20d7d6acc84d99596650000 saved
smallblockchain2023-node1-1  | Block with hash 68dbffc09e31ef89bc41d81a9e45b97ac20016852927408ce49686eddd730000 saved
smallblockchain2023-node1-1  | Block with hash b42903b659f32cee4cad716ed9813ba2de88421d98c71bf93048a39c5e3e0000 saved
smallblockchain2023-node1-1  | Block with hash ea3f95ab6582d80f6954f0eb3828b790c610a6c62dc24e3377f21e56e6c70000 saved
smallblockchain2023-node1-1  | Block with hash b06845e18164b8d6b09bf3ddbfb3477bfff626743abd8c1fbaf6b7a980150000 saved
smallblockchain2023-node1-1  | Block with hash 8a1df22a252efede34cd32b9a5ccc53f14abeb3b152b3dacca396f4dece60000 saved
smallblockchain2023-node1-1  | Block with hash dc09c210f8e4b36fd8c3099706b0af994f0e4cd0f383e6a326e55c9961940000 saved
smallblockchain2023-node1-1  | Block with hash 79e764101e3ac9dea3189b9b2bdb3e0d756edef51f2db55e5830a3005ea90000 saved
smallblockchain2023-node1-1  | Block with hash 698678e094026fe5215cbdb31fe7de57572f3484aa57d3af00d1bd025df80000 saved
smallblockchain2023-node1-1  | Block with hash 7ea86582d1adffe18cce37a9dc00877e8776cd13d07dbc0d8c90191fce410000 saved
smallblockchain2023-node1-1  | Block with hash 9361aa0feceb4bec766ac6ef33c8104822ef801a9a12b9946e19c09eb3b50000 saved
smallblockchain2023-node1-1  | Block with hash adcf0adf59015731437eb8e84477806cd5248c1e6deb9882f89583dd1fc90000 saved
smallblockchain2023-node1-1  | Block with hash 2e9e50a8310be331fe175d17ecd03a5ce5ff440c581e5e9845982f309b5f0000 saved
smallblockchain2023-node1-1  | Block with hash 4a16fa29dd3782f63fd7851870b9754735249e34bbc915ca675d6ac0481e0000 saved
smallblockchain2023-node1-1  | Block with hash 73ae69fc4172e83f677bd1d28c280022852471621253a873c17e5e042a040000 saved
smallblockchain2023-node1-1  | Block with hash e0bc8bdcc481ec47289aaf72529dabcd95fbfa1768ebe919dd00b1a486c20000 saved
smallblockchain2023-node1-1  | Block with hash ae8f66e790d682418bfe125b8d7ec16cf1ea88afcba0a8530db1356b56330000 saved
smallblockchain2023-node1-1  | Block with hash 638c9662a20ba7dce9dc6dcd180b2870fbe53b4db210de54c1912647a6700000 saved
smallblockchain2023-node1-1  | Block with hash ca8454895ae75c8f51d4aa244ad08892be14452646ddab9c6cde54903e9f0000 saved
smallblockchain2023-node1-1  | Block with hash cf4988183f67b5651b10a7089f4406c578db237b6d139876ec9fd2cae8550000 saved
smallblockchain2023-node1-1  | Block with hash 6a6af6d7bca96cf01eaf9859e0c03990a5d3b677f5f8855ade973aaaa2d80000 saved
smallblockchain2023-node1-1  | Block with hash c495534ea330a54f1f7c33c318896ceebde2c3ac71213a8bd03ec381d1b50000 saved
smallblockchain2023-node1-1  | Block with hash b49edf4d575d212a693388adb79de899c5e9502f8526ad762ceea240904e0000 saved
smallblockchain2023-node1-1  | Block with hash 14d344d69023d7f3e5e9fbf9a9a5f38dae4f35c6ac6567389599aaa9740b0000 saved
smallblockchain2023-node1-1  | Block with hash 758eb8e2219b2f206969297c1ba97c0cb805dd13fe90eac73432fbfd58ef0000 saved
smallblockchain2023-node1-1  | Block with hash b86dfc080c318d67a6403afd2d4c986b951086072966bf20f14894c7ead70000 saved
smallblockchain2023-node1-1  | Block with hash cbb67c7d92ea3b4a27a58916f7e2bf2ea023b79754da5debee00cd9f485f0000 saved
smallblockchain2023-node1-1  | Block with hash 50fa243023c4a703674d42498b681a04a596888a9fcf756f006266e14cc00000 saved
smallblockchain2023-node1-1  | Block with hash 30ccacdd193167733038cdade35e21d77fcf8e7e35020597ed9e592e9cee0000 saved
smallblockchain2023-node1-1  | Block with hash 706ad22a55df5fa292913cfb618acc985318e1d82bf492613d6d18de6a7c0000 saved
smallblockchain2023-node1-1  | Block with hash 749c8d4d358593edf15654a7294e55782b1d1ec13939cc91a1d5c8942a000000 saved
smallblockchain2023-node1-1  | Block with hash b1234fdf631299d93bed2d5c6c9eda7da3977323f6d72b7e8debe76d98400000 saved
smallblockchain2023-node1-1  | Block with hash 92a07a11d908eb9acd46b93ab2852552a7d3c4b57ea527d440524c0eb4d40000 saved
smallblockchain2023-node1-1  | Block with hash b0ee94ee292d1bafcf85238fe1314bcf17e2deef4662b8cbb9f4fa3cc4140000 saved
smallblockchain2023-node1-1  | Block with hash 7f590534f8216dc5e33fc707f53c022e9e6dea679c3e8af822a0ae79d2040000 saved
smallblockchain2023-node1-1  | Block with hash 692258f3167a51b5c5b2fda98d10bd82ff605eac843c0d560701dbfa6d4a0000 saved
smallblockchain2023-node1-1  | Block with hash b5b11cb3007a3a9f42cef23fabf78cf49043ea783be4f2b6911e98a83b930000 saved
smallblockchain2023-node1-1  | Block with hash 881305b43c502f1b681986a958ecaef9dfe35362d3b7940aeeaf3b2503c00000 saved
smallblockchain2023-node1-1  | Block with hash da47fcd41892e14f42fd09ddcf513724b9b4adf30821891be1e550898c960000 saved
smallblockchain2023-node1-1  | Block with hash 6baee4229a41c3919e7210531c923012f44c70fa01d3dc1171c2620f7b9b0000 saved
smallblockchain2023-node1-1  | Block with hash bb71e33402b8f0e698abab3b32953194aa55337689ccbe6ec32d36618dce0000 saved
smallblockchain2023-node1-1  | Block with hash 83655f44641f010c9bbbe74d672fefc70f1db0887ddf547af749420fb4370000 saved
smallblockchain2023-node1-1  | Block with hash 9cf61ee09a2736c5505a7f703e5f15da3e6e5e82e85d429ce9b69775789f0000 saved
smallblockchain2023-node1-1  | Block with hash 560d406a82f1147207f17bd396fe2403b8fba6096613fbd9558b765a16310000 saved
smallblockchain2023-node1-1  | Block with hash 304bfe7cbad69c17f9a0447ddc8c2a370d058c08c79a8d5e24e6a73963710000 saved
smallblockchain2023-node1-1  | Block with hash 031ae4e4ea516594668c808f4c8024d1a1257c2d943be79ddd1fa6b815b80000 saved
smallblockchain2023-node1-1  | Block with hash 56d8b8c73e51cb45d8c374088a2a86afaf35ddff72f686881d6e5d9f0a270000 saved
smallblockchain2023-node1-1  | Block with hash 1f8a40dc421ac998662c39a9e3ded7ab7fe47edbcceb4b3a66210de6fcb40000 saved
smallblockchain2023-node1-1  | Block with hash 5ed1101c2c6bdf81e19737d2deab783af9a123ec62f1b22fe103fe0f2ac00000 saved
smallblockchain2023-node1-1  | Block with hash baba5bb04a669e51d74bbfb44783e788718e6992ecc89a85fd00dbedb9400000 saved
smallblockchain2023-node1-1  | Block with hash 058d806e1cafddaf61952d2386d6fce8616f2a67c91992a637b2eb6bd0db0000 saved
smallblockchain2023-node1-1  | Block with hash a877e6125dd3119e63c2b1c7588548a9dc52f56f2c941eb2aa714b80196b0000 saved
smallblockchain2023-node1-1  | Block with hash 0d9e4bc5e96fcf987e827063c6e4a369ef72e0aab6ea8f4e39d64bf515e00000 saved
smallblockchain2023-node1-1  | Block with hash aca98d4289fdc58c2334b98b7dc28834f8a51aac44f32c4b4956b1fd8c840000 saved
smallblockchain2023-node1-1  | Block with hash c7be6f47d6c6ea4d100ac88960f917f3f10c5f1bb2f91e9135e2d7b985890000 saved
smallblockchain2023-node1-1  | Block with hash bec14fc598c554669c8e87869c1a90b4de2b6b9c184e70ad47e5978763c50000 saved
smallblockchain2023-node1-1  | Block with hash cc933aea4607dfdcbd9ac78031006a78b817ed0bb65b50eb8b51a9462bfa0000 saved
smallblockchain2023-node1-1  | Block with hash 76237fca8f5e6da9b6dea4a8cd77bb31844315d89272cec93c4f0d3748cd0000 saved
smallblockchain2023-node1-1  | Block with hash b1d5da144e07c8c3a3def45f782e0fdb4e8e9bd3fb1f9d737e20920ea1f90000 saved
smallblockchain2023-node1-1  | Block with hash 32f8406b62c2886f95730fe53d8f92c6a0b78148ddc7a62c2bb33b775f550000 saved
smallblockchain2023-node1-1  | Block with hash 41420be20b39fadb002a8da64bb1e3c63611a8354e0756402fe69219829f0000 saved
smallblockchain2023-node1-1  | Block with hash d28ff2ecfd8721a2f92d1b5dbdfae09fd86cf63e43360a890ab396dc25e40000 saved
smallblockchain2023-node1-1  | Block with hash 7e13f81bf8e167c52cce85a86bacf28d903ef1e4edcdcda169e955f4cc130000 saved
smallblockchain2023-node1-1  | Block with hash f06dea94d0f0376e47012361e739a769641ea24857cbc4edf86aac5155a00000 saved
smallblockchain2023-node1-1  | Block with hash c20285b8a0e3f34e9691e0bfc16e1faa08376b3ee2a8eba89d95353441d60000 saved
smallblockchain2023-node1-1  | Block with hash 5381a8d57322cd02c6e4e3577f2585b9c38ee8ca37e498bb57aae81eb74a0000 saved
smallblockchain2023-node1-1  | Block with hash ce854222b3fd3f41247ed6fe2cb8a7972674aba5268251747c18adec8f8a0000 saved
smallblockchain2023-node1-1  | Block with hash 9ab79a2ecda7d9a9c5032cff7aebc3dc5fbd9d8e93ab60f86461a368e3d80000 saved
smallblockchain2023-node1-1  | Block with hash bacf68f7c780563de1d3cb32ed5852a9c39d469095ce0ecbaa35145ee15c0000 saved
smallblockchain2023-node1-1  | Block with hash f44f556f895b2d52358c5f34a2a61d1c86e9af7323cb24cf89eda3586cc30000 saved
smallblockchain2023-node1-1  | Block with hash 9ec3efe5032472b330ef9d454ff6d02cd8982e6eda3e229da778cd802f430000 saved
smallblockchain2023-node1-1  | Block with hash 81ae184488e0061ea6a444b97b2892fedc8de4e9abade9dab963327d5f750000 saved
smallblockchain2023-node1-1  | Block with hash 4af6acf21b2bed17a4c809d1ae02a103fd2e0797c1dfb21b06ede1ca65370000 saved
smallblockchain2023-node1-1  | Block with hash 24384c028d7af75bac4ccb33e9e92fbd27e0f29b053eff24fe2db650bad10000 saved
smallblockchain2023-node1-1  | Block with hash 465f9a1911295c5ef7ac2baebe2abfe922f063fe1c75f54643499b06e75a0000 saved
smallblockchain2023-node1-1  | Block with hash ccebb843502b6f16de7e0afdd787c4209a02f831eb767602e33e39d995010000 saved
smallblockchain2023-node1-1  | Block with hash eacb43d578b1fb7b1ee9443497937da0a9b6f0f153821783c8ba7c8a49d60000 saved
smallblockchain2023-node1-1  | Block with hash 008749ce8837ab24a0277b031ff216d4b18e729173860b63b89c8bd935230000 saved
smallblockchain2023-node1-1  | Block with hash ad542a37f7301bcf54edcd454826bdceca8352040543fce5c91f16a437dd0000 saved
smallblockchain2023-node1-1  | Block with hash fbe57a2fe575d29a86408bdf618dbca13c8d0e9a74ab65c1a94ae083ab3e0000 saved
smallblockchain2023-node1-1  | Block with hash a0a32b15471638a5164beaf998e0bc248febef27d05b525bb9168d85aa5f0000 saved
smallblockchain2023-node1-1  | Block with hash 7949f835dbfe9815b4422520fcb3633218cd62d4d4bbdd393bcf649147f10000 saved
smallblockchain2023-node1-1  | Block with hash af6531bc520262d14ae8c03e4b3344bdc3d6470a0280af2053c18339f4010000 saved
smallblockchain2023-node1-1  | Block with hash 97da9514d31ea64d9efe7f9a51b23e41ce5a4a1756edd8abc7706f1a7a080000 saved
^CGracefully stopping... (press Ctrl+C again to force)
TsaplinIA commented 1 year ago

Исправил