Tell me about your big slow docs

Basically just imagine a table of events with a start date and end date. I need to know which events overlap with each event. So each row has an “overlapping events” column with this formula (per book 2 of the gospel of Paul)

EventsTable.Filter(
    currentValue != thisRow AND
    thisRow.[Start Date].IsNotBlank() AND
    (
      CurrentValue.[End Date] >= thisRow.[Start Date] AND
      CurrentValue.[Start Date] <= thisRow.[End Date]
    )
)

Optimally-performant as that may be, each row still triggers a recalculation of every other row, and each of those calculations gets slightly harder each time.

2 Likes