ACCUMULO-1821 don't record log events if the tablet is not online
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/8683295f Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/8683295f Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/8683295f Branch: refs/heads/master Commit: 8683295fcf4e8732e8dc7625f97725cfe0662e1f Parents: 73b39a0 Author: Eric Newton <[email protected]> Authored: Mon Oct 28 16:04:15 2013 -0400 Committer: Eric Newton <[email protected]> Committed: Mon Oct 28 16:04:15 2013 -0400 ---------------------------------------------------------------------- .../org/apache/accumulo/server/tabletserver/TabletServer.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/accumulo/blob/8683295f/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java ---------------------------------------------------------------------- diff --git a/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java b/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java index bd31c15..92aabf3 100644 --- a/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java +++ b/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java @@ -2978,7 +2978,12 @@ public class TabletServer extends AbstractMetricsImpl implements org.apache.accu public void addLoggersToMetadata(List<DfsLogger> logs, KeyExtent extent, int id) { log.info("Adding " + logs.size() + " logs for extent " + extent + " as alias " + id); - + if (!this.onlineTablets.containsKey(extent)) { + // minor compaction due to recovery... don't make updates... if it finishes, there will be no WALs, + // if it doesn't, we'll need to do the same recovery with the old files. + return; + } + long now = RelativeTime.currentTimeMillis(); List<String> logSet = new ArrayList<String>(); for (DfsLogger log : logs)
