[ 
https://issues.apache.org/jira/browse/ACCUMULO-2911?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dave Marion resolved ACCUMULO-2911.
-----------------------------------
    Resolution: Cannot Reproduce

Closing this due to lack of response. Can re-open if it's still an issue.

> setscaniter and setshelliter unable to load class.
> --------------------------------------------------
>
>                 Key: ACCUMULO-2911
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-2911
>             Project: Accumulo
>          Issue Type: Bug
>    Affects Versions: 1.5.0
>            Reporter: David Medinets
>            Priority: Trivial
>
> Problem:
> I can use a custom iterator using the setiter command but the same iterator 
> does not work using the setscaniter or setshelliter commands.
> References:
>   https://blogs.apache.org/accumulo/entry/the_accumulo_classloader
>   http://accumulo.apache.org/1.5/examples/classpath.html
> Description:
> I am using my https://github.com/medined/D4M_Schema project to start 
> Accumulo. So the environment that I am using can be duplicated exactly if 
> needed. I am using
> Accumulo: 1.5.0
> Hadoop: 1.2.1
> The classpath settings in accumulo-site.xml are the following (which I think 
> are the default):
>     <property>
>       <name>general.classpaths</name>
>       <value>
>     $ACCUMULO_HOME/server/target/classes/,
>     $ACCUMULO_HOME/core/target/classes/,
>     $ACCUMULO_HOME/start/target/classes/,
>     $ACCUMULO_HOME/examples/target/classes/,
>         $ACCUMULO_HOME/lib/[^.].$ACCUMULO_VERSION.jar,
>         $ACCUMULO_HOME/lib/[^.].*.jar,
>         $ZOOKEEPER_HOME/zookeeper[^.].*.jar,
>         $HADOOP_HOME/conf,
>         $HADOOP_HOME/[^.].*.jar,
>         $HADOOP_HOME/lib/[^.].*.jar,
>       </value>
>       <description>Classpaths that accumulo checks for updates and class 
> files.
>       When using the Security Manager, please remove the 
> ".../target/classes/" values.
>       </description>
>     </property>
> I can load my iterator using setiter but not with setscaniter or setshelliter.
> Here is my do-nothing iterator:
> public class MyIterator extends WrappingIterator implements OptionDescriber {
>     @Override
>     public IteratorOptions describeOptions() {
>         String name = "dummy";
>         String description = "Dummy Description";
>         Map<String, String> namedOptions = new HashMap<String, String>();
>         List<String> unnamedOptionDescriptions = null;
>         return new IteratorOptions(name, description, namedOptions, 
> unnamedOptionDescriptions);
>     }
>     @Override
>     public boolean validateOptions(Map<String, String> options) {
>         return true;
>     }
>     
> }
> I copy the jar file out to HDFS:
> hadoop fs -mkdir /user/vagrant/d4m/classpath
> hadoop fs -put /vagrant/schema/target/d4m_schema-0.0.1-SNAPSHOT.jar 
> /user/vagrant/classpath
> I set the table-specific classpath context:
> createtable atest
> table atest
> insert row cf cq value
> config -s 
> general.vfs.context.classpath.d4m=hdfs://affy-master:9000/user/vagrant/classpath
> config -t atest -s table.classpath.context=d4m
> Now I can configure the iterator and scan over the single row without a 
> problem:
> setiter -n MyIterator -p 10 -scan -minc -majc -class 
> com.codebits.d4m.iterator.MyIterator
> scan
> deleteiter -n MyIterator -scan -minc -majc 
> However, the setscaniter commands fails:
> root@instance atest> setscaniter -n MyIterator -p 10 -class 
> com.codebits.d4m.iterator.MyIterator
> 2014-06-15 02:54:14,098 [shell.Shell] WARN : Deprecated, use setshelliter
> Dummy Description
> 2014-06-15 02:54:14,126 [shell.Shell] ERROR: 
> org.apache.accumulo.core.util.shell.ShellCommandException: Command could not 
> be initialized (Unable to load com.codebits.d4m.iterator.MyIterator)
> As does the setshelliter:
> root@instance atest> setshelliter -pn d4m -n MyIterator -p 10 -class 
> com.codebits.d4m.iterator.MyIterator
> Dummy Description
> 2014-06-15 02:55:07,025 [shell.Shell] ERROR: 
> org.apache.accumulo.core.util.shell.ShellCommandException: Command could not 
> be initialized (Unable to load com.codebits.d4m.iterator.MyIterator)
> I don't see any messages in the log files. 



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

Reply via email to