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]
}