Java Code Examples for org.apache.hadoop.hbase.client.ColumnFamilyDescriptor#getMinVersions()
The following examples show how to use
org.apache.hadoop.hbase.client.ColumnFamilyDescriptor#getMinVersions() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: ExpiredMobFileCleaner.java From hbase with Apache License 2.0 | 5 votes |
@edu.umd.cs.findbugs.annotations.SuppressWarnings(value="REC_CATCH_EXCEPTION", justification="Intentional") @Override public int run(String[] args) throws Exception { if (args.length != 2) { printUsage(); return 1; } String tableName = args[0]; String familyName = args[1]; TableName tn = TableName.valueOf(tableName); Connection connection = ConnectionFactory.createConnection(getConf()); Admin admin = connection.getAdmin(); try { TableDescriptor htd = admin.getDescriptor(tn); ColumnFamilyDescriptor family = htd.getColumnFamily(Bytes.toBytes(familyName)); if (family == null || !family.isMobEnabled()) { throw new IOException("Column family " + familyName + " is not a MOB column family"); } if (family.getMinVersions() > 0) { throw new IOException( "The minVersions of the column family is not 0, could not be handled by this cleaner"); } cleanExpiredMobFiles(tableName, family); return 0; } finally { admin.close(); try { connection.close(); } catch (IOException e) { LOG.error("Failed to close the connection.", e); } } }
Example 2
Source File: TableDescriptorChecker.java From hbase with Apache License 2.0 | 4 votes |
private static void checkCompactionPolicy(Configuration conf, TableDescriptor td) throws IOException { // FIFO compaction has some requirements // Actually FCP ignores periodic major compactions String className = td.getValue(DefaultStoreEngine.DEFAULT_COMPACTION_POLICY_CLASS_KEY); if (className == null) { className = conf.get(DefaultStoreEngine.DEFAULT_COMPACTION_POLICY_CLASS_KEY, ExploringCompactionPolicy.class.getName()); } int blockingFileCount = HStore.DEFAULT_BLOCKING_STOREFILE_COUNT; String sv = td.getValue(HStore.BLOCKING_STOREFILES_KEY); if (sv != null) { blockingFileCount = Integer.parseInt(sv); } else { blockingFileCount = conf.getInt(HStore.BLOCKING_STOREFILES_KEY, blockingFileCount); } for (ColumnFamilyDescriptor hcd : td.getColumnFamilies()) { String compactionPolicy = hcd.getConfigurationValue(DefaultStoreEngine.DEFAULT_COMPACTION_POLICY_CLASS_KEY); if (compactionPolicy == null) { compactionPolicy = className; } if (!compactionPolicy.equals(FIFOCompactionPolicy.class.getName())) { continue; } // FIFOCompaction String message = null; // 1. Check TTL if (hcd.getTimeToLive() == ColumnFamilyDescriptorBuilder.DEFAULT_TTL) { message = "Default TTL is not supported for FIFO compaction"; throw new IOException(message); } // 2. Check min versions if (hcd.getMinVersions() > 0) { message = "MIN_VERSION > 0 is not supported for FIFO compaction"; throw new IOException(message); } // 3. blocking file count sv = hcd.getConfigurationValue(HStore.BLOCKING_STOREFILES_KEY); if (sv != null) { blockingFileCount = Integer.parseInt(sv); } if (blockingFileCount < 1000) { message = "Blocking file count '" + HStore.BLOCKING_STOREFILES_KEY + "' " + blockingFileCount + " is below recommended minimum of 1000 for column family " + hcd.getNameAsString(); throw new IOException(message); } } }
Example 3
Source File: ScanInfo.java From hbase with Apache License 2.0 | 3 votes |
/** * @param conf * @param family {@link ColumnFamilyDescriptor} describing the column family * @param ttl Store's TTL (in ms) * @param timeToPurgeDeletes duration in ms after which a delete marker can be purged during a * major compaction. * @param comparator The store's comparator */ public ScanInfo(Configuration conf, ColumnFamilyDescriptor family, long ttl, long timeToPurgeDeletes, CellComparator comparator) { this(conf, family.getName(), family.getMinVersions(), family.getMaxVersions(), ttl, family.getKeepDeletedCells(), family.getBlocksize(), timeToPurgeDeletes, comparator, family.isNewVersionBehavior()); }