For SweepFormula select with selvis(all) the function GetActiveChannels is called for each filtered sweep number channel type channel number * sweepMapIndex (from multiple experiments) to determine what channels to include in the selection.
GetActiveChannels itself iterated over all channel numbers of that channel type (e.g. 16 for AD) and gets a LNB entry. For each LNB entry miss three LNB requests are make (normal, old unassoc, new unassoc).
This turns out to be a performance bottleneck.
One way to speed this up would be to cache the result of GetActiveChannels.
For SweepFormula select with selvis(all) the function GetActiveChannels is called for each filtered sweep number channel type channel number * sweepMapIndex (from multiple experiments) to determine what channels to include in the selection.
GetActiveChannels itself iterated over all channel numbers of that channel type (e.g. 16 for AD) and gets a LNB entry. For each LNB entry miss three LNB requests are make (normal, old unassoc, new unassoc).
This turns out to be a performance bottleneck.
One way to speed this up would be to cache the result of GetActiveChannels.