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

Unable to Start Samza App Because Regex Check



    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 0.13.0
    • Fix Version/s: 0.13.1
    • Component/s: None
    • Labels:


      [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!


          Issue Links



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


                • Created: