Debugging Neo4jTransactionManager

I have been experimenting for a while with Spring Data Neo4j, by providing an alternative persistence layer to an existing application (Apache Syncope); the existing persistence layer is based on Spring Data JPA.

I went quite far with such an experiment, but I am now facing issues that appear to be related to the different behavior I am experiencing with transaction management, between JpaTransactionManager and Neo4jTransactionManager.

While the standard scenarios work fine with both, I am having issues with the latter when using non-default propagation settings, like as REQUIRES_NEW or NOT_SUPPORTED, where the whole process hangs indefinitely at some point.

Would you be able to suggest an effective way to debug Neo4jTransactionManager to understand where things are getting wrong?

I am on Spring Boot 3.2.4.

Thanks in advance.

If you want to follow along what happens, you should start here in the Neo4jTransactionManager spring-data-neo4j/src/main/java/org/springframework/data/neo4j/core/transaction/Neo4jTransactionManager.java at e8d506c8c3c4c9190340730b458496aeb125ae37 · spring-projects/spring-data-neo4j · GitHub
and then jump into the Neo4jTransactionUtils spring-data-neo4j/src/main/java/org/springframework/data/neo4j/core/transaction/Neo4jTransactionUtils.java at bb97a751d7384b8b00764ac71d0023f469508fc4 · spring-projects/spring-data-neo4j · GitHub
There you will find that the REQUIRES_NEW and REQUIRED case is covered but others will fail. Neo4j itself does not offer nested transactions, so the behaviour is intended.