Skip to content

Commit 5820cd3

Browse files
Backport removal of problem reports to 3.1
Co-authored-by: Keith Turner <kturner@apache.org>
1 parent 3d19788 commit 5820cd3

File tree

29 files changed

+113
-1629
lines changed

29 files changed

+113
-1629
lines changed

core/src/main/java/org/apache/accumulo/core/Constants.java

-2
Original file line numberDiff line numberDiff line change
@@ -75,8 +75,6 @@ public class Constants {
7575
public static final String ZDEAD = "/dead";
7676
public static final String ZDEADTSERVERS = ZDEAD + "/tservers";
7777

78-
public static final String ZPROBLEMS = "/problems";
79-
8078
public static final String BULK_ARBITRATOR_TYPE = "bulkTx";
8179

8280
public static final String ZFATE = "/fate";

core/src/main/java/org/apache/accumulo/core/logging/TabletLogger.java

+13
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727

2828
import org.apache.accumulo.core.client.admin.CompactionConfig;
2929
import org.apache.accumulo.core.client.admin.compaction.CompactableFile;
30+
import org.apache.accumulo.core.data.TableId;
3031
import org.apache.accumulo.core.dataImpl.KeyExtent;
3132
import org.apache.accumulo.core.metadata.CompactableFileImpl;
3233
import org.apache.accumulo.core.metadata.StoredTabletFile;
@@ -110,11 +111,23 @@ public static void missassigned(KeyExtent extent, String goalState, String curre
110111
}
111112
}
112113

114+
public static void tabletLoadFailed(KeyExtent extent, Exception e) {
115+
locLog.warn("Failed to load tablet {}", extent, e);
116+
}
117+
113118
private static String getSize(Collection<CompactableFile> files) {
114119
long sum = files.stream().mapToLong(CompactableFile::getEstimatedSize).sum();
115120
return FileUtils.byteCountToDisplaySize(sum);
116121
}
117122

123+
public static void fileReadFailed(String path, TableId tableId, Exception e) {
124+
fileLog.error("For table {} failed to read {} ", tableId, path, e);
125+
}
126+
127+
public static void fileReadFailed(String path, KeyExtent tablet, Exception e) {
128+
fileLog.error("For tablet {} failed to read {} ", tablet, path, e);
129+
}
130+
118131
/**
119132
* Lazily converts TableFile to file names. The lazy part is really important because when it is
120133
* not called with log.isDebugEnabled().

core/src/main/java/org/apache/accumulo/core/metadata/schema/MetadataSchema.java

-17
Original file line numberDiff line numberDiff line change
@@ -415,23 +415,6 @@ public static String getRowPrefix() {
415415

416416
}
417417

418-
/**
419-
* Holds error message processing flags
420-
*/
421-
public static class ProblemSection {
422-
private static final Section section =
423-
new Section(RESERVED_PREFIX + "err_", true, RESERVED_PREFIX + "err`", false);
424-
425-
public static Range getRange() {
426-
return section.getRange();
427-
}
428-
429-
public static String getRowPrefix() {
430-
return section.getRowPrefix();
431-
}
432-
433-
}
434-
435418
public static class ExternalCompactionSection {
436419
private static final Section section =
437420
new Section(RESERVED_PREFIX + "ecomp", true, RESERVED_PREFIX + "ecomq", false);

server/base/src/main/java/org/apache/accumulo/server/compaction/FileCompactor.java

+3-9
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@
6060
import org.apache.accumulo.core.iteratorsImpl.system.InterruptibleIterator;
6161
import org.apache.accumulo.core.iteratorsImpl.system.IterationInterruptedException;
6262
import org.apache.accumulo.core.iteratorsImpl.system.MultiIterator;
63+
import org.apache.accumulo.core.logging.TabletLogger;
6364
import org.apache.accumulo.core.metadata.AccumuloTable;
6465
import org.apache.accumulo.core.metadata.ReferencedTabletFile;
6566
import org.apache.accumulo.core.metadata.StoredTabletFile;
@@ -75,10 +76,7 @@
7576
import org.apache.accumulo.server.fs.VolumeManager;
7677
import org.apache.accumulo.server.iterators.SystemIteratorEnvironment;
7778
import org.apache.accumulo.server.mem.LowMemoryDetector.DetectionScope;
78-
import org.apache.accumulo.server.problems.ProblemReport;
7979
import org.apache.accumulo.server.problems.ProblemReportingIterator;
80-
import org.apache.accumulo.server.problems.ProblemReports;
81-
import org.apache.accumulo.server.problems.ProblemType;
8280
import org.apache.hadoop.fs.FileSystem;
8381
import org.slf4j.Logger;
8482
import org.slf4j.LoggerFactory;
@@ -438,7 +436,7 @@ public CompactionStats call() throws IOException, CompactionCanceledException {
438436

439437
readers.add(reader);
440438

441-
InterruptibleIterator iter = new ProblemReportingIterator(context, extent.tableId(),
439+
InterruptibleIterator iter = new ProblemReportingIterator(extent.tableId(),
442440
dataFile.getNormalizedPathStr(), false, reader);
443441
iter.setInterruptFlag(interruptFlag);
444442

@@ -447,11 +445,7 @@ public CompactionStats call() throws IOException, CompactionCanceledException {
447445
iters.add(iter);
448446

449447
} catch (Exception e) {
450-
451-
ProblemReports.getInstance(context).report(new ProblemReport(extent.tableId(),
452-
ProblemType.FILE_READ, dataFile.getNormalizedPathStr(), e));
453-
454-
log.warn("Some problem opening data file {} {}", dataFile, e.getMessage(), e);
448+
TabletLogger.fileReadFailed(dataFile.toString(), extent, e);
455449
// failed to open some data file... close the ones that were opened
456450
for (FileSKVIterator reader : readers) {
457451
try {

server/base/src/main/java/org/apache/accumulo/server/fs/FileManager.java

+4-11
Original file line numberDiff line numberDiff line change
@@ -46,15 +46,13 @@
4646
import org.apache.accumulo.core.iteratorsImpl.system.InterruptibleIterator;
4747
import org.apache.accumulo.core.iteratorsImpl.system.SourceSwitchingIterator;
4848
import org.apache.accumulo.core.iteratorsImpl.system.SourceSwitchingIterator.DataSource;
49+
import org.apache.accumulo.core.logging.TabletLogger;
4950
import org.apache.accumulo.core.metadata.StoredTabletFile;
5051
import org.apache.accumulo.core.metadata.schema.DataFileValue;
5152
import org.apache.accumulo.core.sample.impl.SamplerConfigurationImpl;
5253
import org.apache.accumulo.core.util.threads.ThreadPools;
5354
import org.apache.accumulo.server.ServerContext;
54-
import org.apache.accumulo.server.problems.ProblemReport;
5555
import org.apache.accumulo.server.problems.ProblemReportingIterator;
56-
import org.apache.accumulo.server.problems.ProblemReports;
57-
import org.apache.accumulo.server.problems.ProblemType;
5856
import org.apache.hadoop.fs.FileSystem;
5957
import org.slf4j.Logger;
6058
import org.slf4j.LoggerFactory;
@@ -308,16 +306,12 @@ private Map<FileSKVIterator,StoredTabletFile> reserveReaders(KeyExtent tablet,
308306
.withFileLenCache(fileLenCache).build();
309307
readersReserved.put(reader, file);
310308
} catch (Exception e) {
311-
312-
ProblemReports.getInstance(context)
313-
.report(new ProblemReport(tablet.tableId(), ProblemType.FILE_READ, file.toString(), e));
314-
309+
TabletLogger.fileReadFailed(file.toString(), tablet, e);
315310
if (continueOnFailure) {
316311
// release the permit for the file that failed to open
317312
if (!tablet.isMeta()) {
318313
filePermits.release(1);
319314
}
320-
log.warn("Failed to open file {} {} continuing...", file, e.getMessage(), e);
321315
} else {
322316
// close whatever files were opened
323317
closeReaders(readersReserved.keySet());
@@ -326,7 +320,6 @@ private Map<FileSKVIterator,StoredTabletFile> reserveReaders(KeyExtent tablet,
326320
filePermits.release(files.size());
327321
}
328322

329-
log.error("Failed to open file {} {}", file, e.getMessage());
330323
throw new IOException("Failed to open " + file, e);
331324
}
332325
}
@@ -519,8 +512,8 @@ public synchronized List<InterruptibleIterator> openFiles(
519512
}
520513
}
521514

522-
iter = new ProblemReportingIterator(context, tablet.tableId(), file.toString(),
523-
continueOnFailure, detachable ? getSsi(file, source) : source);
515+
iter = new ProblemReportingIterator(tablet.tableId(), file.toString(), continueOnFailure,
516+
detachable ? getSsi(file, source) : source);
524517

525518
if (someIteratorsWillWrap) {
526519
// constructing FileRef is expensive so avoid if not needed

server/base/src/main/java/org/apache/accumulo/server/init/ZooKeeperInitializer.java

-2
Original file line numberDiff line numberDiff line change
@@ -134,8 +134,6 @@ void initialize(final ServerContext context, final boolean clearInstanceName,
134134

135135
zoo.putPersistentData(zkInstanceRoot + Constants.ZTSERVERS, EMPTY_BYTE_ARRAY,
136136
ZooUtil.NodeExistsPolicy.FAIL);
137-
zoo.putPersistentData(zkInstanceRoot + Constants.ZPROBLEMS, EMPTY_BYTE_ARRAY,
138-
ZooUtil.NodeExistsPolicy.FAIL);
139137
zoo.putPersistentData(zkInstanceRoot + RootTable.ZROOT_TABLET,
140138
getInitialRootTabletJson(rootTabletDirName, rootTabletFileUri),
141139
ZooUtil.NodeExistsPolicy.FAIL);

0 commit comments

Comments
 (0)