This is an automated email from the ASF dual-hosted git repository.

alsuliman pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/asterixdb.git


The following commit(s) were added to refs/heads/master by this push:
     new 1b05ac9f4a [NO ISSUE][EXT]: External Library fixes
1b05ac9f4a is described below

commit 1b05ac9f4a26459647bd92224a1de454f2cecbca
Author: Ian Maxon <[email protected]>
AuthorDate: Wed Feb 19 08:47:11 2025 -0800

    [NO ISSUE][EXT]: External Library fixes
    
    - user model changes: no
    - storage format changes: no
    - interface changes: no
    
    Details:
    Address remaining comments to:
    - Clean up local disk when deleting libraries
    - Don't touch library file if already present
    
    Change-Id: I9ba13e7afc54ddd08f5e522627c56d11f51ca4a9
    Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19447
    Integration-Tests: Jenkins <[email protected]>
    Tested-by: Jenkins <[email protected]>
    Reviewed-by: Ian Maxon <[email protected]>
    Reviewed-by: Peeyush Gupta <[email protected]>
---
 .../org/apache/asterix/api/http/server/NCUdfApiServlet.java |  4 +++-
 .../asterix/external/library/ExternalLibraryManager.java    | 13 ++++++-------
 2 files changed, 9 insertions(+), 8 deletions(-)

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 76d91cf599..02a99f657e 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 @@ public class NCUdfApiServlet extends AbstractNCUdfServlet {
         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 4debc8f404..f15e96fa81 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 @@ public class ExternalLibraryManager implements 
ILibraryManager, ILifeCycleCompon
             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);
         }

Reply via email to