I think it makes more sense to return `nil` for the stats value whenever we return an error, since returned stats aren't meant to be used. Also, there may be valid stats later in the list than the one that failed, we don't want to imply that the returned set of stats is complete. This applies to this line and several others below.