Interoperability and Coexistence (Service Broker)

Service Broker in SQL Server 2008 operates the same as it did in SQL Server 2005, except for conversation priorities.

Conversation Priorities

Conversation priorities cannot be defined in databases that are attached to instances of the SQL Server 2005 Database Engine. All Service Broker operations in SQL Server 2005 databases operate as if they all have the same priority level.

In conversations between SQL Server 2008 and SQL Server 2005 databases, the conversation endpoints in the SQL Server 2005 database always operate as if they have the default priority level of 5. You can configure the conversation endpoints in the SQL Server 2008 database to have different priority levels, but not the endpoints in the SQL Server 2005 databases. All messages are transmitted from the SQL Server 2005 instance as if they have the priority level of 5. All the service queues in the SQL Server 2005 databases return messages and conversation groups as if they have the same priority level.

To enable conversation priorities in SQL Server 2005 databases, you can do the following:

  • Upgrade the database to SQL Server 2005 in one of the following ways:

    • Upgrading the instance of the Database Engine to SQL Server 2008.

    • Detaching the database and reattaching it to a SQL Server 2008 instance of the Database Engine.

  • Use the ALTER DATABASE statement to set the HONOR_BROKER_PRIORITY database option to ON.

  • Use the CREATE BROKER PRIORITY, ALTER BROKER PRIORITY, and DROP BROKER PRIORITY statements to configure a set of conversation priorities in the database.