keith-turner commented on code in PR #4524:
URL: https://github.com/apache/accumulo/pull/4524#discussion_r1692192823
##########
core/src/main/java/org/apache/accumulo/core/fate/Fate.java:
##########
@@ -73,9 +75,12 @@ public class Fate<T> {
private final FateStore<T> store;
private final T environment;
private final ScheduledThreadPoolExecutor fatePoolWatcher;
- private final ExecutorService executor;
+ private final ExecutorService transactionExecutor;
+ private final ExecutorService deadResCleanerExecutor;
private static final EnumSet<TStatus> FINISHED_STATES = EnumSet.of(FAILED,
SUCCESSFUL, UNKNOWN);
+ private static boolean userDeadReservationCleanerRunning = false;
+ private static boolean metaDeadReservationCleanerRunning = false;
Review Comment:
In #3964 I was thinking of having this
[PartitionData](https://github.com/apache/accumulo/blob/208e39927310f8ff7dd5978f2794e26bee6be1b4/core/src/main/java/org/apache/accumulo/core/manager/PartitionData.java)
object that would be passed to Fate from the manager. Fate could use that to
partition fate operations to run and to determine if it should run a singleton
service using the `PartitionData.shouldRun` method. Was thinking that
PatitionData could be passed to all the managers high level services (like
Fate, CompactionCoordinator, TabletGroupWatcher) and that all could use it to
partition their data in their own way.
With something like that, in test if you create 3 fate instances then could
pass them `ParitionData(0,3)`, `ParitionData(1,3)`, and `ParitionData(2,3)`.
It probably does not makes sense to add that in this PR as it will not
partition the fate ids at this point.
For this PR we could simplify things and have a boolean argument on the Fate
constructor that indicates if the dead reservation detection should be started
and not have any static variable that attempt to enforce one per process.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]