View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0006705 | SymmetricDS | Improvement | public | 2025-01-24 19:32 | 2025-01-24 19:32 |
Reporter | pmarzullo | Assigned To | pmarzullo | ||
Priority | normal | ||||
Status | assigned | Resolution | open | ||
Product Version | 3.16.0 | ||||
Target Version | 3.16.0 | ||||
Summary | 0006705: DataExtractorService.transferFromStaging should delete staged file if fails to decrypt staging file | ||||
Description | If decryption of a staging file fails because of a BadPaddingException, we should delete the staging file before throwing exception: 2025-01-15 07:09:37,065 ERROR [server-5f0155f5-82ca-413f-97e6-f388bb9d5a34] [DataExtractorService] [qtp422926934-438965] Failed to extract batch 543e7df3-817b-4cf6-a2df-81430eb3210f-4296 on channel 'monitor' StackTraceKey.init [RuntimeException:2103453513] java.lang.RuntimeException: java.io.IOException: javax.crypto.BadPaddingException: Given final block not properly padded. Such issues can arise if a bad key is used during decryption. at org.jumpmind.symmetric.service.impl.DataExtractorService.transferFromStaging(DataExtractorService.java:1376) at org.jumpmind.symmetric.service.impl.DataExtractorService.sendOutgoingBatch(DataExtractorService.java:1245) at org.jumpmind.symmetric.service.impl.DataExtractorService.extract(DataExtractorService.java:615) at org.jumpmind.symmetric.service.impl.DataExtractorService.extract(DataExtractorService.java:423) at org.jumpmind.symmetric.web.PullUriHandler.handlePull(PullUriHandler.java:117) at org.jumpmind.symmetric.web.PullUriHandler.handleWithCompression(PullUriHandler.java:91) at org.jumpmind.symmetric.web.AbstractCompressionUriHandler.handle(AbstractCompressionUriHandler.java:79) at org.jumpmind.symmetric.web.SymmetricServlet.service(SymmetricServlet.java:101) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:587) . . . at java.base/java.lang.Thread.run(Thread.java:1583) Caused by: java.io.IOException: javax.crypto.BadPaddingException: Given final block not properly padded. Such issues can arise if a bad key is used during decryption. at java.base/javax.crypto.CipherInputStream.getMoreData(CipherInputStream.java:160) at java.base/javax.crypto.CipherInputStream.read(CipherInputStream.java:281) at java.base/java.util.zip.InflaterInputStream.fill(InflaterInputStream.java:264) at java.base/java.util.zip.InflaterInputStream.read(InflaterInputStream.java:175) at java.base/java.util.zip.GZIPInputStream.read(GZIPInputStream.java:128) at java.base/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:329) at java.base/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:372) at java.base/sun.nio.cs.StreamDecoder.lockedRead(StreamDecoder.java:215) at java.base/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:169) at java.base/java.io.InputStreamReader.read(InputStreamReader.java:188) at java.base/java.io.BufferedReader.read1(BufferedReader.java:223) at java.base/java.io.BufferedReader.implRead(BufferedReader.java:314) at java.base/java.io.BufferedReader.read(BufferedReader.java:296) at java.base/java.io.Reader.read(Reader.java:265) at org.jumpmind.symmetric.service.impl.DataExtractorService.transferFromStaging(DataExtractorService.java:1321) ... 56 more Caused by: javax.crypto.BadPaddingException: Given final block not properly padded. Such issues can arise if a bad key is used during decryption. at java.base/com.sun.crypto.provider.CipherCore.unpad(CipherCore.java:861) at java.base/com.sun.crypto.provider.CipherCore.fillOutputBuffer(CipherCore.java:941) at java.base/com.sun.crypto.provider.CipherCore.doFinal(CipherCore.java:825) at java.base/com.sun.crypto.provider.DESedeCipher.engineDoFinal(DESedeCipher.java:339) at java.base/javax.crypto.Cipher.doFinal(Cipher.java:2190) at java.base/javax.crypto.CipherInputStream.getMoreData(CipherInputStream.java:153) ... 70 more | ||||
Tags | extract | ||||