I was just doing a again some scalding jobs and again got an .. interesting exception:
In a groupBy
operation, I wanted to sum something up using:
.groupBy('a) { _.sum('a -> 'c) }
And was rewarded with this one:
[error] example.scala:20: diverging implicit expansion for type com.twitter.algebird.Semigroup[T] [error] starting with method eitherSemigroup in object Semigroup [error] _.sum('a -> 'c) [error] ^ [error] one error found [error] (compile:compile) Compilation failed
WTF??
Solution:
Spot the mistake? It’s the missing type hint at sum
:
.groupBy('a) { _.sum<strong>[Int]</strong>('a -> 'c) // <-- [Int] }