The Select Collection step build a list of collections that the user is authorised to submit to by calling Collection.findAuthorized(...). This code either reads all the collections or just those in the current community and then checks each one to see if the user has the neccessary authorisation. With a large number of collections this performs badly. We have an instance where the user is typically only authorised to submit to one collection but the code reads all collections from the database and checks each one.
Sorry, just the problem, no solution at this time.