Uploaded image for project: 'CDAP'
  1. CDAP
  2. CDAP-10272

Table dataset name macro substitution throws DatasetInstantiationException

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.1.0
    • Component/s: Pipelines
    • Labels:
    • Sprint:
      App Eng Sprint 4, App Eng Sprint 5
    • Release Notes:
      Fixed an issue with the macro substitution of a Table dataset name.
    • Rank:
      1|hzy3lj:

      Description

      When using Table sink, and using a macro for the dataset name, the following error is displayed when running the pipeline:

      co.cask.cdap.api.data.DatasetInstantiationException: Could not instantiate dataset 'default:complaints_v3'
      	at co.cask.cdap.data2.dataset2.SingleThreadDatasetCache.getDataset(SingleThreadDatasetCache.java:177) ~[co.cask.cdap.cdap-data-fabric-3.6.0.jar:na]
      	at co.cask.cdap.data2.dataset2.DynamicDatasetCache.getDataset(DynamicDatasetCache.java:202) ~[co.cask.cdap.cdap-data-fabric-3.6.0.jar:na]
      	at co.cask.cdap.data2.dataset2.DynamicDatasetCache.getDataset(DynamicDatasetCache.java:161) ~[co.cask.cdap.cdap-data-fabric-3.6.0.jar:na]
      	at co.cask.cdap.internal.app.runtime.AbstractContext.getDataset(AbstractContext.java:238) ~[co.cask.cdap.cdap-app-fabric-3.6.0.jar:na]
      	at co.cask.cdap.internal.app.runtime.batch.BasicMapReduceContext.addOutput(BasicMapReduceContext.java:295) ~[co.cask.cdap.cdap-app-fabric-3.6.0.jar:na]
      	at co.cask.cdap.etl.batch.mapreduce.MapReduceSinkContext$1.call(MapReduceSinkContext.java:59) ~[cdap-etl-core-3.6.0.jar:na]
      	at co.cask.cdap.etl.batch.mapreduce.MapReduceSinkContext$1.call(MapReduceSinkContext.java:55) ~[cdap-etl-core-3.6.0.jar:na]
      	at co.cask.cdap.etl.log.LogContext.runUnchecked(LogContext.java:145) ~[cdap-etl-core-3.6.0.jar:na]
      	at co.cask.cdap.etl.log.LogContext.runWithoutLoggingUnchecked(LogContext.java:139) ~[cdap-etl-core-3.6.0.jar:na]
      	at co.cask.cdap.etl.batch.mapreduce.MapReduceSinkContext.addOutput(MapReduceSinkContext.java:55) ~[cdap-etl-core-3.6.0.jar:na]
      	at co.cask.cdap.etl.batch.mapreduce.MapReduceSinkContext.addOutput(MapReduceSinkContext.java:50) ~[cdap-etl-core-3.6.0.jar:na]
      	at co.cask.hydrator.plugin.batch.sink.BatchWritableSink.prepareRun(BatchWritableSink.java:82) ~[1479325350184-0/:na]
      	at co.cask.hydrator.plugin.batch.sink.BatchWritableSink.prepareRun(BatchWritableSink.java:41) ~[1479325350184-0/:na]
      	at co.cask.cdap.etl.batch.LoggedBatchConfigurable$1.call(LoggedBatchConfigurable.java:44) ~[cdap-etl-core-3.6.0.jar:na]
      	at co.cask.cdap.etl.batch.LoggedBatchConfigurable$1.call(LoggedBatchConfigurable.java:41) ~[cdap-etl-core-3.6.0.jar:na]
      	at co.cask.cdap.etl.log.LogContext.run(LogContext.java:59) ~[cdap-etl-core-3.6.0.jar:na]
      	at co.cask.cdap.etl.batch.LoggedBatchConfigurable.prepareRun(LoggedBatchConfigurable.java:41) ~[cdap-etl-core-3.6.0.jar:na]
      	at co.cask.cdap.etl.batch.mapreduce.ETLMapReduce.initialize(ETLMapReduce.java:206) ~[cdap-etl-batch-3.6.0.jar:na]
      	at co.cask.cdap.api.mapreduce.AbstractMapReduce.initialize(AbstractMapReduce.java:171) ~[co.cask.cdap.cdap-api-3.6.0.jar:na]
      	at co.cask.cdap.api.mapreduce.AbstractMapReduce.initialize(AbstractMapReduce.java:33) ~[co.cask.cdap.cdap-api-3.6.0.jar:na]
      	at co.cask.cdap.internal.app.runtime.batch.MapReduceRuntimeService$2.call(MapReduceRuntimeService.java:511) ~[co.cask.cdap.cdap-app-fabric-3.6.0.jar:na]
      	at co.cask.cdap.internal.app.runtime.batch.MapReduceRuntimeService$2.call(MapReduceRuntimeService.java:504) ~[co.cask.cdap.cdap-app-fabric-3.6.0.jar:na]
      	at co.cask.cdap.data2.transaction.Transactions.execute(Transactions.java:165) ~[co.cask.cdap.cdap-data-fabric-3.6.0.jar:na]
      	at co.cask.cdap.internal.app.runtime.batch.MapReduceRuntimeService.beforeSubmit(MapReduceRuntimeService.java:504) ~[co.cask.cdap.cdap-app-fabric-3.6.0.jar:na]
      	at co.cask.cdap.internal.app.runtime.batch.MapReduceRuntimeService.startUp(MapReduceRuntimeService.java:215) ~[co.cask.cdap.cdap-app-fabric-3.6.0.jar:na]
      	at com.google.common.util.concurrent.AbstractExecutionThreadService$1$1.run(AbstractExecutionThreadService.java:47) ~[com.google.guava.guava-13.0.1.jar:na]
      	at co.cask.cdap.internal.app.runtime.batch.MapReduceRuntimeService$1$1.run(MapReduceRuntimeService.java:422) [co.cask.cdap.cdap-app-fabric-3.6.0.jar:na]
      	at java.lang.Thread.run(Thread.java:745) [na:1.7.0_75]
      Caused by: com.google.common.util.concurrent.UncheckedExecutionException: co.cask.cdap.api.data.DatasetInstantiationException: Failed to access dataset: dataset:default.complaints_v3
      	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2258) ~[com.google.guava.guava-13.0.1.jar:na]
      	at com.google.common.cache.LocalCache.get(LocalCache.java:3990) ~[com.google.guava.guava-13.0.1.jar:na]
      	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3994) ~[com.google.guava.guava-13.0.1.jar:na]
      	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4878) ~[com.google.guava.guava-13.0.1.jar:na]
      	at com.google.common.cache.ForwardingLoadingCache.get(ForwardingLoadingCache.java:48) ~[com.google.guava.guava-13.0.1.jar:na]
      	at co.cask.cdap.data2.dataset2.SingleThreadDatasetCache$LineageRecordingDatasetCache.get(SingleThreadDatasetCache.java:145) ~[co.cask.cdap.cdap-data-fabric-3.6.0.jar:na]
      	at co.cask.cdap.data2.dataset2.SingleThreadDatasetCache$LineageRecordingDatasetCache.get(SingleThreadDatasetCache.java:128) ~[co.cask.cdap.cdap-data-fabric-3.6.0.jar:na]
      	at co.cask.cdap.data2.dataset2.SingleThreadDatasetCache.getDataset(SingleThreadDatasetCache.java:171) ~[co.cask.cdap.cdap-data-fabric-3.6.0.jar:na]
      	... 27 common frames omitted
      Caused by: co.cask.cdap.api.data.DatasetInstantiationException: Failed to access dataset: dataset:default.complaints_v3
      	at co.cask.cdap.data.dataset.SystemDatasetInstantiator.getDataset(SystemDatasetInstantiator.java:111) ~[co.cask.cdap.cdap-data-fabric-3.6.0.jar:na]
      	at co.cask.cdap.data2.dataset2.SingleThreadDatasetCache$1.load(SingleThreadDatasetCache.java:93) ~[co.cask.cdap.cdap-data-fabric-3.6.0.jar:na]
      	at co.cask.cdap.data2.dataset2.SingleThreadDatasetCache$1.load(SingleThreadDatasetCache.java:89) ~[co.cask.cdap.cdap-data-fabric-3.6.0.jar:na]
      	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3589) ~[com.google.guava.guava-13.0.1.jar:na]
      	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2374) ~[com.google.guava.guava-13.0.1.jar:na]
      	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2337) ~[com.google.guava.guava-13.0.1.jar:na]
      	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2252) ~[com.google.guava.guava-13.0.1.jar:na]
      	... 34 common frames omitted
      Caused by: co.cask.cdap.api.data.DatasetInstantiationException: Trying to access dataset that does not exist: dataset:default.complaints_v3
      	at co.cask.cdap.data.dataset.SystemDatasetInstantiator.getDataset(SystemDatasetInstantiator.java:107) ~[co.cask.cdap.cdap-data-fabric-3.6.0.jar:na]
      	... 40 common frames omitted
      

        Attachments

          Activity

            People

            • Assignee:
              shashank Shashank
              Reporter:
              russellsavage Russ Savage
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: