Uh oh!
There was an error while loading. Please reload this page.
Fix Android crypto asserts - #61827
Conversation
ghost
commented
Nov 19, 2021
Tagging subscribers to this area: @bartonjs, @vcsjones, @krwq, @GrabYourPitchforks Issue DetailsThis fixes three asserts that were started occurring in the native Android cryptographic primitives.
/cc @AaronRobinsonMSFT.
|
ghost
commented
Nov 19, 2021
Tagging subscribers to 'arch-android': @steveisok, @akoeplinger Issue DetailsThis fixes three asserts that were started occurring in the native Android cryptographic primitives.
/cc @AaronRobinsonMSFT.
|
MaximLipnin
commented
Nov 19, 2021
@vcsjones thanks for your help, let me run some additional CI lanes to verify the fix |
MaximLipnin
commented
Nov 19, 2021
/azp run runtime-manual |
|
Azure Pipelines successfully started running 1 pipeline(s). |
vcsjones
commented
Nov 19, 2021
Note, I saw a number of failures in System.Security.Cryptography on Android, most of them because it seems to be trying to load openssl or run RC2 tests. However none of the tests are tripping an assert now. |
Why would it pick the wrong |
vcsjones
commented
Nov 19, 2021
I'm guessing this happened when Let me see if I can fix that up. But I would not hold this PR for that. This PR is at least some progress (assuming I did it correctly 😄) |
bartonjs
commented
Nov 19, 2021
Looks good, ja? Well, the properties section doesn't defined UseAndroidCrypto. My bad. |
vcsjones
commented
Nov 19, 2021
That fixed the crypto initialization issues. Tests are still failing because it's trying to run the RC2 tests. I will fix that one next. |
vcsjones
commented
Nov 19, 2021
And now the RC2 tests are fixed, so this is green locally for me. I would appreciate if someone could start the relevant pipelines in CI. (Previously, the RC2 one-shot tests were being excluded by csproj. They aren't anymore, so they are marked conditional as the other RC2 tests are). |
steveisok
commented
Nov 19, 2021
/azp run runtime-manual |
|
Azure Pipelines successfully started running 1 pipeline(s). |
vcsjones
commented
Nov 19, 2021
@bartonjs what do y'all think about having Android tests run automatically if anything changes in |
bartonjs
commented
Nov 19, 2021
SGTM, (even if it increases the CI duration for crypto-affecting PRs) but I don't know how any of that works. What do you think, @steveisok? (Clearly it didn't occur to me that Android tests weren't run when I made the consolidation) |
steveisok
commented
Nov 19, 2021
We're going to try and get there as part of #61017. By default, only System.Runtime tests will execute on PR's for mobile legs. I think detecting the libraries you change and only run them is a good middle ground. |
vcsjones
commented
Nov 19, 2021
Same, I've broken the Android build a couple of times now: #59812, #59818, #55699, etc.
Even if we run all Android tests for changes in S.S.Cryptography, I think that is an improvement over the current situation. Ideally yes, only run tests for changed projects, but the nature of S.S.Cryptography is "giant abstraction of p/invoke" so there is a fairly high chance that changes here have an impact on Android's CI. |
steveisok
commented
Nov 19, 2021
Good point. Running them all the time again is something to consider. BTW - the tests look good. The emulators are red because they sometimes fail S.S.Cryptography tests due to running out of memory. Many attempts were made to figure out why, none have solved the problem thus far. |
bartonjs
commented
Nov 19, 2021
@steveisok I think you're saying it's good to merge even with the failures that are presented; but I'm not sure enough that I'm willing to push the button. doesn't look happy to me... but if that's the OOM failure you mentioned, then OK. (As of this message, at least, all checks have completed. The Browser/wasm failure looks like some piece of infra failed after some tests, so it's only the |
In the adb logs, you'll see a bunch of these before the test activity crashes: The failures in the other legs are known issues. I think this is good to go. Especially given the crypto tests pass on android devices (arm/arm64 legs). |
MaximLipnin
commented
Nov 23, 2021
Thanks for looking into this. JFR - There are other OOM-related issue, e.g. #55691. so it's not specific for this PR. Since the initial issue seems to be addressed, it would be good to merge this change. |
MaximLipnin
commented
Nov 24, 2021
Merging it as it will help to clean up the failures on android lanes. |
This fixes three asserts that were started occurring in the native Android cryptographic primitives.
/cc @AaronRobinsonMSFT.
Closes#61783