Emanuele De Sanctis
11/07/2025, 10:04 AM[33mExited because of keyboard interrupt[0m
please note that no manual keyboard interrupt happened since this runs in an EC2 machinekapa.ai
11/07/2025, 10:04 AMkapa.ai
11/07/2025, 10:04 AMExited because of keyboard interrupt in your logs, but no manual interruption occurred (especially on an EC2 machine), it typically means the dbt process was terminated unexpectedly—possibly due to resource constraints, timeouts, or external signals from the environment, rather than an actual keyboard interrupt. Elementary relies on the dbt on-run-end hooks to upload results and metadata. If the dbt process is killed before these hooks can run, Elementary will not be able to report errors or update its tables, as the hooks are not executed in such cases. This is a known limitation: if dbt is interrupted (for example, by --fail-fast, a process kill, or an infrastructure issue), the hooks do not run, and therefore Elementary cannot log the results or errors for that run. This has been discussed in the community, and currently, there is no workaround within Elementary for this scenario—it's a limitation of how dbt handles hooks on process termination or interruption. The only suggestion is to ensure your environment is stable and not terminating dbt processes unexpectedly, and to avoid using flags or configurations (like --fail-fast) that prevent hooks from running. If you need more robust tracking of interrupted runs, you may consider opening a feature request with dbt or Elementary, as suggested by the community in similar cases [Slack discussion on fail-fast and hooks](https://slack.com/archives/C02CTC89LAX/p1678393339809499). In summary: If dbt is killed or interrupted before completion, Elementary cannot report errors because the on-run-end hooks are not executed. This is a limitation of dbt's hook execution model, not something Elementary can control.