2011-01-21 4 views
2

매우 간단한 BizTalk 오케스트레이션을 사용하여 HIPAA 837 파일을 가져 와서 개별 클레임으로 분리하고 전체 XML 메시지를 데이터베이스에 저장합니다. 이 작업을 수행하는 저장된 프로 시저를 호출하는 WCF SQL 보내기 포트가 있습니다 ... proc 그냥 반환 값이없는 삽입 않습니다. 문제는 내가 (무작위로) 시간 초과 오류를 유지한다는 것입니다.BizTalk WCF 풀에서 연결을 시도하는 시간 초과 SQL 어댑터

세부 정보 : "Microsoft.ServiceModel.Channels.Common.InvalidUriException : 제한 시간이 만료되었습니다. 풀에서 연결을 얻기 전에 경과 된 시간 초과 기간입니다. 풀링 된 연결이 모두 사용 중이었고 최대 풀 크기에 도달했기 때문에 발생했습니다.

방금이 작은 파일로 시도했는데 5 개의 개별 클레임이 있습니다 (풀에서 5 개의 연결 만 필요합니다.). BT 서버는 지난 10 시간 동안 (메시지가 처리되지 않음) 아무 것도 처리하지 못했습니다. 그러나 여전히이 오류가 발생했습니다 ... 내 MaxConnectionPoolSize가 100으로 설정되었으므로 100 개의 연결이 열리고 10 분 이상 유휴 상태입니다 시간이 뭐야?

감사합니다.

답변

2

나는 here 또는 here으로 보일 것입니다. 솔직히 말해서 WCF SQL 어댑터는 SQL이 잘 작동하는 것과 그렇지 않은 것은 매우 까다롭고 기발합니다. 필자는 일반적으로 SQL 어댑터에 대한 고유 한 SQL을 작성하지 않고도 삽입 또는 업데이트를보다 잘 제어 할 수 있도록 SQL에 삽입하는 사용자 정의 솔루션을 찾습니다. 하나 이상의 테이블을 삽입하거나 업데이트하거나 복잡한 레코드를 반환하는 경우 WCF SQL 어댑터가 필요하지 않습니다.

이것이 옵션이 아니라면 SQL을 다시 작성하십시오.