[bug] Unable to composite GIF
Describe the bug
Using the fourth workflowprovided, the GIF could not be synthesized in the last step
The following is the error code:
Reproduction
No response
Expected behavior
No response
Operating System
Windows (Default)
Comfy Mode
Comfy Portable (embed) (Default)
Console output
[rgthree] Using rgthree's optimized recursive execution.
100%|██████████████████████████████████████████████████████████████████████████████████| 15/15 [00:01<00:00, 10.93it/s]
Prompt executed in 4.37 seconds
[rgthree] Using rgthree's optimized recursive execution.
!!! Exception during processing !!!
Traceback (most recent call last):
File "urllib\request.py", line 1348, in do_open
File "http\client.py", line 1298, in request
File "http\client.py", line 1344, in _send_request
File "http\client.py", line 1293, in endheaders
File "http\client.py", line 1052, in _send_output
File "http\client.py", line 990, in send
File "http\client.py", line 956, in connect
File "socket.py", line 851, in create_connection
File "socket.py", line 836, in create_connection
OSError: [WinError 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 151, in recursive_execute
output_data, output_ui = get_output_data(obj, input_data_all)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 81, in get_output_data
return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 74, in map_node_over_list
results.append(getattr(obj, func)(**slice_dict(input_data_all, i)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\custom_nodes\comfy_mtb\nodes\graph_utils.py", line 312, in load_from_history
output = self.load_batch_frames(response, offset, count, frames)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\custom_nodes\comfy_mtb\nodes\graph_utils.py", line 328, in load_batch_frames
image_data = get_image(
^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\custom_nodes\comfy_mtb\nodes\graph_utils.py", line 35, in get_image
with urllib.request.urlopen(url) as response:
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "urllib\request.py", line 216, in urlopen
File "urllib\request.py", line 519, in open
File "urllib\request.py", line 536, in _open
File "urllib\request.py", line 496, in _call_chain
File "urllib\request.py", line 1377, in http_open
File "urllib\request.py", line 1351, in do_open
urllib.error.URLError: <urlopen error [WinError 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。>
Prompt executed in 0.38 seconds
[rgthree] Using rgthree's optimized recursive execution.
!!! Exception during processing !!!
Traceback (most recent call last):
File "urllib\request.py", line 1348, in do_open
File "http\client.py", line 1298, in request
File "http\client.py", line 1344, in _send_request
File "http\client.py", line 1293, in endheaders
File "http\client.py", line 1052, in _send_output
File "http\client.py", line 990, in send
File "http\client.py", line 956, in connect
File "socket.py", line 851, in create_connection
File "socket.py", line 836, in create_connection
OSError: [WinError 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 151, in recursive_execute
output_data, output_ui = get_output_data(obj, input_data_all)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 81, in get_output_data
return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 74, in map_node_over_list
results.append(getattr(obj, func)(**slice_dict(input_data_all, i)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\custom_nodes\comfy_mtb\nodes\graph_utils.py", line 311, in load_from_history
with urllib.request.urlopen(history_url) as response:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "urllib\request.py", line 216, in urlopen
File "urllib\request.py", line 519, in open
File "urllib\request.py", line 536, in _open
File "urllib\request.py", line 496, in _call_chain
File "urllib\request.py", line 1377, in http_open
File "urllib\request.py", line 1351, in do_open
urllib.error.URLError: <urlopen error [WinError 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。>
Prompt executed in 0.02 seconds
[rgthree] Using rgthree's optimized recursive execution.
!!! Exception during processing !!!
Traceback (most recent call last):
File "urllib\request.py", line 1348, in do_open
File "http\client.py", line 1298, in request
File "http\client.py", line 1344, in _send_request
File "http\client.py", line 1293, in endheaders
File "http\client.py", line 1052, in _send_output
File "http\client.py", line 990, in send
File "http\client.py", line 956, in connect
File "socket.py", line 851, in create_connection
File "socket.py", line 836, in create_connection
OSError: [WinError 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 151, in recursive_execute
output_data, output_ui = get_output_data(obj, input_data_all)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 81, in get_output_data
return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 74, in map_node_over_list
results.append(getattr(obj, func)(**slice_dict(input_data_all, i)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\custom_nodes\comfy_mtb\nodes\graph_utils.py", line 311, in load_from_history
with urllib.request.urlopen(history_url) as response:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "urllib\request.py", line 216, in urlopen
File "urllib\request.py", line 519, in open
File "urllib\request.py", line 536, in _open
File "urllib\request.py", line 496, in _call_chain
File "urllib\request.py", line 1377, in http_open
File "urllib\request.py", line 1351, in do_open
urllib.error.URLError: <urlopen error [WinError 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。>
Prompt executed in 0.02 seconds
[rgthree] Using rgthree's optimized recursive execution.
!!! Exception during processing !!!
Traceback (most recent call last):
File "urllib\request.py", line 1348, in do_open
File "http\client.py", line 1298, in request
File "http\client.py", line 1344, in _send_request
File "http\client.py", line 1293, in endheaders
File "http\client.py", line 1052, in _send_output
File "http\client.py", line 990, in send
File "http\client.py", line 956, in connect
File "socket.py", line 851, in create_connection
File "socket.py", line 836, in create_connection
OSError: [WinError 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 151, in recursive_execute
output_data, output_ui = get_output_data(obj, input_data_all)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 81, in get_output_data
return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 74, in map_node_over_list
results.append(getattr(obj, func)(**slice_dict(input_data_all, i)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\custom_nodes\comfy_mtb\nodes\graph_utils.py", line 311, in load_from_history
with urllib.request.urlopen(history_url) as response:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "urllib\request.py", line 216, in urlopen
File "urllib\request.py", line 519, in open
File "urllib\request.py", line 536, in _open
File "urllib\request.py", line 496, in _call_chain
File "urllib\request.py", line 1377, in http_open
File "urllib\request.py", line 1351, in do_open
urllib.error.URLError: <urlopen error [WinError 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。>
Prompt executed in 0.02 seconds
[rgthree] Using rgthree's optimized recursive execution.
!!! Exception during processing !!!
Traceback (most recent call last):
File "urllib\request.py", line 1348, in do_open
File "http\client.py", line 1298, in request
File "http\client.py", line 1344, in _send_request
File "http\client.py", line 1293, in endheaders
File "http\client.py", line 1052, in _send_output
File "http\client.py", line 990, in send
File "http\client.py", line 956, in connect
File "socket.py", line 851, in create_connection
File "socket.py", line 836, in create_connection
OSError: [WinError 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 151, in recursive_execute
output_data, output_ui = get_output_data(obj, input_data_all)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 81, in get_output_data
return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 74, in map_node_over_list
results.append(getattr(obj, func)(**slice_dict(input_data_all, i)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\custom_nodes\comfy_mtb\nodes\graph_utils.py", line 311, in load_from_history
with urllib.request.urlopen(history_url) as response:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "urllib\request.py", line 216, in urlopen
File "urllib\request.py", line 519, in open
File "urllib\request.py", line 536, in _open
File "urllib\request.py", line 496, in _call_chain
File "urllib\request.py", line 1377, in http_open
File "urllib\request.py", line 1351, in do_open
urllib.error.URLError: <urlopen error [WinError 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。>
Prompt executed in 0.02 seconds
[rgthree] Using rgthree's optimized recursive execution.
!!! Exception during processing !!!
Traceback (most recent call last):
File "urllib\request.py", line 1348, in do_open
File "http\client.py", line 1298, in request
File "http\client.py", line 1344, in _send_request
File "http\client.py", line 1293, in endheaders
File "http\client.py", line 1052, in _send_output
File "http\client.py", line 990, in send
File "http\client.py", line 956, in connect
File "socket.py", line 851, in create_connection
File "socket.py", line 836, in create_connection
OSError: [WinError 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 151, in recursive_execute
output_data, output_ui = get_output_data(obj, input_data_all)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 81, in get_output_data
return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 74, in map_node_over_list
results.append(getattr(obj, func)(**slice_dict(input_data_all, i)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\custom_nodes\comfy_mtb\nodes\graph_utils.py", line 311, in load_from_history
with urllib.request.urlopen(history_url) as response:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "urllib\request.py", line 216, in urlopen
File "urllib\request.py", line 519, in open
File "urllib\request.py", line 536, in _open
File "urllib\request.py", line 496, in _call_chain
File "urllib\request.py", line 1377, in http_open
File "urllib\request.py", line 1351, in do_open
urllib.error.URLError: <urlopen error [WinError 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。>
Prompt executed in 0.02 seconds
[rgthree] Using rgthree's optimized recursive execution.
!!! Exception during processing !!!
Traceback (most recent call last):
File "urllib\request.py", line 1348, in do_open
File "http\client.py", line 1298, in request
File "http\client.py", line 1344, in _send_request
File "http\client.py", line 1293, in endheaders
File "http\client.py", line 1052, in _send_output
File "http\client.py", line 990, in send
File "http\client.py", line 956, in connect
File "socket.py", line 851, in create_connection
File "socket.py", line 836, in create_connection
OSError: [WinError 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 151, in recursive_execute
output_data, output_ui = get_output_data(obj, input_data_all)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 81, in get_output_data
return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\execution.py", line 74, in map_node_over_list
results.append(getattr(obj, func)(**slice_dict(input_data_all, i)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Meta\SD\ComfyUI_windows_portable_4_9\ComfyUI\custom_nodes\comfy_mtb\nodes\graph_utils.py", line 311, in load_from_history
with urllib.request.urlopen(history_url) as response:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "urllib\request.py", line 216, in urlopen
File "urllib\request.py", line 519, in open
File "urllib\request.py", line 536, in _open
File "urllib\request.py", line 496, in _call_chain
File "urllib\request.py", line 1377, in http_open
File "urllib\request.py", line 1351, in do_open
urllib.error.URLError: <urlopen error [WinError 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。>
Prompt executed in 0.02 seconds
Additional context
I'm seing this issue just now sorry, for some reason I did not get a notification.
The error you are seing comes from BatchFromHistory. It should provide clearer errors, I will work on that today, but my guess is your workflow has more than one OUTPUT_NODE ? If you check the short explanation in the wiki it's an unfortunatte drawback of it. Now with more knowledge I will revisit its implementation.
I will merge #160 today and look at adding better errors to it then
Thanks for the report
I'm seing this issue just now sorry, for some reason I did not get a notification.
The error you are seing comes from BatchFromHistory. It should provide clearer errors, I will work on that today, but my guess is your workflow has more than one OUTPUT_NODE ? If you check the short explanation in the wiki it's an unfortunatte drawback of it. Now with more knowledge I will revisit its implementation.
I will merge #160 today and look at adding better errors to it then
Thanks for the report
Okay, thank you very much
@idesign2018 Can you share the workflow or a repro of it? That would help to identify gotchas and maybe find workarounds