I have a question, how I determine when a change run is completed ... is it RSATTR ? Is there another way or t.code ?
You can try going to the monitor for Attribute change run from RSA1 >> tools >> apply change run or from Transaction RSATTR which will schedule/display attribute change run. Here you can have an option called change run monitor (Monitor icon). This wil show the status of change run including which all info objects are affected, and if its hitting the aggregates of any cubes. There are scenarios where the attribute change run failed with message that it was hitting/affecting aggregates of some infocubes. In case we had to switch off aggregates and trigger the change run again and then swtich on the aggregates after the change run is over. this may not be the exact issue you are facing.
Also you can try Tcode CHANGERUNMONI/program RSDDS_CHANGERUN_MONITOR to view this data.
176606 - Apply Hierarchy/Attribute change ... long runtime
175309 - Hierarchy/attribute - change run improved
Also try SM37.
SLG1 - Application log and SM21 - System log can also be helpful.
Most of the times we have problem with the Attribute Change Run(ACR) running because ACR and the Roll Up's for Aggregates cannot run in parallel.
And sometimes ACR goes on running for a long time in such case we need to check which Aggregate the ACR is currently changing and need to deactivate that aggregate.
But before deactivating an aggregate you need to check the data present in that and the usage of the aggregate.