Good morning,
Re-posting a long standing issue I have had with the Adobe frameworks. This ‘bug’ exemplifies my love/hate relationship with the adobe frameworks.
Working with the engine is frustrating as things often behave differently in different cases. Here is the latest issue I just can’t seem to get past.
Using a operation like…
self.adobe.app.load(self.adobe.File(path))
…works great on small to medium sized files. But very large files seems to cause an issue that results in the engine crashing, very reliably.
I have mostly experienced this in Premiere where exporting a very large Sequence will cause the engine to crash. Now I am seeing this a lot in Photoshop, especially now that I am working from home via VPN. File transfers are MUCH slower and the issue has gone from occasional to almost every time.
In the past, I have gotten around these types of issues with something like…
self._HEARTBEAT_DISABLED = True
very long operation
self._HEARTBEAT_DISABLED = False
… but that does not seem to be helping here.
Sometimes I can get around all of this using the direct RPC commands…
rpc_cmd = ‘app.load(File("’+path+‘"))’
results = self.engine.adobe.rpc_eval(rpc_cmd)
But that gives the exact same results.
Here is the tail of the log.
py Sending context about to change message.
js Sending context about to change from client.
py <Sgtk Engine 0x110d0cfd0: tk-photoshopcc, env: asset_step>: Resolved hook expression (associated with setting ‘context_fields_display_hook’): ‘{self}/context_fields_display.py’ → [‘/Users/danieleaton/Developer/github_clones/master/tk-config-wba/bundle_cache/git/tk-photoshopcc.git/v1.7.12-wba/hooks/context_fields_display.py’]
py Sending commands: {“commands”: [{“type”: “default”, “icon_path”: “/Users/danieleaton/Developer/github_clones/master/tk-config-wba/bundle_cache/git/tk-photoshopcc-bookmark.git/v0.0.9/icon_256.png”, “display_name”: “Bookmarks…”, “description”: “Bookmark Tool for Quickly Loading Published Files.”, “uid”: 19}, {“type”: “default”, “icon_path”: “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/app_store/tk-multi-loader2/v1.19.6/resources/load_menu_icon.png”, “display_name”: “Load…”, “description”: “Locate published files and reference them into your scene.”, “uid”: 15}, {“type”: “default”, “icon_path”: “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/git/tk-photoshopcc-pathcontext.git/v0.0.1/icon_256.png”, “display_name”: “Set Context By Path”, “description”: “Try to set the Context using the current path.”, “uid”: 17}, {“type”: “panel”, “icon_path”: “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/app_store/tk-multi-shotgunpanel/v1.6.4/resources/shotgun_panel_menu_icon.png”, “display_name”: “Shotgun Panel…”, “description”: “Panel UI with Shotgun information about your scene, yourself and the things around you.”, “uid”: 11}, {“type”: “default”, “icon_path”: “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/app_store/tk-multi-snapshot/v0.7.5/resources/snapshot_history_menu_icon.png”, “display_name”: “Snapshot History…”, “description”: “This app lets you quickly take a snapshot of the scene that you are working on - essentially a quick, personal backup. You can also browse your history and restore old snapshots.”, “uid”: 21}], “context_menu_cmds”: [{“type”: “context_menu”, “icon_path”: “/Users/danieleaton/Developer/github_clones/master/tk-config-wba/bundle_cache/git/tk-photoshopcc.git/v1.7.12-wba/resources/shotgun_logo.png”, “display_name”: “Jump to Shotgun”, “description”: “Open the current context in a web browser.”, “uid”: 1}, {“type”: “context_menu”, “icon_path”: “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/app_store/tk-multi-screeningroom/v0.3.4/icon_256.png”, “display_name”: “Jump to Screening Room Web Player”, “description”: “Screening Room integration right inside your application.”, “uid”: 7}, {“type”: “context_menu”, “icon_path”: “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/app_store/tk-multi-screeningroom/v0.3.4/icon_256.png”, “display_name”: “Jump to Screening Room in RV”, “description”: “Screening Room integration right inside your application.”, “uid”: 6}, {“type”: “context_menu”, “icon_path”: “/Applications/Shotgun.app/Contents/Resources/Python/bundle_cache/app_store/tk-multi-pythonconsole/v1.1.2/icon_256.png”, “display_name”: “Shotgun Python Console…”, “description”: “A Python console for Shotgun Toolkit”, “uid”: 22}, {“type”: “context_menu”, “icon_path”: “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/app_store/tk-multi-about/v0.3.0/icon_256.png”, “display_name”: “Work Area Info…”, “description”: “Shows a breakdown of your current environment and configuration.”, “uid”: 10}], “favorites”: [{“display_name”: “Task Buddy…”, “description”: “Task Information and Tools for Quickly Loading Files.”, “fav_index”: 0, “icon_path”: “/Users/danieleaton/Developer/github_clones/master/tk-config-wba/bundle_cache/git/tk-multi-taskbuddy.git/v0.0.14/icon_256.png”, “type”: “default”, “uid”: 18}, {“display_name”: “Snapshot…”, “description”: “This app lets you quickly take a snapshot of the scene that you are working on - essentially a quick, personal backup. You can also browse your history and restore old snapshots.”, “fav_index”: 2, “icon_path”: “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/app_store/tk-multi-snapshot/v0.7.5/resources/snapshot_menu_icon.png”, “type”: “default”, “uid”: 20}, {“display_name”: “Publish…”, “description”: “Publishing of data to Shotgun”, “fav_index”: 4, “icon_path”: “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/app_store/tk-multi-publish2/v2.4.1/icon_256_dark.png”, “type”: “default”, “uid”: 16}]}
js Setting commands from client: {“commands”: [{“type”: “default”, “icon_path”: “/Users/danieleaton/Developer/github_clones/master/tk-config-wba/bundle_cache/git/tk-photoshopcc-bookmark.git/v0.0.9/icon_256.png”, “display_name”: “Bookmarks…”, “description”: “Bookmark Tool for Quickly Loading Published Files.”, “uid”: 19}, {“type”: “default”, “icon_path”: “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/app_store/tk-multi-loader2/v1.19.6/resources/load_menu_icon.png”, “display_name”: “Load…”, “description”: “Locate published files and reference them into your scene.”, “uid”: 15}, {“type”: “default”, “icon_path”: “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/git/tk-photoshopcc-pathcontext.git/v0.0.1/icon_256.png”, “display_name”: “Set Context By Path”, “description”: “Try to set the Context using the current path.”, “uid”: 17}, {“type”: “panel”, “icon_path”: “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/app_store/tk-multi-shotgunpanel/v1.6.4/resources/shotgun_panel_menu_icon.png”, “display_name”: “Shotgun Panel…”, “description”: “Panel UI with Shotgun information about your scene, yourself and the things around you.”, “uid”: 11}, {“type”: “default”, “icon_path”: “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/app_store/tk-multi-snapshot/v0.7.5/resources/snapshot_history_menu_icon.png”, “display_name”: “Snapshot History…”, “description”: “This app lets you quickly take a snapshot of the scene that you are working on - essentially a quick, personal backup. You can also browse your history and restore old snapshots.”, “uid”: 21}], “context_menu_cmds”: [{“type”: “context_menu”, “icon_path”: “/Users/danieleaton/Developer/github_clones/master/tk-config-wba/bundle_cache/git/tk-photoshopcc.git/v1.7.12-wba/resources/shotgun_logo.png”, “display_name”: “Jump to Shotgun”, “description”: “Open the current context in a web browser.”, “uid”: 1}, {“type”: “context_menu”, “icon_path”: “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/app_store/tk-multi-screeningroom/v0.3.4/icon_256.png”, “display_name”: “Jump to Screening Room Web Player”, “description”: “Screening Room integration right inside your application.”, “uid”: 7}, {“type”: “context_menu”, “icon_path”: “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/app_store/tk-multi-screeningroom/v0.3.4/icon_256.png”, “display_name”: “Jump to Screening Room in RV”, “description”: “Screening Room integration right inside your application.”, “uid”: 6}, {“type”: “context_menu”, “icon_path”: “/Applications/Shotgun.app/Contents/Resources/Python/bundle_cache/app_store/tk-multi-pythonconsole/v1.1.2/icon_256.png”, “display_name”: “Shotgun Python Console…”, “description”: “A Python console for Shotgun Toolkit”, “uid”: 22}, {“type”: “context_menu”, “icon_path”: “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/app_store/tk-multi-about/v0.3.0/icon_256.png”, “display_name”: “Work Area Info…”, “description”: “Shows a breakdown of your current environment and configuration.”, “uid”: 10}], “favorites”: [{“display_name”: “Task Buddy…”, “description”: “Task Information and Tools for Quickly Loading Files.”, “fav_index”: 0, “icon_path”: “/Users/danieleaton/Developer/github_clones/master/tk-config-wba/bundle_cache/git/tk-multi-taskbuddy.git/v0.0.14/icon_256.png”, “type”: “default”, “uid”: 18}, {“display_name”: “Snapshot…”, “description”: “This app lets you quickly take a snapshot of the scene that you are working on - essentially a quick, personal backup. You can also browse your history and restore old snapshots.”, “fav_index”: 2, “icon_path”: “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/app_store/tk-multi-snapshot/v0.7.5/resources/snapshot_menu_icon.png”, “type”: “default”, “uid”: 20}, {“display_name”: “Publish…”, “description”: “Publishing of data to Shotgun”, “fav_index”: 4, “icon_path”: “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/app_store/tk-multi-publish2/v2.4.1/icon_256_dark.png”, “type”: “default”, “uid”: 16}]}
py Execution of post_context_change for engine <Sgtk Engine 0x110d0cfd0: tk-photoshopcc, env: asset_step> is complete.
py Context changed successfully.
js Setting commands.
py Traceback (most recent call last):
py File “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/git/tk-framework-adobe.git/v1.0.4-wba/python/tk_framework_adobe_utils/plugin_bootstrap.py”, line 158, in
py bootstrap(root_path, port, engine_name, app_id)
py File “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/git/tk-framework-adobe.git/v1.0.4-wba/python/tk_framework_adobe_utils/plugin_bootstrap.py”, line 85, in bootstrap
py engine.post_qt_init()
py File “/Users/danieleaton/Developer/github_clones/master/tk-config-wba/bundle_cache/git/tk-photoshopcc.git/v1.7.12-wba/engine.py”, line 352, in post_qt_init
py self.adobe.rpc_eval(rpc_cmd)
py File “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/git/tk-framework-adobe.git/v1.0.4-wba/python/tk_framework_adobe/rpc/communicator.py”, line 358, in rpc_eval
py wrapper_class=ProxyWrapper,
py File “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/git/tk-framework-adobe.git/v1.0.4-wba/python/tk_framework_adobe/rpc/communicator.py”, line 712, in __run_rpc_command
py results = self._wait_for_response(payload[“id”])
py File “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/git/tk-framework-adobe.git/v1.0.4-wba/python/tk_framework_adobe/adobe_bridge.py”, line 45, in wrapper
py result = func(*args, **kwargs)
py File “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/git/tk-framework-adobe.git/v1.0.4-wba/python/tk_framework_adobe/adobe_bridge.py”, line 422, in _wait_for_response
py return super(AdobeBridge, self)._wait_for_response(uid)
py File “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/git/tk-framework-adobe.git/v1.0.4-wba/python/tk_framework_adobe/rpc/communicator.py”, line 644, in _wait_for_response
py self.wait(single_loop=True, process_events=False)
py File “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/git/tk-framework-adobe.git/v1.0.4-wba/python/tk_framework_adobe/rpc/communicator.py”, line 512, in wait
py process_events=process_events,
py File “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/git/tk-framework-adobe.git/v1.0.4-wba/python/tk_framework_adobe/rpc/communicator.py”, line 228, in process_new_messages
py self._io._process_packets()
py File “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/git/tk-framework-adobe.git/v1.0.4-wba/pkgs.zip/socketIO_client/init.py”, line 276, in _process_packets
py for engineIO_packet in self._transport.recv_packet():
py File “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/git/tk-framework-adobe.git/v1.0.4-wba/pkgs.zip/socketIO_client/transports.py”, line 158, in recv_packet
py packet_text)
py File “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/git/tk-framework-adobe.git/v1.0.4-wba/pkgs.zip/socketIO_client/parsers.py”, line 96, in parse_packet_text
py packet_type = int(get_character(packet_text, 0))
py File “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/git/tk-framework-adobe.git/v1.0.4-wba/pkgs.zip/socketIO_client/symmetries.py”, line 33, in get_character
py return chr(get_byte(x, index))
py File “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/git/tk-framework-adobe.git/v1.0.4-wba/pkgs.zip/socketIO_client/symmetries.py”, line 29, in get_byte
py return indexbytes(x, index)
py File “/Users/danieleaton/Library/Caches/Shotgun/bundle_cache/git/tk-framework-adobe.git/v1.0.4-wba/pkgs.zip/six.py”, line 655, in indexbytes
py return ord(buf[i])
py IndexError: string index out of range
py QThread: Destroyed while thread is still running
py QThread: Destroyed while thread is still running
js Active document changed to /Volumes/DROID/XXXX/Assets/Characters/W/WeiA/Design/Publish/XXXX_WeiA_Tn_v01/XXXX_WeiA_Tn_v01.psd
js Emitting ‘active_document_changed’ message via socket.io.
js Python exited unexpectedly.
js Critical: The Shotgun integration has unexpectedly shut down. Specifically, the python process that handles the communication with Shotgun has been terminated.