View Issue Details

IDProjectCategoryView StatusLast Update
0006333SymmetricDSImprovementpublic2024-04-19 15:46
Reporteremiller Assigned Toemiller  
Prioritynormal 
Status closedResolutionfixed 
Product Version3.15.4 
Target Version3.15.5Fixed in Version3.15.5 
Summary0006333: File sync BeanShell script should place files in a separate error directory if any error occurs when they are copied
DescriptionWhen copying files to their target directory during file sync, there are multiple different kinds of exceptions that could occur. Currently, the file sync BeanShell script only catches IllegalArgumentExceptions. Instead, it should catch any Throwable.

Here is an example of an exception that can occur that is not an IllegalArgumentException:

java.nio.file.AccessDeniedException: [file path]
    at java.base/sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:89)
    at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:103)
    at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:108)
    at java.base/sun.nio.fs.WindowsFileCopy.copy(WindowsFileCopy.java:171)
    at java.base/sun.nio.fs.WindowsFileSystemProvider.copy(WindowsFileSystemProvider.java:284)
    at java.base/java.nio.file.Files.copy(Files.java:1305)
    at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:807)
    at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:769)
    at jdk.internal.reflect.GeneratedMethodAccessor21.invoke(Unknown Source)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:568)
    at bsh.Reflect.invokeMethod(Reflect.java:131)
    at bsh.Reflect.invokeStaticMethod(Reflect.java:95)
    at bsh.Name.invokeMethod(Name.java:868)
    at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:69)
    at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:96)
    at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:41)
    at bsh.BSHBlock.evalBlock(BSHBlock.java:125)
    at bsh.BSHBlock.eval(BSHBlock.java:75)
    at bsh.BSHBlock.eval(BSHBlock.java:41)
    at bsh.BSHIfStatement.eval(BSHIfStatement.java:45)
    at bsh.BSHBlock.evalBlock(BSHBlock.java:125)
    at bsh.BSHBlock.eval(BSHBlock.java:75)
    at bsh.BSHBlock.eval(BSHBlock.java:41)
    at bsh.BSHTryStatement.eval(BSHTryStatement.java:80)
    at bsh.BSHBlock.evalBlock(BSHBlock.java:125)
    at bsh.BSHBlock.eval(BSHBlock.java:75)
    at bsh.BSHBlock.eval(BSHBlock.java:41)
    at bsh.BSHIfStatement.eval(BSHIfStatement.java:42)
    at bsh.BSHBlock.evalBlock(BSHBlock.java:125)
    at bsh.BSHBlock.eval(BSHBlock.java:75)
    at bsh.BSHBlock.eval(BSHBlock.java:41)
    at bsh.BSHIfStatement.eval(BSHIfStatement.java:42)
    at bsh.Interpreter.eval(Interpreter.java:659)
    at bsh.Interpreter.eval(Interpreter.java:750)
    at bsh.Interpreter.eval(Interpreter.java:739)
    at org.jumpmind.symmetric.service.impl.FileSyncService.processZip(FileSyncService.java:1031)
    at org.jumpmind.symmetric.service.impl.FileSyncService.pullFilesFromNode(FileSyncService.java:1135)
    at org.jumpmind.symmetric.service.impl.FileSyncService.execute(FileSyncService.java:886)
    at org.jumpmind.symmetric.service.impl.NodeCommunicationService$1.run(NodeCommunicationService.java:544)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
    at java.base/java.lang.Thread.run(Thread.java:840)
Tagsfile sync

Activities

There are no notes attached to this issue.

Related Changesets

SymmetricDS: 3.15 bce5bb0e

2024-04-08 16:07:30

evan-miller-jumpmind

Details Diff
0006333: Made file sync BeanShell script place files in a separate error directory if any error occurs when they are copied Affected Issues
0006333
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/file/BeanShellFileSyncZipScript.java Diff File

Issue History

Date Modified Username Field Change
2024-04-08 16:05 emiller New Issue
2024-04-08 16:05 emiller Status new => assigned
2024-04-08 16:05 emiller Assigned To => emiller
2024-04-08 16:05 emiller Tag Attached: file sync
2024-04-08 16:08 emiller Status assigned => resolved
2024-04-08 16:08 emiller Resolution open => fixed
2024-04-08 16:08 emiller Fixed in Version => 3.15.5
2024-04-19 15:46 Changeset attached => SymmetricDS 3.15 bce5bb0e
2024-04-23 16:58 admin Status resolved => closed