When matching single song and we know song has an acoustid that is on the release being matched we just use that, easy. But for grouping a match of songs we instead compare each song in turn to each track and calculate score, then we work out the combination that allows all the tracks to match with each track getting best score possible but a couple of issues have been noted.
1. An acoustid match between song and acoustid just makes up part of the score, the song may not end up being matched to that acoustid if metadata is poor match, although I have improved this in 3.30 perhaps I should consider further. If a song matches a release by acoustid it seems silly to finally allow it to match another song on the release without an acoutid match, a simple way round this would just give it a score of 100/100 so cant be usurped.
2. If song audio header are corrupted may not return correct trackDuration causing a valid match to be rejected (See Saturnia example). Of course acoutids are not always correct but if matched by acoustid and there is no doubt about acoutid (highest sources, all match to same recording etc) and thewe is a doubt about trackDuration (typically high when corrupt) perhaps we could just ignore check i this case.
Fixed, now don't do track length check for songs if the match was an acoustid match