You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@accumulo.apache.org by "Josh Elser (JIRA)" <ji...@apache.org> on 2015/03/09 21:07:39 UTC

[jira] [Commented] (ACCUMULO-3653) Compaction with custom compaction strategy class doesn't validate specified class

    [ https://issues.apache.org/jira/browse/ACCUMULO-3653?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14353500#comment-14353500 ] 

Josh Elser commented on ACCUMULO-3653:
--------------------------------------

I haven't tested to see if this also happens for 1.6 as well.

> Compaction with custom compaction strategy class doesn't validate specified class
> ---------------------------------------------------------------------------------
>
>                 Key: ACCUMULO-3653
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-3653
>             Project: Accumulo
>          Issue Type: Bug
>          Components: tserver
>            Reporter: Josh Elser
>            Priority: Blocker
>             Fix For: 1.7.0
>
>
> Say I create a table, insert a record and issue a compaction for a class that doesn't exist:
> {noformat}
> > createtable josh
> josh> insert a b c d
> josh> compact -s doesnt.exist
> {noformat}
> {panel:title=Tserver}
> {noformat}
> 2015/03/09 15:47:28,860	tserver:hw10447.local	1	
> ERROR
> 	
> java.lang.ClassNotFoundException: doesnt.exist
> 	java.lang.RuntimeException: java.lang.ClassNotFoundException: doesnt.exist
> 		at org.apache.accumulo.tserver.tablet.Tablet.createCompactionStrategy(Tablet.java:2545)
> 		at org.apache.accumulo.tserver.tablet.Tablet.compactAll(Tablet.java:2578)
> 		at org.apache.accumulo.tserver.TabletServer$ThriftClientHandler.compact(TabletServer.java:1687)
> 		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.accumulo.core.trace.wrappers.RpcServerInvocationHandler.invoke(RpcServerInvocationHandler.java:46)
> 		at org.apache.accumulo.server.rpc.RpcWrapper$1.invoke(RpcWrapper.java:47)
> 		at com.sun.proxy.$Proxy19.compact(Unknown Source)
> 		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.accumulo.server.rpc.TCredentialsUpdatingInvocationHandler.invokeMethod(TCredentialsUpdatingInvocationHandler.java:153)
> 		at org.apache.accumulo.server.rpc.TCredentialsUpdatingInvocationHandler.invoke(TCredentialsUpdatingInvocationHandler.java:58)
> 		at com.sun.proxy.$Proxy19.compact(Unknown Source)
> 		at org.apache.accumulo.core.tabletserver.thrift.TabletClientService$Processor$compact.getResult(TabletClientService.java:2728)
> 		at org.apache.accumulo.core.tabletserver.thrift.TabletClientService$Processor$compact.getResult(TabletClientService.java:2714)
> 		at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
> 		at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
> 		at org.apache.accumulo.server.rpc.UGIAssumingProcessor.process(UGIAssumingProcessor.java:102)
> 		at org.apache.accumulo.server.rpc.TimedProcessor.process(TimedProcessor.java:63)
> 		at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:225)
> 		at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> 		at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> 		at org.apache.accumulo.core.util.LoggingRunnable.run(LoggingRunnable.java:35)
> 		at java.lang.Thread.run(Thread.java:745)
> 	Caused by: java.lang.ClassNotFoundException: doesnt.exist
> 		at org.apache.commons.vfs2.impl.VFSClassLoader.findClass(VFSClassLoader.java:175)
> 		at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
> 		at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> 		at org.apache.accumulo.start.classloader.vfs.AccumuloVFSClassLoader.loadClass(AccumuloVFSClassLoader.java:109)
> 		at org.apache.accumulo.tserver.tablet.Tablet.createCompactionStrategy(Tablet.java:2540)
> 		... 27 more
> {noformat}
> {panel}
> {panel:title=Master}
> {noformat}
> 2015/03/09 15:47:29,371	master:hw10447.local	1	
> WARN
> 	
> Failed to execute Repo, tid=34a89a8062f38a79
> 	java.lang.RuntimeException: org.apache.accumulo.core.client.impl.AccumuloServerException: Error on server hw10447.local:9997
> 		at org.apache.accumulo.core.client.impl.ScannerIterator.hasNext(ScannerIterator.java:180)
> 		at org.apache.accumulo.core.client.IsolatedScanner$RowBufferingIterator.readRow(IsolatedScanner.java:69)
> 		at org.apache.accumulo.core.client.IsolatedScanner$RowBufferingIterator.<init>(IsolatedScanner.java:148)
> 		at org.apache.accumulo.core.client.IsolatedScanner.iterator(IsolatedScanner.java:236)
> 		at org.apache.accumulo.core.client.RowIterator.<init>(RowIterator.java:117)
> 		at org.apache.accumulo.master.tableOps.CompactionDriver.isReady(CompactRange.java:115)
> 		at org.apache.accumulo.master.tableOps.CompactionDriver.isReady(CompactRange.java:67)
> 		at org.apache.accumulo.master.tableOps.TraceRepo.isReady(TraceRepo.java:47)
> 		at org.apache.accumulo.fate.Fate$TransactionRunner.run(Fate.java:68)
> 		at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> 		at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> 		at org.apache.accumulo.fate.util.LoggingRunnable.run(LoggingRunnable.java:34)
> 		at java.lang.Thread.run(Thread.java:745)
> 	Caused by: org.apache.accumulo.core.client.impl.AccumuloServerException: Error on server hw10447.local:9997
> 		at org.apache.accumulo.core.client.impl.ThriftScanner.scan(ThriftScanner.java:286)
> 		at org.apache.accumulo.core.client.impl.ScannerIterator$Reader.run(ScannerIterator.java:80)
> 		at org.apache.accumulo.core.client.impl.ScannerIterator.hasNext(ScannerIterator.java:170)
> 		... 12 more
> 	Caused by: org.apache.thrift.TApplicationException: Internal error processing compact
> 		at org.apache.thrift.TApplicationException.read(TApplicationException.java:111)
> 		at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:71)
> 		at org.apache.accumulo.core.tabletserver.thrift.TabletClientService$Client.recv_startScan(TabletClientService.java:232)
> 		at org.apache.accumulo.core.tabletserver.thrift.TabletClientService$Client.startScan(TabletClientService.java:208)
> 		at org.apache.accumulo.core.client.impl.ThriftScanner.scan(ThriftScanner.java:403)
> 		at org.apache.accumulo.core.client.impl.ThriftScanner.scan(ThriftScanner.java:278)
> 		... 14 more
> 2015/03/09 15:47:30,018	master:hw10447.local	1	
> WARN
> 	
> null row
> 	java.lang.IllegalArgumentException: null row
> 		at org.apache.accumulo.core.data.Key.<init>(Key.java:388)
> 		at org.apache.accumulo.core.client.impl.TabletServerBatchReaderIterator.doLookup(TabletServerBatchReaderIterator.java:647)
> 		at org.apache.accumulo.core.client.impl.TabletServerBatchReaderIterator$QueryTask.run(TabletServerBatchReaderIterator.java:349)
> 		at org.apache.htrace.wrappers.TraceRunnable.run(TraceRunnable.java:57)
> 		at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> 		at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> 		at org.apache.accumulo.core.util.LoggingRunnable.run(LoggingRunnable.java:35)
> 		at java.lang.Thread.run(Thread.java:745)
> 2015/03/09 15:47:30,018	master:hw10447.local	1	
> ERROR
> 	
> Error processing table state for store Metadata Tablets
> 	java.lang.IllegalArgumentException: null row
> 		at org.apache.accumulo.core.data.Key.<init>(Key.java:388)
> 		at org.apache.accumulo.core.client.impl.TabletServerBatchReaderIterator.doLookup(TabletServerBatchReaderIterator.java:647)
> 		at org.apache.accumulo.core.client.impl.TabletServerBatchReaderIterator$QueryTask.run(TabletServerBatchReaderIterator.java:349)
> 		at org.apache.htrace.wrappers.TraceRunnable.run(TraceRunnable.java:57)
> 		at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> 		at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> 		at org.apache.accumulo.core.util.LoggingRunnable.run(LoggingRunnable.java:35)
> 		at java.lang.Thread.run(Thread.java:745)
> 2015/03/09 15:47:30,027	master:hw10447.local	1	
> WARN
> 	
> Error on server hw10447.local:9997
> 	org.apache.accumulo.core.client.impl.AccumuloServerException: Error on server hw10447.local:9997
> 		at org.apache.accumulo.core.client.impl.TabletServerBatchReaderIterator.doLookup(TabletServerBatchReaderIterator.java:695)
> 		at org.apache.accumulo.core.client.impl.TabletServerBatchReaderIterator$QueryTask.run(TabletServerBatchReaderIterator.java:349)
> 		at org.apache.htrace.wrappers.TraceRunnable.run(TraceRunnable.java:57)
> 		at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> 		at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> 		at org.apache.accumulo.core.util.LoggingRunnable.run(LoggingRunnable.java:35)
> 		at java.lang.Thread.run(Thread.java:745)
> 	Caused by: org.apache.thrift.TApplicationException: closeMultiScan failed: out of sequence response
> 		at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:76)
> 		at org.apache.accumulo.core.tabletserver.thrift.TabletClientService$Client.recv_closeMultiScan(TabletClientService.java:371)
> 		at org.apache.accumulo.core.tabletserver.thrift.TabletClientService$Client.closeMultiScan(TabletClientService.java:357)
> 		at org.apache.accumulo.core.client.impl.TabletServerBatchReaderIterator.doLookup(TabletServerBatchReaderIterator.java:681)
> 		... 6 more
> 2015/03/09 15:47:35,531	master:hw10447.local	4	
> ERROR
> 	
> Error processing table state for store Normal Tablets
> 	java.lang.RuntimeException: java.lang.RuntimeException: Failed to create iterator
> 		at org.apache.accumulo.server.master.state.MetaDataTableScanner.<init>(MetaDataTableScanner.java:71)
> 		at org.apache.accumulo.server.master.state.MetaDataTableScanner.<init>(MetaDataTableScanner.java:55)
> 		at org.apache.accumulo.server.master.state.MetaDataStateStore.iterator(MetaDataStateStore.java:62)
> 		at org.apache.accumulo.master.TabletGroupWatcher.run(TabletGroupWatcher.java:170)
> 	Caused by: java.lang.RuntimeException: Failed to create iterator
> 		at org.apache.accumulo.core.client.impl.TabletServerBatchReaderIterator.<init>(TabletServerBatchReaderIterator.java:158)
> 		at org.apache.accumulo.core.client.impl.TabletServerBatchReader.iterator(TabletServerBatchReader.java:115)
> 		at org.apache.accumulo.server.master.state.MetaDataTableScanner.<init>(MetaDataTableScanner.java:65)
> 		... 3 more
> 	Caused by: org.apache.accumulo.core.client.impl.AccumuloServerException: Error on server hw10447.local:9997
> 		at org.apache.accumulo.core.client.impl.TabletServerBatchReaderIterator.doLookup(TabletServerBatchReaderIterator.java:695)
> 		at org.apache.accumulo.core.client.impl.TabletServerBatchReaderIterator.doLookup(TabletServerBatchReaderIterator.java:594)
> 		at org.apache.accumulo.core.metadata.MetadataLocationObtainer.lookupTablets(MetadataLocationObtainer.java:175)
> 		at org.apache.accumulo.core.client.impl.TabletLocatorImpl.processInvalidated(TabletLocatorImpl.java:664)
> 		at org.apache.accumulo.core.client.impl.TabletLocatorImpl._locateTablet(TabletLocatorImpl.java:607)
> 		at org.apache.accumulo.core.client.impl.TabletLocatorImpl.binRanges(TabletLocatorImpl.java:280)
> 		at org.apache.accumulo.core.client.impl.TabletLocatorImpl.binRanges(TabletLocatorImpl.java:355)
> 		at org.apache.accumulo.core.client.impl.TimeoutTabletLocator.binRanges(TimeoutTabletLocator.java:104)
> 		at org.apache.accumulo.core.client.impl.TabletServerBatchReaderIterator.binRanges(TabletServerBatchReaderIterator.java:233)
> 		at org.apache.accumulo.core.client.impl.TabletServerBatchReaderIterator.lookup(TabletServerBatchReaderIterator.java:220)
> 		at org.apache.accumulo.core.client.impl.TabletServerBatchReaderIterator.<init>(TabletServerBatchReaderIterator.java:154)
> 		... 5 more
> 	Caused by: org.apache.thrift.TApplicationException: closeMultiScan failed: out of sequence response
> 		at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:76)
> 		at org.apache.accumulo.core.tabletserver.thrift.TabletClientService$Client.recv_closeMultiScan(TabletClientService.java:371)
> 		at org.apache.accumulo.core.tabletserver.thrift.TabletClientService$Client.closeMultiScan(TabletClientService.java:357)
> 		at org.apache.accumulo.core.client.impl.TabletServerBatchReaderIterator.doLookup(TabletServerBatchReaderIterator.java:681)
> 		... 15 more
> {noformat}
> {panel}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)