안녕하세요. Xamarin.Forms로 안드로이드 어플리케이션을 개발중이고 MSSQL로 데이터를 관리하고 있습니다.
AppCenter를 사용하여 오류를 수집하는 중에 이와 같은 에러를 발견해서 여쭙게 되었습니다.
트랜잭션(프로세스 ID 213)이 잠금 리소스에서 다른 프로세스와의 교착 상태가 발생하여 실행이 중지되었습니다. 트랜잭션을 다시 실행하십시오. 트랜잭션(프로세스 ID 213)이 잠금 리소스에서 다른 프로세스와의 교착 상태가 발생하여 실행이 중지되었습니다. 트랜잭션을 다시 실행하십시오.
아래가 해당 오류가 발생한 부분의 소스코드 이구요
public DataSet INSERT(string queryString)
{
DataSet ds = new DataSet();
SqlConnection connection = new SqlConnection(Preferences.Get("CONNECTION_STRING", string.Empty));
connection.Open();
try
{
_transaction = connection.BeginTransaction();
SqlDataAdapter adapter = new SqlDataAdapter();
SqlCommand command = new SqlCommand(queryString, connection, _transaction);
adapter.SelectCommand = command;
adapter.Fill(ds);
adapter.Update(ds);
_transaction.Commit();
}
catch (Exception ex)
{
_transaction.Rollback();
CrashManager.Instance.TrackCrashes(ex);
}
finally
{
connection.Close();
}
return ds;
}
오류를 살펴보면 adapter.Fill(ds)을 하는 부분에서 Exception이 발생해서 catch에 잡혔더라고요. 실제 쿼리 상에서는 트랜잭션을 잡는 부분이 없고, 그렇다면 클라이언트 상에서 문제가 발생했다는 것인데 원인을 찾는데 어려움이 많네요. 도움 혹은 조언 부탁드립니다.