You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kylin.apache.org by liangmeng <13...@139.com> on 2015/07/06 08:08:02 UTC

cube build failed at step 3: Build Dimension Dictionary

java.lang.IllegalStateException: Expect 1 and only 1 non-zero file under hdfs://masters/apps/hive/warehouse/d_nw_ne_ecell2, but find 4
	at org.apache.kylin.dict.lookup.HiveTable.findOnlyFile(HiveTable.java:123)
	at org.apache.kylin.dict.lookup.HiveTable.computeHDFSLocation(HiveTable.java:107)
	at org.apache.kylin.dict.lookup.HiveTable.getHDFSLocation(HiveTable.java:83)
	at org.apache.kylin.dict.lookup.HiveTable.getFileTable(HiveTable.java:76)
	at org.apache.kylin.dict.lookup.HiveTable.getSignature(HiveTable.java:71)
	at org.apache.kylin.dict.DictionaryManager.buildDictionary(DictionaryManager.java:164)
	at org.apache.kylin.cube.CubeManager.buildDictionary(CubeManager.java:154)
	at org.apache.kylin.cube.cli.DictionaryGeneratorCLI.processSegment(DictionaryGeneratorCLI.java:53)
	at org.apache.kylin.cube.cli.DictionaryGeneratorCLI.processSegment(DictionaryGeneratorCLI.java:42)
	at org.apache.kylin.job.hadoop.dict.CreateDictionaryJob.run(CreateDictionaryJob.java:53)
	at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
	at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
	at org.apache.kylin.job.common.HadoopShellExecutable.doWork(HadoopShellExecutable.java:63)
	at org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:107)
	at org.apache.kylin.job.execution.DefaultChainedExecutable.doWork(DefaultChainedExecutable.java:50)
	at org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:107)
	at org.apache.kylin.job.impl.threadpool.DefaultScheduler$JobRunner.run(DefaultScheduler.java:132)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)
result code:2



Re: cube build failed at step 3: Build Dimension Dictionary

Posted by Li Yang <li...@apache.org>.
KYLIN-889 is resolve in 0.7 & 0.8 branches. Expect the next release.  :-)

On Mon, Jul 13, 2015 at 11:14 AM, Luke Han <lu...@gmail.com> wrote:

> We should considering to support this.
>
> Here's JIRA: https://issues.apache.org/jira/browse/KYLIN-889
> <https://issues.apache.org/jira/browse/KYLIN-889>
>
> Thanks.
>
>
> Best Regards!
> ---------------------
>
> Luke Han
>
> On Sat, Jul 11, 2015 at 9:33 AM, Li Yang <li...@apache.org> wrote:
>
> > En, same old problem..  Kylin expects lookup table to be small, thus
> check
> > it contains only one file on HDFS.
> >
> > An alternative is manually merge your lookup table into one file.
> >
> > We should check the size of the table instead really.
> >
> > On Mon, Jul 6, 2015 at 2:08 PM, liangmeng <13...@139.com> wrote:
> >
> > > java.lang.IllegalStateException: Expect 1 and only 1 non-zero file
> under
> > > hdfs://masters/apps/hive/warehouse/d_nw_ne_ecell2, but find 4
> > >         at
> > > org.apache.kylin.dict.lookup.HiveTable.findOnlyFile(HiveTable.java:123)
> > >         at
> > >
> >
> org.apache.kylin.dict.lookup.HiveTable.computeHDFSLocation(HiveTable.java:107)
> > >         at
> > >
> org.apache.kylin.dict.lookup.HiveTable.getHDFSLocation(HiveTable.java:83)
> > >         at
> > > org.apache.kylin.dict.lookup.HiveTable.getFileTable(HiveTable.java:76)
> > >         at
> > > org.apache.kylin.dict.lookup.HiveTable.getSignature(HiveTable.java:71)
> > >         at
> > >
> >
> org.apache.kylin.dict.DictionaryManager.buildDictionary(DictionaryManager.java:164)
> > >         at
> > > org.apache.kylin.cube.CubeManager.buildDictionary(CubeManager.java:154)
> > >         at
> > >
> >
> org.apache.kylin.cube.cli.DictionaryGeneratorCLI.processSegment(DictionaryGeneratorCLI.java:53)
> > >         at
> > >
> >
> org.apache.kylin.cube.cli.DictionaryGeneratorCLI.processSegment(DictionaryGeneratorCLI.java:42)
> > >         at
> > >
> >
> org.apache.kylin.job.hadoop.dict.CreateDictionaryJob.run(CreateDictionaryJob.java:53)
> > >         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
> > >         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
> > >         at
> > >
> >
> org.apache.kylin.job.common.HadoopShellExecutable.doWork(HadoopShellExecutable.java:63)
> > >         at
> > >
> >
> org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:107)
> > >         at
> > >
> >
> org.apache.kylin.job.execution.DefaultChainedExecutable.doWork(DefaultChainedExecutable.java:50)
> > >         at
> > >
> >
> org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:107)
> > >         at
> > >
> >
> org.apache.kylin.job.impl.threadpool.DefaultScheduler$JobRunner.run(DefaultScheduler.java:132)
> > >         at
> > >
> >
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> > >         at
> > >
> >
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> > >         at java.lang.Thread.run(Thread.java:745)
> > > result code:2
> > >
> > >
> > >
> >
>

Re: cube build failed at step 3: Build Dimension Dictionary

Posted by Luke Han <lu...@gmail.com>.
We should considering to support this.

Here's JIRA: https://issues.apache.org/jira/browse/KYLIN-889
<https://issues.apache.org/jira/browse/KYLIN-889>

Thanks.


Best Regards!
---------------------

Luke Han

On Sat, Jul 11, 2015 at 9:33 AM, Li Yang <li...@apache.org> wrote:

> En, same old problem..  Kylin expects lookup table to be small, thus check
> it contains only one file on HDFS.
>
> An alternative is manually merge your lookup table into one file.
>
> We should check the size of the table instead really.
>
> On Mon, Jul 6, 2015 at 2:08 PM, liangmeng <13...@139.com> wrote:
>
> > java.lang.IllegalStateException: Expect 1 and only 1 non-zero file under
> > hdfs://masters/apps/hive/warehouse/d_nw_ne_ecell2, but find 4
> >         at
> > org.apache.kylin.dict.lookup.HiveTable.findOnlyFile(HiveTable.java:123)
> >         at
> >
> org.apache.kylin.dict.lookup.HiveTable.computeHDFSLocation(HiveTable.java:107)
> >         at
> > org.apache.kylin.dict.lookup.HiveTable.getHDFSLocation(HiveTable.java:83)
> >         at
> > org.apache.kylin.dict.lookup.HiveTable.getFileTable(HiveTable.java:76)
> >         at
> > org.apache.kylin.dict.lookup.HiveTable.getSignature(HiveTable.java:71)
> >         at
> >
> org.apache.kylin.dict.DictionaryManager.buildDictionary(DictionaryManager.java:164)
> >         at
> > org.apache.kylin.cube.CubeManager.buildDictionary(CubeManager.java:154)
> >         at
> >
> org.apache.kylin.cube.cli.DictionaryGeneratorCLI.processSegment(DictionaryGeneratorCLI.java:53)
> >         at
> >
> org.apache.kylin.cube.cli.DictionaryGeneratorCLI.processSegment(DictionaryGeneratorCLI.java:42)
> >         at
> >
> org.apache.kylin.job.hadoop.dict.CreateDictionaryJob.run(CreateDictionaryJob.java:53)
> >         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
> >         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
> >         at
> >
> org.apache.kylin.job.common.HadoopShellExecutable.doWork(HadoopShellExecutable.java:63)
> >         at
> >
> org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:107)
> >         at
> >
> org.apache.kylin.job.execution.DefaultChainedExecutable.doWork(DefaultChainedExecutable.java:50)
> >         at
> >
> org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:107)
> >         at
> >
> org.apache.kylin.job.impl.threadpool.DefaultScheduler$JobRunner.run(DefaultScheduler.java:132)
> >         at
> >
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> >         at
> >
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> >         at java.lang.Thread.run(Thread.java:745)
> > result code:2
> >
> >
> >
>

Re: cube build failed at step 3: Build Dimension Dictionary

Posted by Li Yang <li...@apache.org>.
En, same old problem..  Kylin expects lookup table to be small, thus check
it contains only one file on HDFS.

An alternative is manually merge your lookup table into one file.

We should check the size of the table instead really.

On Mon, Jul 6, 2015 at 2:08 PM, liangmeng <13...@139.com> wrote:

> java.lang.IllegalStateException: Expect 1 and only 1 non-zero file under
> hdfs://masters/apps/hive/warehouse/d_nw_ne_ecell2, but find 4
>         at
> org.apache.kylin.dict.lookup.HiveTable.findOnlyFile(HiveTable.java:123)
>         at
> org.apache.kylin.dict.lookup.HiveTable.computeHDFSLocation(HiveTable.java:107)
>         at
> org.apache.kylin.dict.lookup.HiveTable.getHDFSLocation(HiveTable.java:83)
>         at
> org.apache.kylin.dict.lookup.HiveTable.getFileTable(HiveTable.java:76)
>         at
> org.apache.kylin.dict.lookup.HiveTable.getSignature(HiveTable.java:71)
>         at
> org.apache.kylin.dict.DictionaryManager.buildDictionary(DictionaryManager.java:164)
>         at
> org.apache.kylin.cube.CubeManager.buildDictionary(CubeManager.java:154)
>         at
> org.apache.kylin.cube.cli.DictionaryGeneratorCLI.processSegment(DictionaryGeneratorCLI.java:53)
>         at
> org.apache.kylin.cube.cli.DictionaryGeneratorCLI.processSegment(DictionaryGeneratorCLI.java:42)
>         at
> org.apache.kylin.job.hadoop.dict.CreateDictionaryJob.run(CreateDictionaryJob.java:53)
>         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
>         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
>         at
> org.apache.kylin.job.common.HadoopShellExecutable.doWork(HadoopShellExecutable.java:63)
>         at
> org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:107)
>         at
> org.apache.kylin.job.execution.DefaultChainedExecutable.doWork(DefaultChainedExecutable.java:50)
>         at
> org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:107)
>         at
> org.apache.kylin.job.impl.threadpool.DefaultScheduler$JobRunner.run(DefaultScheduler.java:132)
>         at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>         at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>         at java.lang.Thread.run(Thread.java:745)
> result code:2
>
>
>