Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
Accumulo >> mail # user >> Problem with using iterators to access table


Copy link to this message
-
RE: Problem with using iterators to access table
I've seen similar exceptions with the iterators I've written and it turned out to be invalid visibility labeling encountered by the scanner.  See JIRA tickets ACCUMULO-651 and/or ACCUMULO-360.

-----Original Message-----
From: Jim Klucar [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, June 27, 2012 12:17
To: [EMAIL PROTECTED]
Subject: Re: Problem with using iterators to access table

My first thought would be that you didn't deploy your iterator jar to the accumulo lib/ext directory. That wouldn't be causing the "built-in" iterators to produce an error also. Unfortunately this error message isn't very informative because all the client knows is that a Thrift service call somehow failed. The error message you want to look at will be in the tserver_<hostname>.log file (or .debug.log
file) on the tserver. This is in $ACCUMULO_HOME/logs by default.

On Wed, Jun 27, 2012 at 1:03 PM, Jonathan Hsu <[EMAIL PROTECTED]> wrote:
> I'm trying to use iterators to access a table that I created.  When I
> run a MockInstance, the iterators work perfectly, but they don't work
> when I try to use them on an actual table.  Also, if I don't add the
> iterators, the scanner works fine as well.  I wrote both iterators,
> but the error doesn't seem to be with my iterators, because I also
> attempted the same thing with one of accumulo's iterators, and got the
> same result.  I know that the table is created correctly (by checking the accumulo shell).
>
> Here is my code :
>
> /* created the table first */
>
> Scanner scann = conn.createScanner(table, new Authorizations());
> scann.setRange(new Range("term1"));
>
> IteratorSetting cfg = new IteratorSetting(10, MyIterator1.class,
> properties); scann.addScanIterator(cfg);
>
> IteratorSetting cfg2 = new IteratorSetting(11, MyIterator2.class,
> properties); scann.addScanIterator(cfg2);
>
>
>
> I'm getting this error :
>
> Exception in thread "main" java.lang.RuntimeException:
> org.apache.accumulo.core.client.impl.AccumuloServerException: Error on
> server127.0.0.1:9997
> at
> org.apache.accumulo.core.client.impl.ScannerIterator.hasNext(ScannerIt
> erator.java:186)
> at
> com.bah.applefox.test.plugins.fulltextindex.DebugTest.main(DebugTest.j
> ava:151)
>
> Caused by: org.apache.accumulo.core.client.impl.AccumuloServerException:
> Error on server 127.0.0.1:9997
> at
> org.apache.accumulo.core.client.impl.ThriftScanner.scan(ThriftScanner.
> java:302)
> at
> org.apache.accumulo.core.client.impl.ScannerIterator$Reader.run(Scanne
> rIterator.java:94)
> at
> org.apache.accumulo.core.client.impl.ScannerIterator.hasNext(ScannerIt
> erator.java:176)
> ... 1 more
>
> Caused by: org.apache.thrift.TApplicationException: Internal error
> processing startScan at
> org.apache.thrift.TApplicationException.read(TApplicationException.jav
> a:108)
> at
> org.apache.accumulo.core.tabletserver.thrift.TabletClientService$Clien
> t.recv_startScan(TabletClientService.java:184)
> at
> org.apache.accumulo.core.tabletserver.thrift.TabletClientService$Clien
> t.startScan(TabletClientService.java:157)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.j
> ava:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess
> orImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597)
> at
> org.apache.accumulo.cloudtrace.instrument.thrift.TraceWrap$2.invoke(Tr
> aceWrap.java:84)
> at $Proxy2.startScan(Unknown Source)
> at
> org.apache.accumulo.core.client.impl.ThriftScanner.scan(ThriftScanner.
> java:415)
> at
> org.apache.accumulo.core.client.impl.ThriftScanner.scan(ThriftScanner.
> java:295)
> ... 3 more
>
>
> Thanks for your time,
>
> Jonathan Hsu