-
Notifications
You must be signed in to change notification settings - Fork 38.5k
Initial version with TX, Context Propagation and Observation #28156
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Initial version with TX, Context Propagation and Observation #28156
Conversation
...g-context-support/src/main/java/org/springframework/scheduling/quartz/SchedulerAccessor.java
Outdated
Show resolved
Hide resolved
...tx/src/main/java/org/springframework/transaction/support/DefaultTransactionTagsProvider.java
Outdated
Show resolved
Hide resolved
...main/java/org/springframework/transaction/support/ObservationPlatformTransactionManager.java
Outdated
Show resolved
Hide resolved
...main/java/org/springframework/transaction/support/ObservationPlatformTransactionManager.java
Show resolved
Hide resolved
spring-tx/src/main/java/org/springframework/transaction/support/TransactionObservation.java
Show resolved
Hide resolved
...main/java/org/springframework/transaction/support/ObservationPlatformTransactionManager.java
Outdated
Show resolved
Hide resolved
...-tx/src/main/java/org/springframework/transaction/support/TransactionObservationContext.java
Show resolved
Hide resolved
...tx/src/main/java/org/springframework/transaction/support/TransactionThreadLocalAccessor.java
Outdated
Show resolved
Hide resolved
spring-tx/src/main/java/org/springframework/transaction/support/TransactionTemplate.java
Outdated
Show resolved
Hide resolved
697de80
to
2ee4c00
Compare
after having talked to M. Paluch we came to the conslusion that such transaction propagation between threads can cause concurrency issues. We might corrupt / close / change the transaction in one thread and accidentaly break it in another one. If the problem that we're trying to solve is to allow transactions in tools like e.g. Resilience4j, we suggest creating a new transaction inside the lambda passed to such a tool.
a4ac4a4
to
b195a19
Compare
b195a19
to
2567af6
Compare
We have implemented lots of observability features already and I'm not sure we should go further ahead here with an observation per transaction call. Maybe this is similar to #30089 in the sense that we don't really need metrics/traces for this part? I'm not sure we need context propagation anyway as the transaction guarantee some context usage already. I'm closing this issue for now and we'll revisit depending on the community requests. |
@mp911de