From 40ea771f792b52bc3aed2a9eb364ebd742b4de15 Mon Sep 17 00:00:00 2001 From: Civitaspo Date: Fri, 7 Dec 2018 14:07:28 +0900 Subject: [PATCH] [athena.ctas] Skip removing objects if removable targets do not exist --- .../digdag/plugin/athena/operator/AthenaCtasOperator.scala | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/scala/pro/civitaspo/digdag/plugin/athena/operator/AthenaCtasOperator.scala b/src/main/scala/pro/civitaspo/digdag/plugin/athena/operator/AthenaCtasOperator.scala index f6679db..4dda3fc 100644 --- a/src/main/scala/pro/civitaspo/digdag/plugin/athena/operator/AthenaCtasOperator.scala +++ b/src/main/scala/pro/civitaspo/digdag/plugin/athena/operator/AthenaCtasOperator.scala @@ -111,6 +111,7 @@ class AthenaCtasOperator(operatorName: String, context: OperatorContext, systemC protected def rmObjects(location: String): Unit = { val uri: AmazonS3URI = AmazonS3URI(location) val keys: Seq[String] = withS3(_.listObjectsV2(uri.getBucket, uri.getKey)).getObjectSummaries.asScala.map(_.getKey) + if (keys.isEmpty) return val r: DeleteObjectsResult = withS3(_.deleteObjects(new DeleteObjectsRequest(uri.getBucket).withKeys(keys: _*))) r.getDeletedObjects.asScala.foreach(o => logger.info(s"Deleted: s3://${uri.getBucket}/${o.getKey}")) }