[ https://issues.apache.org/jira/browse/CRUNCH-511?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Josh Wills updated CRUNCH-511: ------------------------------ Attachment: CRUNCH-511.patch Patch for the same, will commit this soon. > Scrunch product type support should use derived() instead of > derivedImmutable() > ------------------------------------------------------------------------------- > > Key: CRUNCH-511 > URL: https://issues.apache.org/jira/browse/CRUNCH-511 > Project: Crunch > Issue Type: Bug > Components: Scrunch > Reporter: Josh Wills > Attachments: CRUNCH-511.patch > > > Ran into a subtle bug related to Scrunch case class support: right now, I was > using derivedImmutable to generate the mapping from an Avro record in to a > Scala case class, thinking (foolishly, as it turned out) that case classes > were always immutable. Although that's true, the arguments that get passed to > the case class constructor (the fields of the Avro record) are not > necessarily immutable (e.g., an Avro ByteBuffer gets reused from key to key > in a reduce), and those values can cause join key errors. > I wrote a test case to illustrate the bug and switched the case class PType > generator to use derived instead of derivedImmutable. -- This message was sent by Atlassian JIRA (v6.3.4#6332)