The target service name could not be found.

Hi :

I am creating a queue application using Service broker. I was able to send and receieve messages between 2 databases in the same instance. Now I am trying to communicate b/w 2 different instances. I am getting the following error...

The target service name could not be found. Ensure that the service name is specified correctly and/or the routing information has been supplied..

The routing informations is as follows

DROP ROUTE SERVERROUTE

CREATE ROUTE SERVERROUTE

WITH

BROKER_INSTANCE = 'D6F1721F-E7A2-4497-8890-FD4C2AAD98FE',

SERVICE_NAME = 'SERVERSERVICE' ,

ADDRESS = 'TCP://10.23.3.12:6022';

GO

I also check the sys.routes and the entry is correct. I was also trying to debuggin using SQL profiler...but it didnt help much.

How do I fix this Your help is appreciated.

Thanks,

Pramod




Answer this question

The target service name could not be found.

  • RamaGudimetla

    Rushi:

    All over again I created the service broker with separate new instances. This time I see transmission status empty in transmission queue.

    But in Sql profiler I still get the same message.The target service name could not be found. Ensure that the service name is specified correctly and/or the routing information has been supplied.

    How do I approach this

    Thanks,

    Pramod



  • JonathanV

    You should not be seeing two separate error messages in transmission_status and profiler for the same dialog. One is related to routing and the other to security. Is there just one dialog running (see sys.conversation_endpoints) Could you also send your entire scripts to me (Rushi (dot) Desai (at) microsoft (dot) com), so that I can take a look

    Thanks,
    Rushi


  • P Liedman

    Are you using a pre-released version of SQL Server 2005 What does 'SELECT @@version' give
  • PaulDaly

    Hi Rushi:

    This is the send message.

    Use testdb1_db1

    GO

    -- Send a Message from PKUMARTEST_SERVICE on pkumartest/testdb1_db1 to

    -- Server_service on pkumar/testserver_db.

    DECLARE @dialog_handle uniqueidentifier,

    @msg XML

    BEGIN DIALOG CONVERSATION @dialog_handle

    FROM SERVICE PKUMARTESTSERVICE1

    TO SERVICE 'SERVERSERVICE'

    ON CONTRACT MainContract

    WITH ENCRYPTION = OFF ;

    set @msg = '<name> This is pramods sdfsdf message </name>';

    -- Now Sending a message note we are using

    -- SendMessageType since it is defined in the contract

    -- that it is to be sent only by initiater

    SEND ON CONVERSATION @dialog_handle

    MESSAGE TYPE SendMessageType (@msg)

    In SQL PROFILER I have turned on all events.

    The message its displaying is

    Broker:Message Classify The target service name could not be found. Ensure that the service name is specified correctly and/or the routing information has been supplied.



  • cphtsu

    Is the route in the correct database (i.e. testdb1_db1)

    select * from testdb1_db1.sys.routes;


  • Rick Murtagh

    Hi Rushi:

    This is displayed in sql Profiler.

    The target service name could not be found. Ensure that the service name is specified correctly and/or the routing information has been supplied...

    The earlier one is from sys.transmission_queue transmission status field.



  • Experienced

    Yes the route is correct. Here is the infor.

    AutoCreatedLocal 65536 1 NULL NULL NULL LOCAL NULL
    SERVERROUTE 65553 1 SERVERSERVICE D6F1721F-E7A2-4497-8890-FD4C2AAD98FE NULL TCP://10.23.3.12:6022 NULL

    Thanks,

    Pramod



  • Jonathan Stratford

    What did you change to fix the routes problem How did the error message change from that to this one

    Are you using non-default collation for the server, database or your session


  • FLx

    It says :

    Microsoft SQL Server 2005 - 9.00.1399.06 (Intel X86) Oct 14 2005 00:33:37 Copyright (c) 1988-2005 Microsoft Corporation Standard Edition on Windows NT 5.1 (Build 2600: Service Pack 2)



  • _mirko

    Hi Rushi:

    I checked my development servers...they have service pack 1 and my local machine has service pack2.

    Good news is...my service broker is working in my machine with 2 different instances. Will try upgrading the development server to service pack 2 and hopefully it should work I guess.

    Thanks for throwing the light on the Sql Server version. It worked.

    Pramod



  • JimSornig

    Service name is case sensitive. Verify that you are specifying 'SERVERSERVICE' in BEGIN DIALOG. Are you specifying a broker instance in begin dialog

    Profiler should give you precise information what is going on. Are you sure you have enabled all Broker events


  • JackRicky

    In sys.transmission_queue the transmission status shows this error msg...

    Dialog security is not available for this conversation because there is no remote service binding for the target service. Create a remote service binding, or specify ENCRYPTION = OFF in the BEGIN DIALOG statement.

    As you can see...I specify Encryption = off in my send dialong.



  • The target service name could not be found.