当前位置: 首页>>代码示例>>Java>>正文


Java HRegionInfo090x.getTableDesc方法代码示例

本文整理汇总了Java中org.apache.hadoop.hbase.migration.HRegionInfo090x.getTableDesc方法的典型用法代码示例。如果您正苦于以下问题:Java HRegionInfo090x.getTableDesc方法的具体用法?Java HRegionInfo090x.getTableDesc怎么用?Java HRegionInfo090x.getTableDesc使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.hadoop.hbase.migration.HRegionInfo090x的用法示例。


在下文中一共展示了HRegionInfo090x.getTableDesc方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: visit

import org.apache.hadoop.hbase.migration.HRegionInfo090x; //导入方法依赖的package包/类
@Override
public boolean visit(Result r) throws IOException {
  if (r ==  null || r.isEmpty()) return true;
  // Check info:regioninfo, info:splitA, and info:splitB.  Make sure all
  // have migrated HRegionInfos... that there are no leftover 090 version
  // HRegionInfos.
  byte [] hriBytes = getBytes(r, HConstants.REGIONINFO_QUALIFIER);
  // Presumes that an edit updating all three cells either succeeds or
  // doesn't -- that we don't have case of info:regioninfo migrated but not
  // info:splitA.
  if (isMigrated(hriBytes)) return true;
  // OK. Need to migrate this row in meta.
  HRegionInfo090x hri090 = getHRegionInfo090x(hriBytes);
  HTableDescriptor htd = hri090.getTableDesc();
  if (htd == null) {
    LOG.warn("A 090 HRI has null HTD? Continuing; " + hri090.toString());
    return true;
  }
  if (!this.htds.contains(htd)) {
    // If first time we are adding a table, then write it out to fs.
    // Presumes that first region in table has THE table's schema which
    // might not be too bad of a presumption since it'll be first region
    // 'altered'
    this.services.getMasterFileSystem().createTableDescriptor(htd);
    this.htds.add(htd);
  }
  // This will 'migrate' the hregioninfo from 090 version to 092.
  HRegionInfo hri = new HRegionInfo(hri090);
  // Now make a put to write back to meta.
  Put p = new Put(hri.getRegionName());
  p.add(HConstants.CATALOG_FAMILY, HConstants.REGIONINFO_QUALIFIER,
    Writables.getBytes(hri));
  // Now check info:splitA and info:splitB if present.  Migrate these too.
  checkSplit(r, p, HConstants.SPLITA_QUALIFIER);
  checkSplit(r, p, HConstants.SPLITB_QUALIFIER);
  // Below we fake out putToCatalogTable
  MetaEditor.putToCatalogTable(this.services.getCatalogTracker(), p);
  LOG.info("Migrated " + Bytes.toString(p.getRow()));
  return true;
}
 
开发者ID:fengchen8086,项目名称:LCIndex-HBase-0.94.16,代码行数:41,代码来源:MetaMigrationRemovingHTD.java


注:本文中的org.apache.hadoop.hbase.migration.HRegionInfo090x.getTableDesc方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。