Snowplow 0.9.13 released with important bug fixes

01 December 2014  •  Fred Blundun

We are happy to announce the release of Snowplow 0.9.13 fixing two bugs found in last week’s release. Read on for more information.

  1. Safer URI parsing
  2. Fixed dependency conflict
  3. Upgrading
  4. Help

1. Safer URI parsing

Version 0.9.12 used the Net-a-Porter URI library to fix up non-compliant URIs which initially failed validation. This made the enrichment process more forgiving of bad URIs. It also introduced a bug: exceptions thrown by the new step were not caught. This release fixes that bug: if a URI fails being parsed by Net-a-Porter, the exception will be caught and the event will fail validation (ending up in bad rows) in the usual way. Thanks to Robert Kingston for bringing this bug to our attention!

2. Fixed dependency conflict

The introduction of Net-a-Porter in Common Enrich caused a dependency conflict with the version of Specs2 in Kinesis Enrich. Thanks to Konstantinos Servis (@knservis on GitHub), whose pull request fixed this by changing the Specs2 version to prevent the conflict!

3. Upgrading

This release bumps Common Enrich to 0.9.1, Hadoop Enrich to version 0.10.1, and Kinesis Enrich to 0.2.1.

The new Hadoop Enrich and Kinesis Enrich versions are publically available on S3:

s3://snowplow-hosted-assets/3-enrich/scala-kinesis-enrich/snowplow-kinesis-enrich-0.2.1
s3://snowplow-hosted-assets/3-enrich/hadoop-etl/snowplow-hadoop-etl-0.10.1.jar

In your EmrEtlRunner’s config.yml file, update your Hadoop enrich job’s version to 0.10.1:

  :versions:
    :hadoop_enrich: 0.10.1

For a complete example, see our sample config.yml template.

4. Help

If you have any problems or any questions about this release, please get in touch. And do raise an issue if you find any bugs!