대화가 닫히지 않고 전환 상태를 유지하고 있습니다. 이상한 점은 대기열이 한 번에 하나의 메시지 만 처리하도록 구성되어 있다는 것입니다. 그러나 실제적으로 CONVERSING 상태에서 두 가지 대화가 있습니다. 하나는 실제로 작업을하고 다른 하나는 걸린 것 같습니다.Service Broker 대화가 닫히지 않았습니다 (전환 중 상태 유지)
내가 사용하고있는 한 가지 사실은 일반적인 서비스 브로커 구현과 다른 단일 대기열과 서비스입니다 (대화 상자 대신 독백과 비슷해 짐). 내가 가진 활성화 SP 시작 했어 :
RECEIVE TOP(1)
@Handle = conversation_handle,
@MsgTypeName = message_type_name
FROM [//MyQueue]
IF (@@ROWCOUNT = 0)
RETURN
ELSE IF ((@MsgTypeName is null) or (@Handle is null))
RETURN
ELSE IF (@MsgTypeName != '//MyRequest')
BEGIN
END CONVERSATION @Handle
RETURN
END
당신이 모든 것을 설정하는 데 사용했던 DDL 명령뿐만 아니라 좀 더 많은 코드를 제공하지 않으면 (당신이 비즈니스 로직에 대해 말하는 것이 아니라 브로커 관련 부분) 코드를 제공하지 않으면 도움이 될 것입니다. –