|
233 | 233 | <% return; |
234 | 234 | } %> |
235 | 235 |
|
236 | | -<% // table split/compact/merge actions |
| 236 | +<% // table split/major compact/compact/merge actions |
237 | 237 | if ( !readOnly && action != null ) { %> |
238 | 238 | <div class="container-fluid content"> |
239 | 239 | <div class="row inner_header"> |
|
249 | 249 | admin.split(TableName.valueOf(fqtn)); |
250 | 250 | } |
251 | 251 | %> Split request accepted. <% |
| 252 | + } else if (action.equals("major compact")) { |
| 253 | + if (key != null && key.length() > 0) { |
| 254 | + List<RegionInfo> regions = admin.getRegions(TableName.valueOf(fqtn)).get(); |
| 255 | + byte[] row = Bytes.toBytes(key); |
| 256 | +
|
| 257 | + for (RegionInfo region : regions) { |
| 258 | + if (region.containsRow(row)) { |
| 259 | + admin.majorCompactRegion(region.getRegionName()); |
| 260 | + } |
| 261 | + } |
| 262 | + } else { |
| 263 | + admin.majorCompact(TableName.valueOf(fqtn)); |
| 264 | + } |
| 265 | +%> major Compact request accepted. <% |
252 | 266 | } else if (action.equals("compact")) { |
253 | 267 | if (key != null && key.length() > 0) { |
254 | 268 | List<RegionInfo> regions = admin.getRegions(TableName.valueOf(fqtn)).get(); |
@@ -1152,6 +1166,23 @@ Actions: |
1152 | 1166 | <p> |
1153 | 1167 | <center> |
1154 | 1168 | <table class="table" style="border: 0;" width="95%" > |
| 1169 | +<tr> |
| 1170 | + <form method="get"> |
| 1171 | + <input type="hidden" name="action" value="major compact" /> |
| 1172 | + <input type="hidden" name="name" value="<%= escaped_fqtn %>" /> |
| 1173 | + <td class="centered"> |
| 1174 | + <input style="font-size: 12pt; width: 10em" type="submit" value="Major Compact" class="btn" /> |
| 1175 | + </td> |
| 1176 | + <td style="text-align: center;"> |
| 1177 | + <input type="text" name="key" size="40" placeholder="Row Key (optional)" /> |
| 1178 | + </td> |
| 1179 | + <td> |
| 1180 | + This action will force a major compaction of all regions of the table, or, |
| 1181 | + if a key is supplied, only the region major containing the |
| 1182 | + given key. |
| 1183 | + </td> |
| 1184 | + </form> |
| 1185 | +</tr> |
1155 | 1186 | <tr> |
1156 | 1187 | <form method="get"> |
1157 | 1188 | <input type="hidden" name="action" value="compact" /> |
|
0 commit comments