AsyncTask 에서 doInBackground 가 두번 호출된것이 좀 이상한데 Asynctask는 프로그램쓰레드가 홀딩 되는것을 방지하기 위해 네트워크 이슈와 같은 대기 이슈로 인해 사용됩니다.
혹시 asynctask 를 여러번 호출한건 아닌지 의심됩니다.
일반적으로는 asynctask 에서는 doInBackground 의 작업이 끝나야 onPostExecute 가호출됩니다. ㅏ
[doInBackground - onPostExecute - doInBackground.onResponse] 이렇게 나오는것 뭔가 싱크가 맞지 않습니다. asynctask를 여러번 호출하는것은 아닌지 확인 해보세요.