Depending on the date range and the amount of data within that date range, event based reports can take a while to run. We have implemented several solutions to the problem such as caching results by day. That way, if the same query is run again including a date that has been cached, it uses that instead of doing the calculation all over again.
However, even with these changes, it can still take time if you recorded millions of events in a single day. To help give you insight into the status of a running report, you can now see the report processing queue. When you run a report that is queued for processing, it shows you the queue where you can see the status. You can also go to the Reports tab and the report queue appears at the bottom of the report list.
This should help you understand what is going on when a report is running a long time since it tells you the day it is currently processing. Another benefit is that you can queue up a report or two and come back to the report screen to look at the results when they are done.
We hope you find these changes beneficial. If you have any questions, please go ahead and contact support.