Search code examples
javaintellij-ideareactive-programmingproject-reactorstringbuilder

"Inappropriate blocking method call" when one StringBuilder appends another


Why does IntelliJ IDEA show the warning "Inappropriate blocking method call" when one StringBuilder appends another?

public Mono<String> doSomethingReactive() {
    final StringBuilder sb1 = new StringBuilder("hello");
    final StringBuilder sb2 = new StringBuilder("world");
    sb1.append(sb2); // This append() causes warning "Inappropriate blocking method call"
    sb1.append(sb2.toString()); // ... but this append() is OK :)
    return Mono.just(sb1.toString());
}

Solution

  • I suspect it is a bug in IntelliJ IDEA, unless someone comes with a reasonable explanation. See https://youtrack.jetbrains.com/issue/IDEA-282947