Particular / NServiceBus

Build, version, and monitor better microservices with the most powerful service platform for .NET
https://particular.net/nservicebus/
Other
2.07k stars 650 forks source link

Split IOutboxStorage into 2 interfaces #2659

Open synhershko opened 9 years ago

synhershko commented 9 years ago

In https://github.com/Particular/NServiceBus.RavenDB/pull/43#issuecomment-69909498 we've stumbled upon a possible friction point with external storages, as one method (Store) requires a shared session (via session provider) and the rest create their own separate sessions.

This creates a friction point as the persister requires both a session provider and a DB connection (DocumentStore in RavenDB's case), and there are some edge cases where the 2 may point to different DBs.

To avoid this, @andreasohlund suggested we split IOutboxStorage into 2 - the deduplicator side of things (Store) into one and the rest into another.

SzymonPobiega commented 9 years ago

:+1: I notices the same when working with NHibernate one

danielmarbach commented 9 years ago

Is this still on the radar?

andreasohlund commented 9 years ago

Think it's a good change, not sure about how urgent it is though

On Mon, Apr 20, 2015 at 10:40 AM, Daniel Marbach notifications@github.com wrote:

Is this still on the radar?

— Reply to this email directly or view it on GitHub https://github.com/Particular/NServiceBus/issues/2659#issuecomment-94394181 .

SzymonPobiega commented 9 years ago

I like the change. It would even more important if we decide to go for explicit context sharing between handlers because that context would only need to access the store method.

andreasohlund commented 9 years ago

I guess we would then pass a "context" to the Store to avoid needing DI.

I'm sold :)

On Mon, Apr 20, 2015 at 1:08 PM, Szymon Pobiega notifications@github.com wrote:

I like the change. It would even more important if we decide to go for explicit context sharing between handlers because that context would only need to access the store method.

— Reply to this email directly or view it on GitHub https://github.com/Particular/NServiceBus/issues/2659#issuecomment-94424895 .

danielmarbach commented 9 years ago

@DavidBoike should we close this one because it is tracked in feature dev?

DavidBoike commented 9 years ago

How would that affect potential future release notes?

danielmarbach commented 9 years ago

Good point. Then leave it open. There seems to be a lot of redundancy going on with feature dev and issues in this repo. But what is worse: Some things here aren't tracked yet.

DavidBoike commented 8 years ago

This is not really in progress, I think it's here only because of how NSB repo was brought into Waffle. Where should this go?

DavidBoike commented 8 years ago

Nevermind, I found its friends. All moved back to the Backlog, and I'll be removing my face as there is no current plan to do this soon.