49e3b22907
Found from some confusing behavior when by/from fields overlap. It turns out when this happens (-bhi -Fhi, for example), the generated getattr for the by field would trigger the __getattribute__ for the overlapping field field, resulting in a fold on _every add operation_. Hopefully you can see where this is a bit of a problem when summing a large number of results (O(n^2)?). --- Fixed by switching getattr to object.__getattribute__ and reconsidering csv.py's entire design.