diff --git a/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/NCUdfApiServlet.java b/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/NCUdfApiServlet.java
index 76d91cf..02a99f6 100644
--- a/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/NCUdfApiServlet.java
+++ b/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/NCUdfApiServlet.java
@@ -239,7 +239,9 @@
         if (!libDir.getFile().exists()) {
             Files.createDirectories(lib.getFile().toPath().getParent());
         }
-        Files.createFile(lib.getFile().toPath());
+        if (!lib.getFile().exists()) {
+            Files.createFile(lib.getFile().toPath());
+        }
         IFileHandle fh = cloudIoMgr.open(lib, IIOManager.FileReadWriteMode.READ_WRITE,
                 IIOManager.FileSyncMode.METADATA_ASYNC_DATA_ASYNC);
         WritableByteChannel outChannel = cloudIoMgr.newWritableChannel(fh);
diff --git a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/ExternalLibraryManager.java b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/ExternalLibraryManager.java
index 4debc8f..f15e96f 100755
--- a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/ExternalLibraryManager.java
+++ b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/library/ExternalLibraryManager.java
@@ -516,14 +516,13 @@
             if (ncs.getConfiguration().isCloudDeployment()) {
                 ioManager.delete(fileRef.getChild(LIBRARY_ARCHIVE_NAME));
                 ioManager.delete(fileRef.getChild(DESCRIPTOR_FILE_NAME));
-            } else {
-                Path trashPath = Files.createTempDirectory(trashDirPath, null);
-                if (LOGGER.isDebugEnabled()) {
-                    LOGGER.debug("Drop (move) {} into {}", path, trashPath);
-                }
-                Files.move(path, trashPath, StandardCopyOption.ATOMIC_MOVE);
-                ncs.getWorkQueue().schedule(new DeleteDirectoryWork(trashPath));
             }
+            Path trashPath = Files.createTempDirectory(trashDirPath, null);
+            if (LOGGER.isDebugEnabled()) {
+                LOGGER.debug("Drop (move) {} into {}", path, trashPath);
+            }
+            Files.move(path, trashPath, StandardCopyOption.ATOMIC_MOVE);
+            ncs.getWorkQueue().schedule(new DeleteDirectoryWork(trashPath));
         } catch (IOException e) {
             throw HyracksDataException.create(e);
         }
