Status Update
Comments
ro...@gmail.com <ro...@gmail.com> #2
Thank you for the report. This looks looks like something in the class file that our class file verification cannot handle. The failing_bytecode.txt
does not have all the details, so will it be possible for you to share the binary class file for the class kbbbbb.kggkkk
? You can share it privately with javap
with the -v
option (javap -v -cp <the jar> kbbbbb.kggkkk
.
The deobfuscated R8 stack trace is:
Caused by: com.android.tools.r8.errors.Unreachable: Invalid descriptor char 'N'
at com.android.tools.r8.ir.code.MemberType.fromTypeDescriptorChar(MemberType.java:98)
at com.android.tools.r8.ir.code.MemberType.fromDexType(MemberType.java:103)
at com.android.tools.r8.graph.CfCode.isAssignable(CfCode.java:918)
at com.android.tools.r8.graph.CfCode.lambda$isAssignablePredicate$8(CfCode.java:887)
at com.android.tools.r8.cf.code.CfFrameVerificationHelper.canBeAssigned(CfFrameVerificationHelper.java:375)
at com.android.tools.r8.cf.code.CfFrameVerificationHelper.verifyStackIsAssignable(CfFrameVerificationHelper.java:320)
at com.android.tools.r8.cf.code.CfFrameVerificationHelper.verifyIsAssignable(CfFrameVerificationHelper.java:264)
at com.android.tools.r8.cf.code.CfFrameVerificationHelper.verifyFrame(CfFrameVerificationHelper.java:213)
at com.android.tools.r8.cf.code.CfFrameVerificationHelper.verifyFrame(CfFrameVerificationHelper.java:209)
at com.android.tools.r8.cf.code.CfFrameVerificationHelper.verifyFrameAndSet(CfFrameVerificationHelper.java:169)
at com.android.tools.r8.cf.code.CfFrame.evaluate(CfFrame.java:454)
at com.android.tools.r8.graph.CfCode.verifyFrames(CfCode.java:782)
at com.android.tools.r8.graph.CfCode.verifyFramesOrRemove(CfCode.java:412)
at com.android.tools.r8.graph.CfCode.buildIR(CfCode.java:386)
at com.android.tools.r8.graph.LazyCfCode.buildIR(LazyCfCode.java:215)
at com.android.tools.r8.graph.ProgramMethod.buildIR(ProgramMethod.java:25)
at com.android.tools.r8.ir.conversion.IRConverter.rewriteCodeInternal(IRConverter.java:1122)
at com.android.tools.r8.ir.conversion.IRConverter.lambda$rewriteCode$13(IRConverter.java:1088)
at com.android.tools.r8.utils.ExceptionUtils.withOriginAndPositionAttachmentHandler(ExceptionUtils.java:220)
at com.android.tools.r8.ir.conversion.IRConverter.rewriteCode(IRConverter.java:1085)
at com.android.tools.r8.ir.conversion.IRConverter.convertMethod(IRConverter.java:535)
at com.android.tools.r8.ir.conversion.IRConverter.lambda$convertMethods$2(IRConverter.java:516)
at com.android.tools.r8.graph.DexProgramClass.lambda$forEachProgramMethodMatching$1(DexProgramClass.java:154)
at com.android.tools.r8.graph.MethodCollection.lambda$forEachMethodMatching$0(MethodCollection.java:96)
at com.android.tools.r8.graph.MethodCollectionBacking.lambda$forEachMethod$0(MethodCollectionBacking.java:51)
at com.android.tools.r8.graph.MethodArrayBacking.traverse(MethodArrayBacking.java:65)
at com.android.tools.r8.graph.MethodCollectionBacking.forEachMethod(MethodCollectionBacking.java:48)
at com.android.tools.r8.graph.MethodCollectionBacking.forEachMethod(MethodCollectionBacking.java:44)
at com.android.tools.r8.graph.MethodCollection.forEachMethodMatching(MethodCollection.java:93)
at com.android.tools.r8.graph.DexProgramClass.forEachProgramMethodMatching(DexProgramClass.java:153)
at com.android.tools.r8.ir.conversion.IRConverter.convertMethods(IRConverter.java:511)
at com.android.tools.r8.utils.ThreadUtils.lambda$processItems$4(ThreadUtils.java:59)
at com.android.tools.r8.utils.ThreadUtils.lambda$processItems$6(ThreadUtils.java:84)
at com.android.tools.r8.utils.ThreadUtils.lambda$processItemsWithResults$2(ThreadUtils.java:51)
at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:125)
at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:69)
at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:78)
at com.google.common.util.concurrent.MoreExecutors$DirectExecutorService.execute(MoreExecutors.java:322)
at com.google.common.util.concurrent.AbstractListeningExecutorService.submit(AbstractListeningExecutorService.java:66)
at com.google.common.util.concurrent.AbstractListeningExecutorService.submit(AbstractListeningExecutorService.java:36)
at com.android.tools.r8.utils.ThreadUtils.lambda$processItemsWithResults$3(ThreadUtils.java:51)
at com.android.tools.r8.utils.ThreadUtils.processItemsWithResults(ThreadUtils.java:48)
at com.android.tools.r8.utils.ThreadUtils.processItems(ThreadUtils.java:81)
at com.android.tools.r8.utils.ThreadUtils.processItems(ThreadUtils.java:67)
at com.android.tools.r8.utils.ThreadUtils.processItems(ThreadUtils.java:59)
at com.android.tools.r8.ir.conversion.IRConverter.convert(IRConverter.java:476)
at com.android.tools.r8.D8.run(D8.java:209)
at com.android.tools.r8.D8.lambda$run$1(D8.java:119)
at com.android.tools.r8.utils.ExceptionUtils.withCompilationHandler(ExceptionUtils.java:70)
at com.android.tools.r8.utils.ExceptionUtils.withD8CompilationHandler(ExceptionUtils.java:54)
at com.android.tools.r8.D8.run(D8.java:116)
at com.android.builder.dexing.D8DexArchiveBuilder.convert(D8DexArchiveBuilder.java:116)
This is the exception:
au...@gmail.com <au...@gmail.com> #3
Sent over the class file via email, thanks!
Description
Hi,
I have several Apps Scripts that connect to MySQL databases. They were all working for the past few years, but today they all stopped working at the same time, with the following error message:
"Failed to establish a database connection. Check connection string, username and password."
The database connection details haven't changed, and they all work if I try to connect to them using an SQL client.
The MySQL server version is 5.7.33 (I am aware that Apps Script won't work with MySQL 8.0+).
I've tried testing this with multiple databases, even using multiple Google accounts, but nothing seems to connect now.
All the best,
Tibor