5151import java .util .Calendar ;
5252import java .util .Date ;
5353import java .util .HashMap ;
54+ import java .util .HashSet ;
5455import java .util .List ;
5556import java .util .Map ;
57+ import java .util .Set ;
5658import java .util .concurrent .Executors ;
5759import java .util .concurrent .ScheduledExecutorService ;
5860import java .util .concurrent .TimeUnit ;
@@ -226,7 +228,7 @@ public Map<String, Object> getConfigParams() {
226228 protected void reallyRun () {
227229 // fetch user_instances having leaseDuration configured and has expired
228230 List <UserVmJoinVO > leaseExpiredInstances = userVmJoinDao .listEligibleInstancesWithExpiredLease ();
229- List <Long > actionableInstanceIds = new ArrayList <>();
231+ Set <Long > actionableInstanceIds = new HashSet <>();
230232 for (UserVmJoinVO userVmVO : leaseExpiredInstances ) {
231233 // skip instance with delete protection for DESTROY action
232234 if (ExpiryAction .DESTROY .name ().equals (userVmVO .getLeaseExpiryAction ())
@@ -242,6 +244,7 @@ protected void reallyRun() {
242244 }
243245
244246 List <Long > submittedJobIds = new ArrayList <>();
247+ List <Long > successfulInstanceIds = new ArrayList <>();
245248 List <Long > failedToSubmitInstanceIds = new ArrayList <>();
246249 for (Long instanceId : actionableInstanceIds ) {
247250 UserVmJoinVO instance = userVmJoinDao .findById (instanceId );
@@ -258,12 +261,13 @@ protected void reallyRun() {
258261 Long jobId = executeExpiryAction (instance , expiryAction , eventId );
259262 if (jobId != null ) {
260263 submittedJobIds .add (jobId );
264+ successfulInstanceIds .add (instanceId );
261265 userVmDetailsDao .addDetail (instanceId , VmDetailConstants .INSTANCE_LEASE_EXECUTION , LeaseActionExecution .DONE .name (), false );
262266 } else {
263267 failedToSubmitInstanceIds .add (instanceId );
264268 }
265269 }
266- logger .debug ("Successfully submitted lease expiry jobs with ids: {}" , submittedJobIds );
270+ logger .debug ("Successfully submitted lease expiry jobs with ids: {} and instance ids: {} " , submittedJobIds , successfulInstanceIds );
267271 if (!failedToSubmitInstanceIds .isEmpty ()) {
268272 logger .debug ("Lease scheduler failed to submit jobs for instance ids: {}" , failedToSubmitInstanceIds );
269273 }
0 commit comments