We encountered a failure during ARES execution when Achilles::performTemporalCharacterization() was called:
CANNOT PERFORM TEMPORAL CHARACTERIZATION: NO ACHILLES DATA FOUND
Initial investigation suggested that required Achilles temporal analyses were missing. However, the underlying Achilles result tables were populated and contained all analysis IDs referenced by the temporal characterization logic: [117,202,402,602,702,802,1802,2102 ]
The failure appears to occur because getTemporalData() ultimately returns zero rows after applying the minimum temporal support filter in achilles_temporal_data.sql:
The specific dataset we're working with is not full patient history but instead a subset based on specific temporal events. Consequently, validation showed the result tables did indeed have data, just not over a long enough period of time:
rows_before_36_month_filter = 46392
rows_after_36_month_filter = 0
Therefore the failure is not caused by missing Achilles data, but rather by all temporal records being excluded by the minimum support threshold, causing getTemporalData() to return zero rows and performTemporalCharacterization() (and consequently the full Achilles run) to terminate with: CANNOT PERFORM TEMPORAL CHARACTERIZATION: NO ACHILLES DATA FOUND
One potential workaround could be to treat this condition as a warning and skip temporal characterization when temporal analysis records exist in achilles_results but no concepts meet the minimum support threshold, rather than terminating execution.
This could preserve the existing temporal characterization requirements while avoiding termination of otherwise successful Achilles/ARES executions.
We encountered a failure during ARES execution when Achilles::performTemporalCharacterization() was called:
CANNOT PERFORM TEMPORAL CHARACTERIZATION: NO ACHILLES DATA FOUNDInitial investigation suggested that required Achilles temporal analyses were missing. However, the underlying Achilles result tables were populated and contained all analysis IDs referenced by the temporal characterization logic: [117,202,402,602,702,802,1802,2102 ]
The failure appears to occur because getTemporalData() ultimately returns zero rows after applying the minimum temporal support filter in achilles_temporal_data.sql:
Achilles/inst/sql/sql_server/temporal/achilles_temporal_data.sql
Line 44 in 113433d
The specific dataset we're working with is not full patient history but instead a subset based on specific temporal events. Consequently, validation showed the result tables did indeed have data, just not over a long enough period of time:
rows_before_36_month_filter = 46392rows_after_36_month_filter = 0Therefore the failure is not caused by missing Achilles data, but rather by all temporal records being excluded by the minimum support threshold, causing getTemporalData() to return zero rows and performTemporalCharacterization() (and consequently the full Achilles run) to terminate with:
CANNOT PERFORM TEMPORAL CHARACTERIZATION: NO ACHILLES DATA FOUNDOne potential workaround could be to treat this condition as a warning and skip temporal characterization when temporal analysis records exist in achilles_results but no concepts meet the minimum support threshold, rather than terminating execution.
This could preserve the existing temporal characterization requirements while avoiding termination of otherwise successful Achilles/ARES executions.