Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
BlockHound: Temporarily disable detection of
SecureRandom
as blocki…
…ng (#5430) Motivation: BlockHound reported that `io.fabric8.kubernetes.client.http.StandardHttpRequest` invoked blocking calls. https://github.com/line/armeria/actions/runs/7721798741/job/21048920064?pr=5370#step:17:30 ``` java.lang.Exception: java.io.FileInputStream#readBytes at com.linecorp.armeria.internal.testing.InternalTestingBlockHoundIntegration.writeBlockingMethod(InternalTestingBlockHoundIntegration.java:84) at reactor.blockhound.BlockHound$Builder.lambda$install$8(BlockHound.java:472) at reactor.blockhound.BlockHoundRuntime.checkBlocking(BlockHoundRuntime.java:89) at java.base/java.io.FileInputStream.readBytes(FileInputStream.java) at java.base/java.io.FileInputStream.read(FileInputStream.java:293) at java.base/java.io.FilterInputStream.read(FilterInputStream.java:119) at java.base/sun.security.provider.NativePRNG$RandomIO.readFully(NativePRNG.java:425) at java.base/sun.security.provider.NativePRNG$RandomIO.ensureBufferValid(NativePRNG.java:528) at java.base/sun.security.provider.NativePRNG$RandomIO.implNextBytes(NativePRNG.java:547) at java.base/sun.security.provider.NativePRNG.engineNextBytes(NativePRNG.java:221) at java.base/java.security.SecureRandom.nextBytes(SecureRandom.java:758) at java.base/java.util.UUID.randomUUID(UUID.java:151) at io.fabric8.kubernetes.client.http.StandardHttpRequest.<init>(StandardHttpRequest.java:116) at io.fabric8.kubernetes.client.http.StandardHttpRequest$Builder.build(StandardHttpRequest.java:201) ``` There is nothing we can do except add an exceptional rule for that. So the issue is reported to the upstream. fabric8io/kubernetes-client#5735 The blocking call is temporarily allowed until the problem is resolved in the upstream. Modifications: - Allow blocking calls inside `StandardHttpRequest$Builder.build()`. Result: Make CI build pass to identify meaningful problems.
- Loading branch information