Repository: hbase-site
Updated Branches:
  refs/heads/asf-site 2f2341055 -> 83fd16f2f


http://git-wip-us.apache.org/repos/asf/hbase-site/blob/83fd16f2/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/wal/AbstractTestWALReplay.html
----------------------------------------------------------------------
diff --git 
a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/wal/AbstractTestWALReplay.html
 
b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/wal/AbstractTestWALReplay.html
index 21a4102..6fd805b 100644
--- 
a/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/wal/AbstractTestWALReplay.html
+++ 
b/testdevapidocs/src-html/org/apache/hadoop/hbase/regionserver/wal/AbstractTestWALReplay.html
@@ -1118,134 +1118,136 @@
 <span class="sourceLineNo">1110</span>    private HRegion r;<a 
name="line.1110"></a>
 <span class="sourceLineNo">1111</span><a name="line.1111"></a>
 <span class="sourceLineNo">1112</span>    @Override<a name="line.1112"></a>
-<span class="sourceLineNo">1113</span>    public void requestFlush(HRegion 
region, boolean force, FlushLifeCycleTracker tracker) {<a name="line.1113"></a>
+<span class="sourceLineNo">1113</span>    public boolean requestFlush(HRegion 
region, boolean force, FlushLifeCycleTracker tracker) {<a name="line.1113"></a>
 <span class="sourceLineNo">1114</span>      try {<a name="line.1114"></a>
 <span class="sourceLineNo">1115</span>        r.flush(force);<a 
name="line.1115"></a>
-<span class="sourceLineNo">1116</span>      } catch (IOException e) {<a 
name="line.1116"></a>
-<span class="sourceLineNo">1117</span>        throw new 
RuntimeException("Exception flushing", e);<a name="line.1117"></a>
-<span class="sourceLineNo">1118</span>      }<a name="line.1118"></a>
-<span class="sourceLineNo">1119</span>    }<a name="line.1119"></a>
-<span class="sourceLineNo">1120</span><a name="line.1120"></a>
-<span class="sourceLineNo">1121</span>    @Override<a name="line.1121"></a>
-<span class="sourceLineNo">1122</span>    public void 
requestDelayedFlush(HRegion region, long when, boolean forceFlushAllStores) {<a 
name="line.1122"></a>
-<span class="sourceLineNo">1123</span>    }<a name="line.1123"></a>
-<span class="sourceLineNo">1124</span><a name="line.1124"></a>
-<span class="sourceLineNo">1125</span>    @Override<a name="line.1125"></a>
-<span class="sourceLineNo">1126</span>    public void 
registerFlushRequestListener(FlushRequestListener listener) {<a 
name="line.1126"></a>
-<span class="sourceLineNo">1127</span><a name="line.1127"></a>
-<span class="sourceLineNo">1128</span>    }<a name="line.1128"></a>
+<span class="sourceLineNo">1116</span>        return true;<a 
name="line.1116"></a>
+<span class="sourceLineNo">1117</span>      } catch (IOException e) {<a 
name="line.1117"></a>
+<span class="sourceLineNo">1118</span>        throw new 
RuntimeException("Exception flushing", e);<a name="line.1118"></a>
+<span class="sourceLineNo">1119</span>      }<a name="line.1119"></a>
+<span class="sourceLineNo">1120</span>    }<a name="line.1120"></a>
+<span class="sourceLineNo">1121</span><a name="line.1121"></a>
+<span class="sourceLineNo">1122</span>    @Override<a name="line.1122"></a>
+<span class="sourceLineNo">1123</span>    public boolean 
requestDelayedFlush(HRegion region, long when, boolean forceFlushAllStores) {<a 
name="line.1123"></a>
+<span class="sourceLineNo">1124</span>      return true;<a 
name="line.1124"></a>
+<span class="sourceLineNo">1125</span>    }<a name="line.1125"></a>
+<span class="sourceLineNo">1126</span><a name="line.1126"></a>
+<span class="sourceLineNo">1127</span>    @Override<a name="line.1127"></a>
+<span class="sourceLineNo">1128</span>    public void 
registerFlushRequestListener(FlushRequestListener listener) {<a 
name="line.1128"></a>
 <span class="sourceLineNo">1129</span><a name="line.1129"></a>
-<span class="sourceLineNo">1130</span>    @Override<a name="line.1130"></a>
-<span class="sourceLineNo">1131</span>    public boolean 
unregisterFlushRequestListener(FlushRequestListener listener) {<a 
name="line.1131"></a>
-<span class="sourceLineNo">1132</span>      return false;<a 
name="line.1132"></a>
-<span class="sourceLineNo">1133</span>    }<a name="line.1133"></a>
-<span class="sourceLineNo">1134</span><a name="line.1134"></a>
-<span class="sourceLineNo">1135</span>    @Override<a name="line.1135"></a>
-<span class="sourceLineNo">1136</span>    public void 
setGlobalMemStoreLimit(long globalMemStoreSize) {<a name="line.1136"></a>
-<span class="sourceLineNo">1137</span><a name="line.1137"></a>
-<span class="sourceLineNo">1138</span>    }<a name="line.1138"></a>
-<span class="sourceLineNo">1139</span>  }<a name="line.1139"></a>
-<span class="sourceLineNo">1140</span><a name="line.1140"></a>
-<span class="sourceLineNo">1141</span>  private WALKeyImpl createWALKey(final 
TableName tableName, final HRegionInfo hri,<a name="line.1141"></a>
-<span class="sourceLineNo">1142</span>      final 
MultiVersionConcurrencyControl mvcc, NavigableMap&lt;byte[], Integer&gt; 
scopes) {<a name="line.1142"></a>
-<span class="sourceLineNo">1143</span>    return new 
WALKeyImpl(hri.getEncodedNameAsBytes(), tableName, 999, mvcc, scopes);<a 
name="line.1143"></a>
-<span class="sourceLineNo">1144</span>  }<a name="line.1144"></a>
-<span class="sourceLineNo">1145</span><a name="line.1145"></a>
-<span class="sourceLineNo">1146</span>  private WALEdit createWALEdit(final 
byte[] rowName, final byte[] family, EnvironmentEdge ee,<a name="line.1146"></a>
-<span class="sourceLineNo">1147</span>      int index) {<a 
name="line.1147"></a>
-<span class="sourceLineNo">1148</span>    byte[] qualifierBytes = 
Bytes.toBytes(Integer.toString(index));<a name="line.1148"></a>
-<span class="sourceLineNo">1149</span>    byte[] columnBytes = 
Bytes.toBytes(Bytes.toString(family) + ":" + Integer.toString(index));<a 
name="line.1149"></a>
-<span class="sourceLineNo">1150</span>    WALEdit edit = new WALEdit();<a 
name="line.1150"></a>
-<span class="sourceLineNo">1151</span>    edit.add(new KeyValue(rowName, 
family, qualifierBytes, ee.currentTime(), columnBytes));<a name="line.1151"></a>
-<span class="sourceLineNo">1152</span>    return edit;<a name="line.1152"></a>
-<span class="sourceLineNo">1153</span>  }<a name="line.1153"></a>
-<span class="sourceLineNo">1154</span><a name="line.1154"></a>
-<span class="sourceLineNo">1155</span>  private FSWALEntry 
createFSWALEntry(HTableDescriptor htd, HRegionInfo hri, long sequence,<a 
name="line.1155"></a>
-<span class="sourceLineNo">1156</span>      byte[] rowName, byte[] family, 
EnvironmentEdge ee, MultiVersionConcurrencyControl mvcc,<a name="line.1156"></a>
-<span class="sourceLineNo">1157</span>      int index, NavigableMap&lt;byte[], 
Integer&gt; scopes) throws IOException {<a name="line.1157"></a>
-<span class="sourceLineNo">1158</span>    FSWALEntry entry =<a 
name="line.1158"></a>
-<span class="sourceLineNo">1159</span>        new FSWALEntry(sequence, 
createWALKey(htd.getTableName(), hri, mvcc, scopes), createWALEdit(<a 
name="line.1159"></a>
-<span class="sourceLineNo">1160</span>          rowName, family, ee, index), 
hri, true);<a name="line.1160"></a>
-<span class="sourceLineNo">1161</span>    
entry.stampRegionSequenceId(mvcc.begin());<a name="line.1161"></a>
-<span class="sourceLineNo">1162</span>    return entry;<a name="line.1162"></a>
-<span class="sourceLineNo">1163</span>  }<a name="line.1163"></a>
-<span class="sourceLineNo">1164</span><a name="line.1164"></a>
-<span class="sourceLineNo">1165</span>  private void addWALEdits(final 
TableName tableName, final HRegionInfo hri, final byte[] rowName,<a 
name="line.1165"></a>
-<span class="sourceLineNo">1166</span>      final byte[] family, final int 
count, EnvironmentEdge ee, final WAL wal,<a name="line.1166"></a>
-<span class="sourceLineNo">1167</span>      final HTableDescriptor htd, final 
MultiVersionConcurrencyControl mvcc,<a name="line.1167"></a>
-<span class="sourceLineNo">1168</span>      NavigableMap&lt;byte[], 
Integer&gt; scopes) throws IOException {<a name="line.1168"></a>
-<span class="sourceLineNo">1169</span>    for (int j = 0; j &lt; count; j++) 
{<a name="line.1169"></a>
-<span class="sourceLineNo">1170</span>      wal.append(hri, 
createWALKey(tableName, hri, mvcc, scopes),<a name="line.1170"></a>
-<span class="sourceLineNo">1171</span>        createWALEdit(rowName, family, 
ee, j), true);<a name="line.1171"></a>
-<span class="sourceLineNo">1172</span>    }<a name="line.1172"></a>
-<span class="sourceLineNo">1173</span>    wal.sync();<a name="line.1173"></a>
-<span class="sourceLineNo">1174</span>  }<a name="line.1174"></a>
-<span class="sourceLineNo">1175</span><a name="line.1175"></a>
-<span class="sourceLineNo">1176</span>  static List&lt;Put&gt; 
addRegionEdits(final byte[] rowName, final byte[] family, final int count,<a 
name="line.1176"></a>
-<span class="sourceLineNo">1177</span>      EnvironmentEdge ee, final Region 
r, final String qualifierPrefix) throws IOException {<a name="line.1177"></a>
-<span class="sourceLineNo">1178</span>    List&lt;Put&gt; puts = new 
ArrayList&lt;&gt;();<a name="line.1178"></a>
-<span class="sourceLineNo">1179</span>    for (int j = 0; j &lt; count; j++) 
{<a name="line.1179"></a>
-<span class="sourceLineNo">1180</span>      byte[] qualifier = 
Bytes.toBytes(qualifierPrefix + Integer.toString(j));<a name="line.1180"></a>
-<span class="sourceLineNo">1181</span>      Put p = new Put(rowName);<a 
name="line.1181"></a>
-<span class="sourceLineNo">1182</span>      p.addColumn(family, qualifier, 
ee.currentTime(), rowName);<a name="line.1182"></a>
-<span class="sourceLineNo">1183</span>      r.put(p);<a name="line.1183"></a>
-<span class="sourceLineNo">1184</span>      puts.add(p);<a 
name="line.1184"></a>
-<span class="sourceLineNo">1185</span>    }<a name="line.1185"></a>
-<span class="sourceLineNo">1186</span>    return puts;<a name="line.1186"></a>
-<span class="sourceLineNo">1187</span>  }<a name="line.1187"></a>
-<span class="sourceLineNo">1188</span><a name="line.1188"></a>
-<span class="sourceLineNo">1189</span>  /*<a name="line.1189"></a>
-<span class="sourceLineNo">1190</span>   * Creates an HRI around an HTD that 
has &lt;code&gt;tableName&lt;/code&gt; and three<a name="line.1190"></a>
-<span class="sourceLineNo">1191</span>   * column families named 'a','b', and 
'c'.<a name="line.1191"></a>
-<span class="sourceLineNo">1192</span>   * @param tableName Name of table to 
use when we create HTableDescriptor.<a name="line.1192"></a>
-<span class="sourceLineNo">1193</span>   */<a name="line.1193"></a>
-<span class="sourceLineNo">1194</span>   private HRegionInfo 
createBasic3FamilyHRegionInfo(final TableName tableName) {<a 
name="line.1194"></a>
-<span class="sourceLineNo">1195</span>    return new HRegionInfo(tableName, 
null, null, false);<a name="line.1195"></a>
-<span class="sourceLineNo">1196</span>   }<a name="line.1196"></a>
-<span class="sourceLineNo">1197</span><a name="line.1197"></a>
-<span class="sourceLineNo">1198</span>  /*<a name="line.1198"></a>
-<span class="sourceLineNo">1199</span>   * Run the split.  Verify only single 
split file made.<a name="line.1199"></a>
-<span class="sourceLineNo">1200</span>   * @param c<a name="line.1200"></a>
-<span class="sourceLineNo">1201</span>   * @return The single split file 
made<a name="line.1201"></a>
-<span class="sourceLineNo">1202</span>   * @throws IOException<a 
name="line.1202"></a>
-<span class="sourceLineNo">1203</span>   */<a name="line.1203"></a>
-<span class="sourceLineNo">1204</span>  private Path runWALSplit(final 
Configuration c) throws IOException {<a name="line.1204"></a>
-<span class="sourceLineNo">1205</span>    List&lt;Path&gt; splits = 
WALSplitter.split(<a name="line.1205"></a>
-<span class="sourceLineNo">1206</span>      hbaseRootDir, logDir, oldLogDir, 
FileSystem.get(c), c, wals);<a name="line.1206"></a>
-<span class="sourceLineNo">1207</span>    // Split should generate only 1 file 
since there's only 1 region<a name="line.1207"></a>
-<span class="sourceLineNo">1208</span>    assertEquals("splits=" + splits, 1, 
splits.size());<a name="line.1208"></a>
-<span class="sourceLineNo">1209</span>    // Make sure the file exists<a 
name="line.1209"></a>
-<span class="sourceLineNo">1210</span>    
assertTrue(fs.exists(splits.get(0)));<a name="line.1210"></a>
-<span class="sourceLineNo">1211</span>    LOG.info("Split file=" + 
splits.get(0));<a name="line.1211"></a>
-<span class="sourceLineNo">1212</span>    return splits.get(0);<a 
name="line.1212"></a>
-<span class="sourceLineNo">1213</span>  }<a name="line.1213"></a>
-<span class="sourceLineNo">1214</span><a name="line.1214"></a>
-<span class="sourceLineNo">1215</span>  private HTableDescriptor 
createBasic3FamilyHTD(final TableName tableName) {<a name="line.1215"></a>
-<span class="sourceLineNo">1216</span>    HTableDescriptor htd = new 
HTableDescriptor(tableName);<a name="line.1216"></a>
-<span class="sourceLineNo">1217</span>    HColumnDescriptor a = new 
HColumnDescriptor(Bytes.toBytes("a"));<a name="line.1217"></a>
-<span class="sourceLineNo">1218</span>    htd.addFamily(a);<a 
name="line.1218"></a>
-<span class="sourceLineNo">1219</span>    HColumnDescriptor b = new 
HColumnDescriptor(Bytes.toBytes("b"));<a name="line.1219"></a>
-<span class="sourceLineNo">1220</span>    htd.addFamily(b);<a 
name="line.1220"></a>
-<span class="sourceLineNo">1221</span>    HColumnDescriptor c = new 
HColumnDescriptor(Bytes.toBytes("c"));<a name="line.1221"></a>
-<span class="sourceLineNo">1222</span>    htd.addFamily(c);<a 
name="line.1222"></a>
-<span class="sourceLineNo">1223</span>    return htd;<a name="line.1223"></a>
-<span class="sourceLineNo">1224</span>  }<a name="line.1224"></a>
-<span class="sourceLineNo">1225</span><a name="line.1225"></a>
-<span class="sourceLineNo">1226</span>  private void writerWALFile(Path file, 
List&lt;FSWALEntry&gt; entries) throws IOException,<a name="line.1226"></a>
-<span class="sourceLineNo">1227</span>      StreamLacksCapabilityException {<a 
name="line.1227"></a>
-<span class="sourceLineNo">1228</span>    fs.mkdirs(file.getParent());<a 
name="line.1228"></a>
-<span class="sourceLineNo">1229</span>    ProtobufLogWriter writer = new 
ProtobufLogWriter();<a name="line.1229"></a>
-<span class="sourceLineNo">1230</span>    writer.init(fs, file, conf, true, 
WALUtil.getWALBlockSize(conf, fs, file));<a name="line.1230"></a>
-<span class="sourceLineNo">1231</span>    for (FSWALEntry entry : entries) {<a 
name="line.1231"></a>
-<span class="sourceLineNo">1232</span>      writer.append(entry);<a 
name="line.1232"></a>
-<span class="sourceLineNo">1233</span>    }<a name="line.1233"></a>
-<span class="sourceLineNo">1234</span>    writer.sync(false);<a 
name="line.1234"></a>
-<span class="sourceLineNo">1235</span>    writer.close();<a 
name="line.1235"></a>
-<span class="sourceLineNo">1236</span>  }<a name="line.1236"></a>
-<span class="sourceLineNo">1237</span><a name="line.1237"></a>
-<span class="sourceLineNo">1238</span>  protected abstract WAL 
createWAL(Configuration c, Path hbaseRootDir, String logName)<a 
name="line.1238"></a>
-<span class="sourceLineNo">1239</span>      throws IOException;<a 
name="line.1239"></a>
-<span class="sourceLineNo">1240</span>}<a name="line.1240"></a>
+<span class="sourceLineNo">1130</span>    }<a name="line.1130"></a>
+<span class="sourceLineNo">1131</span><a name="line.1131"></a>
+<span class="sourceLineNo">1132</span>    @Override<a name="line.1132"></a>
+<span class="sourceLineNo">1133</span>    public boolean 
unregisterFlushRequestListener(FlushRequestListener listener) {<a 
name="line.1133"></a>
+<span class="sourceLineNo">1134</span>      return false;<a 
name="line.1134"></a>
+<span class="sourceLineNo">1135</span>    }<a name="line.1135"></a>
+<span class="sourceLineNo">1136</span><a name="line.1136"></a>
+<span class="sourceLineNo">1137</span>    @Override<a name="line.1137"></a>
+<span class="sourceLineNo">1138</span>    public void 
setGlobalMemStoreLimit(long globalMemStoreSize) {<a name="line.1138"></a>
+<span class="sourceLineNo">1139</span><a name="line.1139"></a>
+<span class="sourceLineNo">1140</span>    }<a name="line.1140"></a>
+<span class="sourceLineNo">1141</span>  }<a name="line.1141"></a>
+<span class="sourceLineNo">1142</span><a name="line.1142"></a>
+<span class="sourceLineNo">1143</span>  private WALKeyImpl createWALKey(final 
TableName tableName, final HRegionInfo hri,<a name="line.1143"></a>
+<span class="sourceLineNo">1144</span>      final 
MultiVersionConcurrencyControl mvcc, NavigableMap&lt;byte[], Integer&gt; 
scopes) {<a name="line.1144"></a>
+<span class="sourceLineNo">1145</span>    return new 
WALKeyImpl(hri.getEncodedNameAsBytes(), tableName, 999, mvcc, scopes);<a 
name="line.1145"></a>
+<span class="sourceLineNo">1146</span>  }<a name="line.1146"></a>
+<span class="sourceLineNo">1147</span><a name="line.1147"></a>
+<span class="sourceLineNo">1148</span>  private WALEdit createWALEdit(final 
byte[] rowName, final byte[] family, EnvironmentEdge ee,<a name="line.1148"></a>
+<span class="sourceLineNo">1149</span>      int index) {<a 
name="line.1149"></a>
+<span class="sourceLineNo">1150</span>    byte[] qualifierBytes = 
Bytes.toBytes(Integer.toString(index));<a name="line.1150"></a>
+<span class="sourceLineNo">1151</span>    byte[] columnBytes = 
Bytes.toBytes(Bytes.toString(family) + ":" + Integer.toString(index));<a 
name="line.1151"></a>
+<span class="sourceLineNo">1152</span>    WALEdit edit = new WALEdit();<a 
name="line.1152"></a>
+<span class="sourceLineNo">1153</span>    edit.add(new KeyValue(rowName, 
family, qualifierBytes, ee.currentTime(), columnBytes));<a name="line.1153"></a>
+<span class="sourceLineNo">1154</span>    return edit;<a name="line.1154"></a>
+<span class="sourceLineNo">1155</span>  }<a name="line.1155"></a>
+<span class="sourceLineNo">1156</span><a name="line.1156"></a>
+<span class="sourceLineNo">1157</span>  private FSWALEntry 
createFSWALEntry(HTableDescriptor htd, HRegionInfo hri, long sequence,<a 
name="line.1157"></a>
+<span class="sourceLineNo">1158</span>      byte[] rowName, byte[] family, 
EnvironmentEdge ee, MultiVersionConcurrencyControl mvcc,<a name="line.1158"></a>
+<span class="sourceLineNo">1159</span>      int index, NavigableMap&lt;byte[], 
Integer&gt; scopes) throws IOException {<a name="line.1159"></a>
+<span class="sourceLineNo">1160</span>    FSWALEntry entry =<a 
name="line.1160"></a>
+<span class="sourceLineNo">1161</span>        new FSWALEntry(sequence, 
createWALKey(htd.getTableName(), hri, mvcc, scopes), createWALEdit(<a 
name="line.1161"></a>
+<span class="sourceLineNo">1162</span>          rowName, family, ee, index), 
hri, true);<a name="line.1162"></a>
+<span class="sourceLineNo">1163</span>    
entry.stampRegionSequenceId(mvcc.begin());<a name="line.1163"></a>
+<span class="sourceLineNo">1164</span>    return entry;<a name="line.1164"></a>
+<span class="sourceLineNo">1165</span>  }<a name="line.1165"></a>
+<span class="sourceLineNo">1166</span><a name="line.1166"></a>
+<span class="sourceLineNo">1167</span>  private void addWALEdits(final 
TableName tableName, final HRegionInfo hri, final byte[] rowName,<a 
name="line.1167"></a>
+<span class="sourceLineNo">1168</span>      final byte[] family, final int 
count, EnvironmentEdge ee, final WAL wal,<a name="line.1168"></a>
+<span class="sourceLineNo">1169</span>      final HTableDescriptor htd, final 
MultiVersionConcurrencyControl mvcc,<a name="line.1169"></a>
+<span class="sourceLineNo">1170</span>      NavigableMap&lt;byte[], 
Integer&gt; scopes) throws IOException {<a name="line.1170"></a>
+<span class="sourceLineNo">1171</span>    for (int j = 0; j &lt; count; j++) 
{<a name="line.1171"></a>
+<span class="sourceLineNo">1172</span>      wal.append(hri, 
createWALKey(tableName, hri, mvcc, scopes),<a name="line.1172"></a>
+<span class="sourceLineNo">1173</span>        createWALEdit(rowName, family, 
ee, j), true);<a name="line.1173"></a>
+<span class="sourceLineNo">1174</span>    }<a name="line.1174"></a>
+<span class="sourceLineNo">1175</span>    wal.sync();<a name="line.1175"></a>
+<span class="sourceLineNo">1176</span>  }<a name="line.1176"></a>
+<span class="sourceLineNo">1177</span><a name="line.1177"></a>
+<span class="sourceLineNo">1178</span>  static List&lt;Put&gt; 
addRegionEdits(final byte[] rowName, final byte[] family, final int count,<a 
name="line.1178"></a>
+<span class="sourceLineNo">1179</span>      EnvironmentEdge ee, final Region 
r, final String qualifierPrefix) throws IOException {<a name="line.1179"></a>
+<span class="sourceLineNo">1180</span>    List&lt;Put&gt; puts = new 
ArrayList&lt;&gt;();<a name="line.1180"></a>
+<span class="sourceLineNo">1181</span>    for (int j = 0; j &lt; count; j++) 
{<a name="line.1181"></a>
+<span class="sourceLineNo">1182</span>      byte[] qualifier = 
Bytes.toBytes(qualifierPrefix + Integer.toString(j));<a name="line.1182"></a>
+<span class="sourceLineNo">1183</span>      Put p = new Put(rowName);<a 
name="line.1183"></a>
+<span class="sourceLineNo">1184</span>      p.addColumn(family, qualifier, 
ee.currentTime(), rowName);<a name="line.1184"></a>
+<span class="sourceLineNo">1185</span>      r.put(p);<a name="line.1185"></a>
+<span class="sourceLineNo">1186</span>      puts.add(p);<a 
name="line.1186"></a>
+<span class="sourceLineNo">1187</span>    }<a name="line.1187"></a>
+<span class="sourceLineNo">1188</span>    return puts;<a name="line.1188"></a>
+<span class="sourceLineNo">1189</span>  }<a name="line.1189"></a>
+<span class="sourceLineNo">1190</span><a name="line.1190"></a>
+<span class="sourceLineNo">1191</span>  /*<a name="line.1191"></a>
+<span class="sourceLineNo">1192</span>   * Creates an HRI around an HTD that 
has &lt;code&gt;tableName&lt;/code&gt; and three<a name="line.1192"></a>
+<span class="sourceLineNo">1193</span>   * column families named 'a','b', and 
'c'.<a name="line.1193"></a>
+<span class="sourceLineNo">1194</span>   * @param tableName Name of table to 
use when we create HTableDescriptor.<a name="line.1194"></a>
+<span class="sourceLineNo">1195</span>   */<a name="line.1195"></a>
+<span class="sourceLineNo">1196</span>   private HRegionInfo 
createBasic3FamilyHRegionInfo(final TableName tableName) {<a 
name="line.1196"></a>
+<span class="sourceLineNo">1197</span>    return new HRegionInfo(tableName, 
null, null, false);<a name="line.1197"></a>
+<span class="sourceLineNo">1198</span>   }<a name="line.1198"></a>
+<span class="sourceLineNo">1199</span><a name="line.1199"></a>
+<span class="sourceLineNo">1200</span>  /*<a name="line.1200"></a>
+<span class="sourceLineNo">1201</span>   * Run the split.  Verify only single 
split file made.<a name="line.1201"></a>
+<span class="sourceLineNo">1202</span>   * @param c<a name="line.1202"></a>
+<span class="sourceLineNo">1203</span>   * @return The single split file 
made<a name="line.1203"></a>
+<span class="sourceLineNo">1204</span>   * @throws IOException<a 
name="line.1204"></a>
+<span class="sourceLineNo">1205</span>   */<a name="line.1205"></a>
+<span class="sourceLineNo">1206</span>  private Path runWALSplit(final 
Configuration c) throws IOException {<a name="line.1206"></a>
+<span class="sourceLineNo">1207</span>    List&lt;Path&gt; splits = 
WALSplitter.split(<a name="line.1207"></a>
+<span class="sourceLineNo">1208</span>      hbaseRootDir, logDir, oldLogDir, 
FileSystem.get(c), c, wals);<a name="line.1208"></a>
+<span class="sourceLineNo">1209</span>    // Split should generate only 1 file 
since there's only 1 region<a name="line.1209"></a>
+<span class="sourceLineNo">1210</span>    assertEquals("splits=" + splits, 1, 
splits.size());<a name="line.1210"></a>
+<span class="sourceLineNo">1211</span>    // Make sure the file exists<a 
name="line.1211"></a>
+<span class="sourceLineNo">1212</span>    
assertTrue(fs.exists(splits.get(0)));<a name="line.1212"></a>
+<span class="sourceLineNo">1213</span>    LOG.info("Split file=" + 
splits.get(0));<a name="line.1213"></a>
+<span class="sourceLineNo">1214</span>    return splits.get(0);<a 
name="line.1214"></a>
+<span class="sourceLineNo">1215</span>  }<a name="line.1215"></a>
+<span class="sourceLineNo">1216</span><a name="line.1216"></a>
+<span class="sourceLineNo">1217</span>  private HTableDescriptor 
createBasic3FamilyHTD(final TableName tableName) {<a name="line.1217"></a>
+<span class="sourceLineNo">1218</span>    HTableDescriptor htd = new 
HTableDescriptor(tableName);<a name="line.1218"></a>
+<span class="sourceLineNo">1219</span>    HColumnDescriptor a = new 
HColumnDescriptor(Bytes.toBytes("a"));<a name="line.1219"></a>
+<span class="sourceLineNo">1220</span>    htd.addFamily(a);<a 
name="line.1220"></a>
+<span class="sourceLineNo">1221</span>    HColumnDescriptor b = new 
HColumnDescriptor(Bytes.toBytes("b"));<a name="line.1221"></a>
+<span class="sourceLineNo">1222</span>    htd.addFamily(b);<a 
name="line.1222"></a>
+<span class="sourceLineNo">1223</span>    HColumnDescriptor c = new 
HColumnDescriptor(Bytes.toBytes("c"));<a name="line.1223"></a>
+<span class="sourceLineNo">1224</span>    htd.addFamily(c);<a 
name="line.1224"></a>
+<span class="sourceLineNo">1225</span>    return htd;<a name="line.1225"></a>
+<span class="sourceLineNo">1226</span>  }<a name="line.1226"></a>
+<span class="sourceLineNo">1227</span><a name="line.1227"></a>
+<span class="sourceLineNo">1228</span>  private void writerWALFile(Path file, 
List&lt;FSWALEntry&gt; entries) throws IOException,<a name="line.1228"></a>
+<span class="sourceLineNo">1229</span>      StreamLacksCapabilityException {<a 
name="line.1229"></a>
+<span class="sourceLineNo">1230</span>    fs.mkdirs(file.getParent());<a 
name="line.1230"></a>
+<span class="sourceLineNo">1231</span>    ProtobufLogWriter writer = new 
ProtobufLogWriter();<a name="line.1231"></a>
+<span class="sourceLineNo">1232</span>    writer.init(fs, file, conf, true, 
WALUtil.getWALBlockSize(conf, fs, file));<a name="line.1232"></a>
+<span class="sourceLineNo">1233</span>    for (FSWALEntry entry : entries) {<a 
name="line.1233"></a>
+<span class="sourceLineNo">1234</span>      writer.append(entry);<a 
name="line.1234"></a>
+<span class="sourceLineNo">1235</span>    }<a name="line.1235"></a>
+<span class="sourceLineNo">1236</span>    writer.sync(false);<a 
name="line.1236"></a>
+<span class="sourceLineNo">1237</span>    writer.close();<a 
name="line.1237"></a>
+<span class="sourceLineNo">1238</span>  }<a name="line.1238"></a>
+<span class="sourceLineNo">1239</span><a name="line.1239"></a>
+<span class="sourceLineNo">1240</span>  protected abstract WAL 
createWAL(Configuration c, Path hbaseRootDir, String logName)<a 
name="line.1240"></a>
+<span class="sourceLineNo">1241</span>      throws IOException;<a 
name="line.1241"></a>
+<span class="sourceLineNo">1242</span>}<a name="line.1242"></a>
 
 
 

Reply via email to