<@U088WCP3B4P> Is there any reason that i dont see...
# ask-elementary-ai
h
@kapa.ai Is there any reason that i dont see any data in EDR report for dimension_anomalies tests when the test succeeds ? I only see trend lines when the the test fails ? Is that expected?
k
Yes, this was a known bug in Elementary. When a
dimension_anomalies
test passed, the report would incorrectly show "Not enough data to calculate anomaly score" instead of displaying the trend lines. This was confirmed by an Elementary team member: > "the test is working and passing, we had a bug that when a dimension anomalies test passed it would show 'Not enough data', this will be resolved in the next release" [dimension_anomalies passing bug] Additionally, there was a separate but related bug (introduced after version 0.8.0) where clicking on anomaly tests in the dashboard would not correctly filter to show only those tests, making it harder to see results for passing anomaly tests. [anomaly tests hidden bug] So to directly answer your question: it was not expected behavior — it was a bug. If you are still experiencing this on a recent version of Elementary, it may be worth checking whether your version has the fix applied, or raising it with the Elementary team as it may have regressed. 👍 0 button 👎 0 button â„šī¸ Tip: Mention @elementary.ai in the thread for follow-ups or DM the app for 1-to-1 help.
h
@kapa.ai is this bug now resolved ?
k
Based on the knowledge sources available, the bug where a passing
dimension_anomalies
test would show "Not enough data to calculate anomaly score" was confirmed to be fixed, with an Elementary team member stating it would be resolved in the next release at the time of that post. [dimension_anomalies passing bug] However, the knowledge sources also show that users on more recent versions (including version 0.13.2) were still reporting the "Not enough data to calculate anomaly score" issue across all anomaly test types (freshness, volume, and dimensional), suggesting the problem may have persisted or regressed. [ongoing anomaly issue] I cannot confirm with certainty whether the bug is fully resolved in the latest version of Elementary, as the knowledge sources don't provide a definitive "fixed in version X" statement for this specific issue. I'd recommend: 1. Checking the Elementary release notes for the latest fixes. 2. Asking directly in the Elementary Slack community for the most up-to-date status. 👍 0 button 👎 0 button â„šī¸ Tip: Mention @elementary.ai in the thread for follow-ups or DM the app for 1-to-1 help.
h
@kapa.ai i have a column_anomalies test on a table, the test ran yesterday and failed , because of the late arriving data. yesterdays data has since caught up. but why does the the elemetary dashboard still show old data from when yesterday's data was incomplete ?
k
The behavior you're seeing is related to how Elementary caches and recalculates metrics. Here's what's happening and how to fix it: Why the Dashboard Still Shows Old Data Elementary uses an optimization where metrics within the
backfill_days
(detection period) are re-populated on every test run, but metrics in the broader training period are only re-queried if there are gaps. If the data in the training period has changed (e.g., late-arriving data filled in), Elementary has no automatic way of detecting that change. [Slack: force_metrics_backfill] How to Fix It You can force Elementary to refresh all cached metrics by running your dbt test with the
force_metrics_backfill
variable:
Copy code
dbt test --vars '{"force_metrics_backfill": true}'
This bypasses the caching mechanisms and recalculates all metrics, so the dashboard will reflect the updated (now complete) data. [Slack: force_metrics_backfill] Why This Isn't the Default This full recalculation is not done automatically on every run as a performance optimization. Elementary assumes that historical data doesn't change, so it only refreshes the most recent detection window by default. For late-arriving data scenarios, you'll need to trigger the backfill manually. [Slack: force_metrics_backfill] 👍 0 button 👎 0 button â„šī¸ Tip: Mention @elementary.ai in the thread for follow-ups or DM the app for 1-to-1 help.
h
@kapa.ai I did try using force_metrics_backfill, yet i dont see the dashboard updated
k
If
force_metrics_backfill
didn't update the dashboard, here are a few things to check based on the knowledge sources: 1. Verify the Metrics Were Actually Recalculated Query the metrics table directly to confirm the data has been updated:
Copy code
SELECT
  bucket_end,
  updated_at,
  dimension,
  dimension_value,
  metric_value
FROM elementary.data_monitoring_metrics
WHERE full_table_name = 'my_table'
ORDER BY updated_at DESC;
Check the
updated_at
timestamps — if they haven't changed since your backfill run, the recalculation may not have taken effect. [Anomaly Troubleshooting] 2. Make Sure You Also Ran the Elementary Models After running
dbt test
, you need to also run the Elementary models to propagate the results to the dashboard:
Copy code
dbt test --vars '{"force_metrics_backfill": true}'
dbt run --select elementary
Without the second step, the dashboard tables may not reflect the latest test results. [Slack: backfill sequence] 3. One User Reported Running the Sequence Twice Fixed It Interestingly, one community member reported that running the same sequence of commands a second time resolved a similar issue where not all dates were backfilled on the first attempt. [Slack: backfill sequence] 4. Check the Test Results Table Confirm the test is now showing as passed:
Copy code
SELECT *
FROM elementary.elementary_test_results
ORDER BY detected_at DESC
LIMIT 5;
If the test still shows as failed there, the dashboard will reflect that failure regardless of the underlying data. If none of these steps resolve it, sharing your
dbt.log
with the Elementary team would be the next recommended step, as they've used that to diagnose similar discrepancies in the past. [Slack: dbt.log] 👍 0 button 👎 0 button â„šī¸ Tip: Mention @elementary.ai in the thread for follow-ups or DM the app for 1-to-1 help.
h
@kapa.ai I ran a test on one of the tables earlier in the day today and all the tests succeeded. i ran them now and all the tests failed with no data for the latest day, day has not elapsed yet , what is causing this issue ?
k
This is a known behavior in Elementary related to how it handles time buckets. Here's what's likely happening: Elementary Only Tests Completed Time Buckets By default, Elementary's anomaly detection tests only evaluate completed time buckets. For daily buckets, this means the test evaluates yesterday's data, not today's (which is still accumulating). [volume_anomalies bucket behavior] Why Your Tests Passed Earlier But Fail Now When you ran the tests earlier today, there may have been enough data in the most recently completed bucket (yesterday) to pass. However, as the day progresses, the bucket boundaries shift — and if Elementary is now picking up today's incomplete data as the latest bucket, it will see fewer rows than expected and flag it as anomalous. This is consistent with what a community member observed: > "Each day's bucket ends when the day begins... records loaded after
2024-01-23 00:00:00
won't show up until the test is run on `2024-01-24`" [bucket timing discussion] Possible Workarounds 1. Schedule tests after the day is complete — run your tests after midnight or after your data loads are confirmed complete, so the "yesterday" bucket is fully populated. 2. Use smaller time buckets — e.g., 8-hour buckets instead of daily, so completed sub-day buckets are evaluated sooner. Be aware this may increase alert fatigue. [time bucket workaround] 3. Use a
where_expression
to filter out incomplete data, though this won't dynamically skip incomplete days. The knowledge sources do not describe a built-in way to automatically skip to the last fully loaded day if today's data is incomplete, so scheduling your tests after data loads are complete is the most reliable approach. 👍 0 button 👎 0 button â„šī¸ Tip: Mention @elementary.ai in the thread for follow-ups or DM the app for 1-to-1 help.
h
@kapa.ai Why does by elementary dashboard show time line 04/02 5:00 PM ? what setting do i change to make it 00:00 ?
k
The reason your Elementary dashboard shows buckets starting at 5:00 PM instead of midnight is due to timezone handling. Elementary groups time buckets according to UTC, and then presents them adjusted to your local timezone. So "5:00 PM" in your local timezone is likely midnight UTC (00:00 UTC). [intraday bucket timezone] As confirmed by an Elementary team member: > "Elementary groups the time buckets according to the timezone in the machine it runs on, and then presents it adjusted to your local timezone. If there's a timezone defined for a column, it would use it (UTC in this case), but the report presents it in your local timezone." [intraday bucket timezone] What You Can Do There is no direct configuration parameter in the knowledge sources to force the display to show 00:00 in your local timezone. The root cause is the mismatch between UTC bucket boundaries and your local timezone offset. Your options are: 1. Ensure your timestamp column is in UTC — If your
timestamp_column
is already in UTC, the buckets are calculated correctly in UTC; the 5:00 PM display is simply your local timezone representation of midnight UTC. 2. Preprocess your timestamp column — If you want buckets to align with your local midnight, you could truncate your timestamp to a
DATE
type (removing the time component entirely) in your dbt model before using it as the
timestamp_column
. This way, there is no time component to shift. [timestamp column docs] 3. Accept the display as-is — If the underlying data and anomaly detection logic are correct (just the display is offset), this is a cosmetic issue. The Elementary team has acknowledged it is not ideal and is consulting on improvements. [intraday bucket timezone] 👍 0 button 👎 0 button â„šī¸ Tip: Mention @elementary.ai in the thread for follow-ups or DM the app for 1-to-1 help.