Uploaded image for project: 'Samza'
  1. Samza
  2. SAMZA-1387

Unable to Start Samza App Because Regex Check

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 0.13.0
    • 0.13.1
    • None
    • None

    Description

      [I created this as a bug but feel free to change it if it's a feature]

      When I'm trying to upgrade Samza to 0.13 (from 0.11), I got the error below when trying to start our job:

      [ec2-user@namenode-shadow-1] out: 2017-08-09 17:26:31.977 [main] KafkaSystemAdmin [INFO] Attempting to create coordinator stream _samza_coordinator<env>.<AppName>_1.
      [ec2-user@namenode-shadow-1] out: Exception in thread "main" java.lang.IllegalArgumentException: Identifier 'streamId' is '_samza_coordinator<env>.<AppName>_1'. It must match the expression [A-Za-z0-9_-]+
      [ec2-user@namenode-shadow-1] out: at org.apache.samza.system.StreamSpec.validateLogicalIdentifier(StreamSpec.java:201)
      [ec2-user@namenode-shadow-1] out: at org.apache.samza.system.StreamSpec.<init>(StreamSpec.java:140)
      [ec2-user@namenode-shadow-1] out: at org.apache.samza.system.kafka.KafkaStreamSpec.<init>(KafkaStreamSpec.java:152)
      [ec2-user@namenode-shadow-1] out: at org.apache.samza.system.kafka.KafkaSystemAdmin.createCoordinatorStream(KafkaSystemAdmin.scala:334)
      [ec2-user@namenode-shadow-1] out: at org.apache.samza.job.JobRunner.run(JobRunner.scala:88)
      [ec2-user@namenode-shadow-1] out: at org.apache.samza.job.JobRunner$.doOperation(JobRunner.scala:52)
      [ec2-user@namenode-shadow-1] out: at org.apache.samza.job.JobRunner$.main(JobRunner.scala:47)
      [ec2-user@namenode-shadow-1] out: at org.apache.samza.job.JobRunner.main(JobRunner.scala)

      Looking at Samza code on Github, it seems Samza just started to restrict topic names to a stricter sets. It doesn't allow '.' anymore whereas we have been using '.' for all of our topics. That means we cannot upgrade to Samza 0.13 without changing all the topics. That also breaks our convention for defining topic names. Having '.' in the topic name is actually very convenient for us because they can be shown in Grafana/StatsD in a more organized way.

      Here is the change in Github: https://github.com/apache/samza/commit/e6c1eed4f1d576661abafce8477c1749c2554b39#diff-98a114809fb1ab416f8d1d0b4d318b96R201

      Can you expand the regex set to a larger set including '.'? Thanks in advance!

      Attachments

        Issue Links

          Activity

            People

              jmakes Jake Maes
              hao.song Hao Song
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: