SVC 중복 요청시 반환 로직 개발 중

in #sct4 years ago

안녕하세요 @realmankwon입니다.

어제 발견된 중복 건에 대한 처리를 개발 완료하였습니다.
전송 내역은 api에서 조회하고 처리 후 소각 내역은 DB 에 저장하다 보니 정확하게 매칭할 수 있는 방법을 찾는데 조금 애를 먹었습니다.

처리한 방법은 SVC를 전송한 내역을 시간 순으로 정렬한 이후에 보팅을 했고 소각을 한 건에 대해서 다음과 같은 체크 로직을 추가했습니다.
memo가 동일하고 txid(트랜잭션 아이디)가 앞선 거래 내역이 있으면 현재의 건을 중복 건으로 인식하는 것입니다.

let duplicate = svclist.filter(data => data.memo == memo);
duplicate = duplicate.filter(data => data.txid < svc.txid);



이후에 실제로 반환한 내역을 조사하고 반환한 개수와 소각한 개수의 차에서 반환하지 않은 양을 전송하는 것으로 개발을 하였습니다.

이때 문제가 될 수도 있겠다고 생각되는 부분이 있어서 아직 적용은 하지 않고 기존의 중복 건에 대한 테스트만 한 상태입니다.
기존 중복 건에 대한 처리는 다음과 같이 완료가 되었습니다.

중복 건을 처리할때 중복이 2건 이상 발생했을때도 정상적으로 되는지 테스트를 거친 후에 실제 적용을 해야겠습니다.
전송내역을 DB넣고 이것을 소각을 했느냐 반환을 했느냐로 처리하였으면 좀 더 편할 것 같기는 한데 실제로 SCT의 공식적인 서비스가 아니라서 기존에 있던 것들을 최대한 활용을 할려다 보니 손을 좀 더 거치게 되었습니다.

이번주 내로 테스트 완료하여 적용하여 손이 가지 않도록 잘 만들어야겠습니다.
12월의 첫 출근날!!
즐겁고 활기찬 하루 되세요!!

Sort:  

즐거운 월요일 보내세요

벌써 목요일인데 이제서야 댓글을 보는군요 ㅎ

lovelyyeon.sct님이 realmankwon님의 이 포스팅에 따봉(7 SCT)을 하였습니다.

따봉 감사합니다 ^^

수고 많으셨습니다.

헛 본계정으로 댓글을 ㅋㅋ
감사합니다 ^^

확실히 자동반환이 있으면 더 좋겠네요. 화이팅입니다! ^^

드디어 완료가 되어서 좀 편하게 쓰실 수 있을 듯 합니다 ^^

개발을 하다보면 항상 예상치 못한 문제가... 고생이 많으십니다.

파이팅!!

항상 예외가 발생하죠~~^^
그걸 최소화 시키는게 저희의 임무인 듯 합니다. ^^

Congratulations @realmankwon! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :

You published a post every day of the week

You can view your badges on your Steem Board and compare to others on the Steem Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

To support your work, I also upvoted your post!

Vote for @Steemitboard as a witness to get one more award and increased upvotes!