Support SQL Server scale-out message bus #1711

Closed
DamianEdwards opened this Issue Mar 18, 2013 · 1 comment

Projects

None yet

2 participants

Owner

Features

  • Support auto-installing the required schema (tables) on app-start
  • Support sharding across multiple tables to reduce lock contention and thus get better throughput
  • Support SQL Query Notifications if available, otherwise use a polling receive loop
  • Must be tolerant of SQL Server going offline (server unavailable) and start buffering until it's back online again

Test considerations

  • Installer
    • Fresh install
    • Already installed
    • Schema upgrade (not applicable in 1st version obviously)
  • Connect
  • Send
  • Receive (no query notification)
  • Receive (via query notification)
  • Retry on various SQL error types (server down, too busy, etc.)
@DamianEdwards DamianEdwards added a commit that referenced this issue Mar 20, 2013
@DamianEdwards DamianEdwards SQL message bus changes:
- Made ObservableSqlOperation re-use the existing reader thread if a notification comes in while we're still processing reader results
- Stop the SqlDependency when the SqlMessageBus is disposed
- Cleaned up the retry delay configuration
- #1711
5ddfa13
@DamianEdwards DamianEdwards added a commit that referenced this issue Mar 23, 2013
@DamianEdwards DamianEdwards Refactor SQL message bus unit tests:
- Created IDbProviderFactory wrapper interface to allowing mocking of all DB operations
- Refactored Db operation classes to allow injection of mockable behavior
- Changed unit tests to setup mocks locally instead of using a private mockable derived class
- Addressed FxCop issues
- #1711
24507d9
@DamianEdwards DamianEdwards added a commit that referenced this issue Mar 25, 2013
@DamianEdwards @DamianEdwards DamianEdwards + DamianEdwards Refactor SQL message bus unit tests:
- Created IDbProviderFactory wrapper interface to allowing mocking of all DB operations
- Refactored Db operation classes to allow injection of mockable behavior
- Changed unit tests to setup mocks locally instead of using a private mockable derived class
- Addressed FxCop issues
- #1711
ab8e359
@Xiaohongt Xiaohongt was assigned Apr 3, 2013
Contributor

verified

@Xiaohongt Xiaohongt closed this Apr 9, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment