• Craig,

    Ah, that's an excellent idea. I should have thought of that. Thanks!

    BTW, no, the messages being sent aren't in the same conversation, but what I found is that this is happening because the app calling the procs has them wrapped in its own transaction. Without the outer transaction surrounding the two procedure calls, things work the way I expect them to. I'm trying to make this whole setup less brittle, so that things like this wouldn't have any effect. I tried forcing all the messages to be part of the same conversation, and that worked for a while, but has broken down for reasons I haven't figured out yet.

    Clearly this process isn't as simple as I had hoped, and I'm probably going to have to do some major re-writing. One option I'm looking at is based on the "Real-time Data Integration" sample code in the Microsoft SQL Server Community Samples: Service Broker[/url] project on codeplex. That code has the triggers on the tables simply send messages that some data has changed, not send the actual data itself, then the receiving service uses Change Tracking to find any changed data and send it along to the target system. I'd hoped to not have to build something that elaborate, but it looks like I don't have much choice.

    -Chris