vscode-java-debug icon indicating copy to clipboard operation
vscode-java-debug copied to clipboard

Step Over taking forever on Spring Boot Application

Open jfneis opened this issue 3 years ago • 2 comments
trafficstars

I'm trying VSCode with Java for the first time as an option for Eclipse. Configured the environment pretty easily (Java Extension Pack, Spring Boot 4 EP, Lombok) and could run my project.

In order to test debugging I enabled a breakpoint on the first line of my Controller. It basically calls a injected bean service method and LOTS of stuff happen inside it, finally throwing an exception. Here VSCode behaves in 2 very different ways:

  1. If after hitting the breakpoint I resume (F5) the execution, it finishes processing almost immediately (0.3s)
  2. If after hitting the breakpoint I do a step over (F10), it takes forever (like 207s)

During this 3 minutes I pressed pause sometimes, and VSCode stops in all kinds of library code (JPA, Logback, Spring, etc.), so I wonder if this can be related to this closed issue? Our project has very "fat" jar with lots of dependencies, but I don't know how heavy the impact of this limitation of not having "just my code" option should be.

Any ideas of any other causes?

Environment
  • Operating System: Ubuntu
  • JDK version: 1.8
  • Visual Studio Code version: 1.63.2
  • Java extension version: v0.20.0
  • Java Debugger extension version: v0.37.0

jfneis avatar Dec 17 '21 19:12 jfneis

If the call stack is deep, enabling the smart step filtering will have performance impact. because it requires to check if each stack should be filtered out with the filter list.

Could you try disabling the stepFilters?

testforstephen avatar Dec 20 '21 05:12 testforstephen

@testforstephen I'm not using stepFilters, actually. Just regular debug. I thought stepFilters would be a way to increase performance, it it was feasible to list all the dependencies involved (but it's not, as we would have to list 100+ dependencies in this case).

jfneis avatar Dec 20 '21 13:12 jfneis