Skip to content

Conversation

@SzabadosA
Copy link

@SzabadosA SzabadosA commented Mar 4, 2025

Problem

We experienced segfault houdini crashes on thumbnail creation, when publishing products. This happens because heavy extractors (in our case the HDA extractor) still block the main thread at the moment when the process moves to the next extractor, which crashes the flipbook tool.

Changes

We change the extractor order to - 0.25 so the thumbnail executes before the HDA extractor, which mitigates the problem

"""
order = pyblish.api.ExtractorOrder + 0.49
order = pyblish.api.ExtractorOrder + 0.25
Copy link
Contributor

@BigRoy BigRoy Mar 4, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Interesting to see this did fix it. Because I wonder what happens between +0.25 and +0.49.

I'd have expected this would needed to be negative like - 0.1 so that it'd run before ExtractROP - assuming that the crash had something to do with the heavy processed occurring from rendering heavy rops in the scene.

Also this plug-in does this check for whether thumbnails are already set on the instance:

        thumbnail = instance.data.get("thumbnailPath")
        if thumbnail:
            # A thumbnail was already set for this instance
            return

We should ensure it doesn't now suddenly run BEFORE anything that we'd expect to otherwise set the thumbnail path - otherwise this one would incorrectly always take precedence.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In our case it failed on HDA extraction, therefor we moved it right in front of the HDA extractor. Do you have any other examples, where you could test this (sth. where you have the feeling the rop extractor fails)?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ExtractActiveViewThumbnail is only affecting the workfile instance so we should consider only the plugins related to thumbnails and runs through workfile instance. like

There's another plugin in core but not related to workfile instance.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In our case it failed on HDA extraction, therefor we moved it right in front of the HDA extractor. Do you have any other examples, where you could test this (sth. where you have the feeling the rop extractor fails)?

How many HDAs were in your scene?

@MustafaJafar MustafaJafar added type: bug Something isn't working community Issues and PRs coming from the community members labels Mar 5, 2025
@MustafaJafar MustafaJafar self-requested a review March 5, 2025 10:27
@MustafaJafar
Copy link
Member

@SzabadosA could you create an issue for it and link it to this PR?

@SzabadosA
Copy link
Author

SzabadosA commented Mar 5, 2025

@SzabadosA could you create an issue for it and link it to this PR?

sure:

#236

@SzabadosA SzabadosA requested a review from BigRoy March 7, 2025 10:09
"""
order = pyblish.api.ExtractorOrder + 0.49
order = pyblish.api.ExtractorOrder - 0.25
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For information.
This order is smaller that the order of a plugin for extracting thumbnail and it runs over workfile instances.

https://github.com/ynput/ayon-core/blob/e420a97543d95bccb5fbf80d220d3ef7a4515670/client/ayon_core/plugins/publish/extract_thumbnail_from_source.py#L36C5-L36C49

@MustafaJafar MustafaJafar linked an issue Mar 13, 2025 that may be closed by this pull request
1 task
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

community Issues and PRs coming from the community members type: bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Thumbnail extractor crashes Houdini on HDA publishing process

4 participants