I got an error when I tried to invoke an inherit u...
# troubleshooting
s
I got an error when I tried to invoke an inherit utility dbt-postgres. I blocked to use dbt-postgres in my project. Hope anyone can help on this. thanks in advance. I added a dbt-postgres utility plugin to my project using
meltano add utility dbt-postgres
, then create an inherit one using
meltano add utility dbt-postgres-new --inherit-from dbt-postgres
with a different database. When I ran the first dbt using the following command, and it is working fine.
meltano invoke dbt-postgres run --select +mymodel
but when I ran the inherit dbt using the following command, I got an error as following.
meltano invoke dbt-postgres-new run --select +mymodel2
Copy code
% meltano invoke dbt-postgres-new run --select +mymodel2 

2023-03-24T01:15:58.788257Z [info     ] Environment 'local' is active
Extension executing `dbt clean`...
Traceback (most recent call last):
  File "/Users/user/Workspaces/data_platform/meltano/.meltano/utilities/dbt-postgres/venv/lib/python3.9/site-packages/meltano/edk/extension.py", line 122, in pass_through_invoker
    self.pre_invoke(None, *command_args)
  File "/Users/user/Workspaces/data_platform/meltano/.meltano/utilities/dbt-postgres/venv/lib/python3.9/site-packages/dbt_ext/extension.py", line 71, in pre_invoke
    self.dbt_invoker.run_and_log("clean")
  File "/Users/user/Workspaces/data_platform/meltano/.meltano/utilities/dbt-postgres/venv/lib/python3.9/site-packages/meltano/edk/process.py", line 172, in run_and_log
    result = asyncio.run(self._exec(sub_command, *args))
  File "/Users/user/.asdf/installs/python/3.9.15/lib/python3.9/asyncio/runners.py", line 44, in run
    return loop.run_until_complete(main)
  File "/Users/user/.asdf/installs/python/3.9.15/lib/python3.9/asyncio/base_events.py", line 647, in run_until_complete
    return future.result()
  File "/Users/user/Workspaces/data_platform/meltano/.meltano/utilities/dbt-postgres/venv/lib/python3.9/site-packages/meltano/edk/process.py", line 126, in _exec
    p = await asyncio.create_subprocess_exec(
  File "/Users/user/.asdf/installs/python/3.9.15/lib/python3.9/asyncio/subprocess.py", line 236, in create_subprocess_exec
    transport, protocol = await loop.subprocess_exec(
  File "/Users/user/.asdf/installs/python/3.9.15/lib/python3.9/asyncio/base_events.py", line 1676, in subprocess_exec
    transport = await self._make_subprocess_transport(
  File "/Users/user/.asdf/installs/python/3.9.15/lib/python3.9/asyncio/unix_events.py", line 197, in _make_subprocess_transport
    transp = _UnixSubprocessTransport(self, protocol, args, shell,
  File "/Users/user/.asdf/installs/python/3.9.15/lib/python3.9/asyncio/base_subprocess.py", line 36, in __init__
    self._start(args=args, shell=shell, stdin=stdin, stdout=stdout,
  File "/Users/user/.asdf/installs/python/3.9.15/lib/python3.9/asyncio/unix_events.py", line 789, in _start
    self._proc = subprocess.Popen(
  File "/Users/user/.asdf/installs/python/3.9.15/lib/python3.9/subprocess.py", line 951, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/Users/user/.asdf/installs/python/3.9.15/lib/python3.9/subprocess.py", line 1821, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'dbt'
pre_invoke failed with uncaught exception, please report to maintainer
j
Looks like dbt is not installed in your environment? Not sure if the adding of the utility triggers installation of dbt itself...
s
when I ran the dbt for mymodel, it was working fine. but failed on mymodel2,