Regarding the NEVER
propagation: based on the documentation, its behavior is different. It will throw an exception if it runs within an existing transaction. However, your case is different—you want to ensure that no new transaction is started, and consequently, that no connection is fetched from the pool. In this scenario, SUPPORTED
is more appropriate. It will run regardless of whether a transaction is active or not.