KLuban icon indicating copy to clipboard operation
KLuban copied to clipboard

上传部分图片时会抛出异常:InvalidMarkException: Mark has been invalidated, pos: 1423393 markLimit: 5242880

Open FourteenWey opened this issue 3 years ago • 2 comments

并不是所有图片都会抛异常,只有小部分图片会,但不知道是什么原因,希望可以排查一下 W/System.err: com.forjrking.lubankt.io.BufferedInputStreamWrap$InvalidMarkException: Mark has been invalidated, pos: 1423393 markLimit: 5242880 W/System.err: at com.forjrking.lubankt.io.BufferedInputStreamWrap.reset(BufferedInputStreamWrap.java:318) W/System.err: at com.forjrking.lubankt.Checker$getOrientation$reader$1.getOrientation(Checker.kt:137) W/System.err: at com.forjrking.lubankt.Checker.getOrientationInternal(Checker.kt:147) W/System.err: at com.forjrking.lubankt.Checker.getOrientation(Checker.kt:141) W/System.err: at com.forjrking.lubankt.Checker.getRotateDegree(Checker.kt:167) W/System.err: at com.forjrking.lubankt.CompressEngine.compress(CompressEngine.kt:48) W/System.err: at com.forjrking.lubankt.AbstractFileBuilder$compress$2.invokeSuspend(Luban.kt:294) W/System.err: at com.forjrking.lubankt.AbstractFileBuilder$compress$2.invoke(Unknown Source:10) W/System.err: at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:91) W/System.err: at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:165) W/System.err: at kotlinx.coroutines.BuildersKt.withContext(Unknown Source:1) W/System.err: at com.forjrking.lubankt.AbstractFileBuilder.compress(Luban.kt:272) W/System.err: at com.forjrking.lubankt.SingleRequestBuild$asyncRun$1$1.invokeSuspend(Luban.kt:320) W/System.err: at com.forjrking.lubankt.SingleRequestBuild$asyncRun$1$1.invoke(Unknown Source:10) W/System.err: at kotlinx.coroutines.flow.SafeFlow.collectSafely(Builders.kt:61) W/System.err: at kotlinx.coroutines.flow.AbstractFlow.collect(Flow.kt:212) W/System.err: at kotlinx.coroutines.flow.internal.ChannelFlowOperatorImpl.flowCollect(ChannelFlow.kt:207) W/System.err: at kotlinx.coroutines.flow.internal.ChannelFlowOperator.collectTo$suspendImpl(ChannelFlow.kt:169) W/System.err: at kotlinx.coroutines.flow.internal.ChannelFlowOperator.collectTo(Unknown Source:0) W/System.err: at kotlinx.coroutines.flow.internal.ChannelFlow$collectToFun$1.invokeSuspend(ChannelFlow.kt:60) W/System.err: at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) W/System.err: at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) W/System.err: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) W/System.err: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) W/System.err: at java.lang.Thread.run(Thread.java:923)

图片地址: 谷歌网盘

FourteenWey avatar Sep 28 '21 16:09 FourteenWey

并不是所有图片都会抛异常,只有小部分图片会,但不知道是什么原因,希望可以排查一下 W/System.err: com.forjrking.lubankt.io.BufferedInputStreamWrap$InvalidMarkException: Mark has been invalidated, pos: 1423393 markLimit: 5242880 W/System.err: at com.forjrking.lubankt.io.BufferedInputStreamWrap.reset(BufferedInputStreamWrap.java:318) W/System.err: at com.forjrking.lubankt.Checker$getOrientation$reader$1.getOrientation(Checker.kt:137) W/System.err: at com.forjrking.lubankt.Checker.getOrientationInternal(Checker.kt:147) W/System.err: at com.forjrking.lubankt.Checker.getOrientation(Checker.kt:141) W/System.err: at com.forjrking.lubankt.Checker.getRotateDegree(Checker.kt:167) W/System.err: at com.forjrking.lubankt.CompressEngine.compress(CompressEngine.kt:48) W/System.err: at com.forjrking.lubankt.AbstractFileBuilder$compress$2.invokeSuspend(Luban.kt:294) W/System.err: at com.forjrking.lubankt.AbstractFileBuilder$compress$2.invoke(Unknown Source:10) W/System.err: at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:91) W/System.err: at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:165) W/System.err: at kotlinx.coroutines.BuildersKt.withContext(Unknown Source:1) W/System.err: at com.forjrking.lubankt.AbstractFileBuilder.compress(Luban.kt:272) W/System.err: at com.forjrking.lubankt.SingleRequestBuild$asyncRun$1$1.invokeSuspend(Luban.kt:320) W/System.err: at com.forjrking.lubankt.SingleRequestBuild$asyncRun$1$1.invoke(Unknown Source:10) W/System.err: at kotlinx.coroutines.flow.SafeFlow.collectSafely(Builders.kt:61) W/System.err: at kotlinx.coroutines.flow.AbstractFlow.collect(Flow.kt:212) W/System.err: at kotlinx.coroutines.flow.internal.ChannelFlowOperatorImpl.flowCollect(ChannelFlow.kt:207) W/System.err: at kotlinx.coroutines.flow.internal.ChannelFlowOperator.collectTo$suspendImpl(ChannelFlow.kt:169) W/System.err: at kotlinx.coroutines.flow.internal.ChannelFlowOperator.collectTo(Unknown Source:0) W/System.err: at kotlinx.coroutines.flow.internal.ChannelFlow$collectToFun$1.invokeSuspend(ChannelFlow.kt:60) W/System.err: at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) W/System.err: at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) W/System.err: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) W/System.err: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) W/System.err: at java.lang.Thread.run(Thread.java:923)

图片地址: 谷歌网盘

试试最新版本

forJrking avatar Oct 11 '21 11:10 forJrking

我这里也还是有这种情况。我觉得这个bufferedInputStream只是 适用于当前自己写的代码对这个inputStream进行读写的时候。如果是把inputStream包装以后扔给某些其他的库进行使用。很难保证说不超出martLimit。

IdioticMadman avatar Nov 22 '21 03:11 IdioticMadman