[ https://issues.apache.org/jira/browse/ACCUMULO-3948?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15000835#comment-15000835 ]
ASF GitHub Bot commented on ACCUMULO-3948: ------------------------------------------ Github user joshelser commented on a diff in the pull request: https://github.com/apache/accumulo/pull/51#discussion_r44565413 --- Diff: test/src/main/java/org/apache/accumulo/test/functional/ScannerContextIT.java --- @@ -0,0 +1,227 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.accumulo.test.functional; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.util.Collections; +import java.util.Iterator; +import java.util.Map.Entry; + +import org.apache.accumulo.core.client.BatchScanner; +import org.apache.accumulo.core.client.BatchWriter; +import org.apache.accumulo.core.client.BatchWriterConfig; +import org.apache.accumulo.core.client.Connector; +import org.apache.accumulo.core.client.IteratorSetting; +import org.apache.accumulo.core.client.Scanner; +import org.apache.accumulo.core.conf.Property; +import org.apache.accumulo.core.data.Key; +import org.apache.accumulo.core.data.Mutation; +import org.apache.accumulo.core.data.Range; +import org.apache.accumulo.core.data.Value; +import org.apache.accumulo.core.security.Authorizations; +import org.apache.accumulo.core.util.CachedConfiguration; +import org.apache.accumulo.fate.util.UtilWaitThread; +import org.apache.accumulo.harness.AccumuloClusterHarness; +import org.apache.accumulo.minicluster.impl.MiniAccumuloClusterImpl; +import org.apache.hadoop.fs.FileSystem; +import org.apache.hadoop.fs.Path; +import org.hamcrest.CoreMatchers; +import org.junit.Assume; +import org.junit.Before; +import org.junit.Test; + +public class ScannerContextIT extends AccumuloClusterHarness { + + private static final String CONTEXT = ScannerContextIT.class.getSimpleName(); + private static final String CONTEXT_PROPERTY = Property.VFS_CONTEXT_CLASSPATH_PROPERTY + CONTEXT; + private static final String CONTEXT_DIR = "file:///tmp"; + private static final String CONTEXT_CLASSPATH = CONTEXT_DIR + "/Test.jar"; + private static int ITERATIONS = 10; + + @Override + protected int defaultTimeoutSeconds() { + return 2 * 60; + } + + @Before + public void checkCluster() { + Assume.assumeThat(getClusterType(), CoreMatchers.is(ClusterType.MINI)); + MiniAccumuloClusterImpl mac = (MiniAccumuloClusterImpl) getCluster(); + } + + @Test + public void test() throws Exception { + // Copy the TestIterators jar to tmp + FileSystem fs = FileSystem.get(CachedConfiguration.getInstance()); + Path srcPath = new Path(System.getProperty("user.dir") + "/target/TestIterators-tests.jar"); + Path dstPath = new Path(CONTEXT_DIR + "/Test.jar"); + fs.copyFromLocalFile(srcPath, dstPath); + // Sleep to ensure jar change gets picked up + UtilWaitThread.sleep(5000); --- End diff -- 5s is not enough to work around commons vfs being busted. I think we've been having success with at least 7s in accumulo-start tests. > Enable A/B testing of scan iterators on a table > ----------------------------------------------- > > Key: ACCUMULO-3948 > URL: https://issues.apache.org/jira/browse/ACCUMULO-3948 > Project: Accumulo > Issue Type: Improvement > Components: tserver > Reporter: Dave Marion > Assignee: Dave Marion > Fix For: 1.8.0 > > Attachments: ACCUMULO-3948.1-6-3.patch, TestIterator.patch > > > Classpath contexts are assigned to a table via the table configuration. You > can test at scale by cloning your table and assigning a new classpath context > to the cloned table. However, you would also need to change your application > to use the new table names and since we cannot disable compactions you would > start to consume more space in the filesystem for that table. We can support > users passing in a context name to use for the scan on existing tables. -- This message was sent by Atlassian JIRA (v6.3.4#6332)