[Improvement-10617] Add comment in slot check (#10618)

This commit is contained in:
Wenjun Ruan 2022-06-30 15:58:49 +08:00 committed by GitHub
parent 5855274b26
commit 247ca4ae8a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 3 deletions

View File

@ -207,8 +207,9 @@ public class MasterSchedulerService extends BaseDaemonThread {
for (final Command command : commands) {
masterPrepareExecService.execute(() -> {
try {
// todo: this check is not safe, the slot may change after command transform.
// slot check again
// Note: this check is not safe, the slot may change after command transform.
// We use the database transaction in `handleCommand` so that we can guarantee the command will always be executed
// by only one master
SlotCheckState slotCheckState = slotCheck(command);
if (slotCheckState.equals(SlotCheckState.CHANGE) || slotCheckState.equals(SlotCheckState.INJECT)) {
logger.info("Master handle command {} skip, slot check state: {}", command.getId(), slotCheckState);

View File

@ -138,6 +138,7 @@ import org.apache.dolphinscheduler.spi.enums.ResourceType;
import org.apache.commons.collections.CollectionUtils;
import java.sql.SQLIntegrityConstraintViolationException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
@ -373,7 +374,8 @@ public class ProcessServiceImpl implements ProcessService {
}
/**
* save error command, and delete original command
* Save error command, and delete original command. If the given command has already been moved into error command,
* will throw {@link SQLIntegrityConstraintViolationException ).
*
* @param command command
* @param message message