stripe/stripe-terminal-android

Corrupt proto payload in the queue: terminal_sdk_wire_traces_2

whyteH opened this issue · 5 comments

Summary

Corrupt proto payload in the queue: terminal_sdk_wire_metrics
java.net.ProtocolException: Unexpected tag 0 at com.squareup.wire.ProtoReader.nextTag(ProtoReader.kt:172) at com.stripe.proto.api.gator.EventResultPb$Companion$ADAPTER$1.decode(EventResultPb.kt:387) at com.stripe.proto.api.gator.EventResultPb$Companion$ADAPTER$1.decode(EventResultPb.kt:252) at com.stripe.proto.api.gator.ProxyEventPb$Companion$ADAPTER$1.decode(ProxyEventPb.kt:206) at com.stripe.proto.api.gator.ProxyEventPb$Companion$ADAPTER$1.decode(ProxyEventPb.kt:160) at com.squareup.wire.ProtoAdapter.decode(ProtoAdapter.kt:457) at com.squareup.wire.ProtoAdapter.decode(ProtoAdapter.kt:455) at com.stripe.jvmcore.batchdispatcher.collectors.QueueFileProtoSerializer.fromBytes(QueueFileProtoSerializer.kt:27) at com.stripe.jvmcore.batchdispatcher.collectors.QueueFileProtoSerializer.fromBytes(QueueFileProtoSerializer.kt:11) at com.stripe.jvmcore.batchdispatcher.collectors.QueueFileCollector.populateBatch(QueueFileCollector.kt:229) at com.stripe.jvmcore.batchdispatcher.collectors.QueueFileCollector.access$populateBatch(QueueFileCollector.kt:26) at com.stripe.jvmcore.batchdispatcher.collectors.QueueFileCollector$peek$2.invokeSuspend(QueueFileCollector.kt:176) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:108) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) at java.lang.Thread.run(Thread.java:923)

image

Android version

Android 11

Impacted devices (Android devices or readers)

WisePad 3

SDK version

3.6.0

Other information

This bug seems to have always existed, and there are still problems when using 3.6.0.

@whyteH Thank you for the issue. Could you provide some instructions to reproduce this? Could you also describe what impact this exception has on your application: does it cause a crash? Does it occur during payment collection or discovery? Thanks!

@whyteH Thank you for the issue. Could you provide some instructions to reproduce this? Could you also describe what impact this exception has on your application: does it cause a crash? Does it occur during payment collection or discovery? Thanks!

After this exception occurs, an OutOfMemoryError will occur, causing the app to crash. This exception occurs after creatingPaymentIntent, and it is easy to occur after Terminal.initTerminal to createPaymentIntent is repeated several times. Once it occurs, the app must be uninstalled and reinstalled to use it normally. It will still appear when the app is reopened. In fact, my memory is sufficient, and it appeared again when I tested it just now.

image

image

Hi @whyteH - please confirm if issue is now resolved on your end as well, thanks!