https://dagster.io/ logo
#ask-community
Title
# ask-community
a

Andras Somi

01/18/2023, 11:57 AM
Hi, I created an
observable_source_asset
, but if I click Observe sources (either with selecting my new asset or not) I get this not very helpful error in Dagit. What’s
__ASSET___JOB
?
c

chris

01/18/2023, 7:21 PM
Hrm
__ASSET _JOB_
is an underlying job that houses all the assets in your deployment - but the user should never need to interact with it. paging @sean who i believe has worked more directly with this feature
s

sean

01/18/2023, 10:04 PM
This is saying that there is missing config for the asset selection-- seems like a possible bug. Is it possible for you to share some code (like the definition of your observable source asset)?
a

Andras Somi

01/19/2023, 12:52 PM
I was trying it with a pretty simple one (obscured a few details as xxx, but otherwise this is it):
Copy code
@observable_source_asset(
    name="company",
    key_prefix=["xxx"],
    description="Main Company table",
    io_manager_key="pandas_io_manager",
)
def company(context: OpExecutionContext):
    engine: Engine = context.resources.db
    with engine.connect() as con:
        last_update: Result = con.execute("select max(updated) from xxx.company;")

    return LogicalVersion(str(last_update.scalar()))
but it happens with a bare-bone asset, too, like this:
Copy code
@observable_source_asset
def company(_):
    return LogicalVersion("a")
It’s not a big repo, I have only a handful of things running, but it includes goodies like an asset reconciliation sensor, schedules, sensors, graph based assets, etc. Obviously I cannot share the full repo, but I can dig a bit more to find the source of conflict if you point me towards the right direction.
s

sean

02/02/2023, 8:47 PM
Hi Andras, I apologize for letting this thread slip off my radar-- are you still having this issue?
a

Andras Somi

02/02/2023, 9:02 PM
No worries, thanks for picking the thread up! Actually yes, I still have this issue, but couldn't get closer to the root cause. Where do you think I should look?
s

sean

02/02/2023, 9:37 PM
I’m wondering about that
pandas_io_manager
-- does it have required config?
Also, what version of dagster are you on?
What’s __ASSET_JOB ?
This is an internal implementation detail that should not leak, so thank you for identifying this-- essentially
__ASSET_JOB
is a master “hidden” job that includes all assets. When you are selecting assets for materialization or observation from the global asset graph, this is the job that is used to execute them.
a

Andras Somi

02/03/2023, 9:26 AM
@sean I’m on 1.1.13 currently, will upgrade to 1.1.15 today. That
pandas_io_manager
takes config indeed. But even if I change it to the simplest possible version without any parameters and no logic inside the function I still get the error. So I guess it might be clashing with something else in my setup (perhaps with the asset reconciliation sensor?).
Is there any sort of diagnostic output I can produce to help track this down?
perhaps with the asset reconciliation sensor?
Nope. I removed that from the code, even replaced the
observable_source_asset
with a bare-bone one, the issue is still there.
2 Views