views:

739

answers:

2

I've been looking into implementing an external activator in SQL Server Express 2005, and I added the queues, services, contracts, and event notifications to the database. I also added a trigger to send a message to the target queue. Everything parses, runs, and the trigger is firing. However, when I select from the target queue, or use a quick T-SQL script to receive from the queue, nothing is there.

I'm wondering:

  1. How is that even possible? Are the messages being auto-received?
  2. Is there any way to check while sending a message if it arrived correctly?
  3. Is there a better way to run a process on the server asynchronously after a trigger is fired?

As an aside, good tutorial material for the Service Broker is hard to find. If anyone has any resources, please let me know. Right now, I'm reading a book from our companies' online resource but even that is a pain to filter through.

Thanks,

William

+1  A: 

Hi William

In answer to your first question, hopefully, you'll see something in the sys.transmission_queue system view. See http://msdn.microsoft.com/en-us/library/ms190336.aspx for documentation on that.

If you Google that, you might find some useful troubleshooting resources too.

Dave

Dave Cluderay
A: 

John,

I've only recently begun looking into the service broker in order to implement asynch messaging between DB instances. I found the following to be quite useful in getting my head around it.

http://msdn.microsoft.com/en-us/library/bb839489(SQL.90).aspx