Uploaded image for project: 'Kite SDK (READ-ONLY)'
  1. Kite SDK (READ-ONLY)
  2. KITE-787

Creating Two Datasets with Same Name in Different Databases Fails

    Details

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

      Description

      In hive you can create two tables with the same name in different databases. When I try to do this from Kite SDK it fails.

      To reproduce:

      • Create Test.avsc
        {
          "type" : "record",
          "name" : "Test",
          "namespace" : "com.cloudera",
          "fields" : [ {
            "name" : "val",
            "type" : "string"
          }
          ]
        }
        

      Then try to create two datasets...

      kite-dataset create dataset:hive:default/test_namespaces -s Test.avsc
      kite-dataset -v create dataset:hive:alanj/test_namespaces -s Test.avsc 
      Validation error
      org.kitesdk.data.ValidationException: Dataset location is not compatible with existing: hdfs://nameservice1/user/hive/warehouse/test_namespaces != null
      	at org.kitesdk.data.ValidationException.check(ValidationException.java:55)
      	at org.kitesdk.data.spi.Compatibility.checkNotChanged(Compatibility.java:270)
      	at org.kitesdk.data.spi.Compatibility.checkUpdate(Compatibility.java:233)
      	at org.kitesdk.data.spi.hive.HiveManagedMetadataProvider.create(HiveManagedMetadataProvider.java:55)
      	at org.kitesdk.data.spi.hive.HiveManagedDatasetRepository.create(HiveManagedDatasetRepository.java:77)
      	at org.kitesdk.data.Datasets.create(Datasets.java:166)
      	at org.kitesdk.data.Datasets.create(Datasets.java:206)
      	at org.kitesdk.cli.commands.CreateDatasetCommand.run(CreateDatasetCommand.java:102)
      	at org.kitesdk.cli.Main.run(Main.java:165)
      	at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
      	at org.kitesdk.cli.Main.main(Main.java:243)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:606)
      	at org.apache.hadoop.util.RunJar.main(RunJar.java:212)
      

        Attachments

          Activity

            People

            • Assignee:
              blue Ryan Blue
              Reporter:
              alanj Alan Jackoway
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: