@Override public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws Exception { final String tableName = OptUtil.getTableOpt(cl, shellState); final Map<String,Set<Text>> groups = shellState.getAccumuloClient().tableOperations() .getLocalityGroups(tableName); for (Entry<String,Set<Text>> entry : groups.entrySet()) { shellState.getReader() .println(entry.getKey() + "=" + LocalityGroupUtil.encodeColumnFamilies(entry.getValue())); } return 0; }
private void addLocalityGroup(final TableOperations tops, final String tableName, final String localityGroup) throws AccumuloException, TableNotFoundException, AccumuloSecurityException { if (tops.exists(tableName)) { final Map<String,Set<Text>> localityGroups = tops.getLocalityGroups(tableName); final Set<Text> groupSet = new HashSet<>(); groupSet.add(new Text(localityGroup)); localityGroups.put(localityGroup, groupSet); tops.setLocalityGroups(tableName, localityGroups); } } }
/** * Is the specified configuration already included in the current table configuration for locality groups. * * @param tableName * @param newLocalityGroups * @param tops * @return true if the new configuration is already included in the current configuration * @throws AccumuloException * @throws TableNotFoundException * @throws AccumuloSecurityException */ protected boolean areLocalityGroupsConfigured(String tableName, Map<String,Set<Text>> newLocalityGroups, TableOperations tops) throws AccumuloException, TableNotFoundException, AccumuloSecurityException { Map<String,Set<Text>> localityGroups = tops.getLocalityGroups(tableName); for (Map.Entry<String,Set<Text>> entry : newLocalityGroups.entrySet()) { Set<Text> families = localityGroups.get(entry.getKey()); if (families == null) { return false; } if (!families.containsAll(entry.getValue())) { return false; } } return true; }
Map<String,Set<Text>> localityGroups = tops.getLocalityGroups(tableName); for (Map.Entry<String,Set<Text>> entry : newLocalityGroups.entrySet()) { Set<Text> families = localityGroups.get(entry.getKey());
@Override public Map<String,Set<String>> getLocalityGroups(ByteBuffer login, String tableName) throws org.apache.accumulo.proxy.thrift.AccumuloException, org.apache.accumulo.proxy.thrift.AccumuloSecurityException, org.apache.accumulo.proxy.thrift.TableNotFoundException, TException { try { Map<String,Set<Text>> groups = getConnector(login).tableOperations() .getLocalityGroups(tableName); Map<String,Set<String>> ret = new HashMap<>(); for (Entry<String,Set<Text>> entry : groups.entrySet()) { Set<String> value = new HashSet<>(); ret.put(entry.getKey(), value); for (Text val : entry.getValue()) { value.add(val.toString()); } } return ret; } catch (Exception e) { handleExceptionTNF(e); return null; } }
@Override public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws Exception { final String tableName = OptUtil.getTableOpt(cl, shellState); final Map<String,Set<Text>> groups = shellState.getConnector().tableOperations() .getLocalityGroups(tableName); for (Entry<String,Set<Text>> entry : groups.entrySet()) { shellState.getReader() .println(entry.getKey() + "=" + LocalityGroupUtil.encodeColumnFamilies(entry.getValue())); } return 0; }
: compressionType)); if (Iterables.contains(localityGroupTables, tableName)) { Map<String,Set<Text>> localityGroups = connector.tableOperations().getLocalityGroups(tableName);
if (num > 6) { log.debug("Retrieving info for " + tableName); tableOps.getLocalityGroups(tableName); tableOps.getProperties(tableName); tableOps.listSplits(tableName); Map<String,Set<Text>> groups = tableOps.getLocalityGroups(state.getString("imageTableName"));
@Test public void testLocalityGroupsProperlyLoadedFromConfig() throws AccumuloSecurityException, AccumuloException, TableNotFoundException { LoadDateTableConfigHelper loadDateTableConfigHelper = new LoadDateTableConfigHelper(); Configuration configuration = new Configuration(); configuration.addResource(ClassLoader.getSystemResource("config/metadata-config.xml")); configuration.set(LoadDateTableConfigHelper.LOAD_DATES_TABLE_NAME_PROP, TABLE_NAME); loadDateTableConfigHelper.setup(TABLE_NAME, configuration, log); loadDateTableConfigHelper.configure(tableOperations); String actual = tableOperations.getLocalityGroups(TABLE_NAME).toString(); String errorMessage = "Incorrect result (possibly the null character): " + actual; Assert.assertTrue(errorMessage, actual.contains("LAC\u0000protobufEdge")); Assert.assertTrue(errorMessage, actual.contains("LAC\u0000errorShard")); Assert.assertTrue(errorMessage, actual.contains("LAC\u0000shard")); Assert.assertTrue(errorMessage, actual.contains("LAC\u0000knowledgeShard")); }
client.tableOperations().getLocalityGroups(config.getAccumuloTable()); Assert.assertEquals("Unexpected locality group count.", 1, localityGroups.size()); Entry<String, Set<Text>> localityGroup = localityGroups.entrySet().iterator().next();
break; case 15: ops.getLocalityGroups(tableName); fail(); break;
}).anyTimes(); mock.getLocalityGroups(EasyMock.anyObject(String.class)); EasyMock.expectLastCall().andAnswer(() -> {
}).anyTimes(); mock.getLocalityGroups(EasyMock.anyObject(String.class)); EasyMock.expectLastCall().andAnswer(() -> {
}).anyTimes(); mock.getLocalityGroups(EasyMock.anyObject(String.class)); EasyMock.expectLastCall().andAnswer(() -> {
}).anyTimes(); mock.getLocalityGroups(EasyMock.anyObject(String.class)); EasyMock.expectLastCall().andAnswer(() -> {