[CODEOS] 새롭게 배포된 EOSIO v1.5.0을 소개합니다.
안녕하세요, EOS Block Producer EOSeoul입니다.
오늘 CODEOS에서 다룰 내용은 새롭게 배포된 EOSIO V.1.5.0에 대한 소개입니다. 많은 개발자분들께서 각각의 업데이트가 갖는 의미에 대해 문의해주셔서 대표적으로 개선된 7가지 사항에 대하여 설명해드리려 합니다.
1)Whitelist 및 Blacklist 기능 적용 #6318
이번 버전업데이트를 통해 인라인 액션과 지연된 액션에 Whitelist, Blacklist가 적용되었습니다. 이 기능을 통해 BP들이 블랙리스트 계정을 수정하지 않고도 중재기능을 실행할 수 있습니다. (via eosio.wrap).
2) table 조회 기능 개선 #6264 #6285
테이블을 역방향으로 조회할 수 있게 되었고, RAM payer(누가 RAM 비용을 지불했는지)를 보여주고 있어서 누구의 RAM을 사용하고 있는지를 확인할 수 있습니다. upper_bound를 사용하고 계신 분들은 #6285와 더불어 get_table_rows와 get_table_by_scope를 자세히 참조해주시길 바랍니다.
3) 트랜잭션/블록 키 복원에 대한 멀티스레드 적용 #6149 #6167
여기서 키 복원의 의미는 유저의 키를 복원할 수 있다는 의미가 아니라, private key로 서명된 블록과 트랜잭션에서 public key를 추출해내는 작업 을 뜻합니다. 이 부분에 멀티스레드를 적용하였습니다. 블록을 검사하는 시간이 크게 개선되었지만, 블록을 생성하는 비용이나 중단된 트랜잭션에 대한 비용에는 영향을 미치지 않습니다.
4) cleos에 eosio.code와 관련된 helper command 추가 #6116
eosio.code는 앞선 CODEOS 포스팅에서 설명했듯이, inline 액션을 호출하기 위해 필요한 meta permission입니다. 이번 릴리즈를 통해 eosio.code를 permission에 쉽게 넣고 뺄 수 있도록 cleos에 helper 커맨드가 추가되었습니다.
변경 전
cleos set account permission eosio active '{"threshold": 1,"keys": [{"key": "EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV","weight": 1}], "accounts": [{"permission":{"actor":"eosio","permission":"eosio.code"},"weight":1}]}'
변경 후
5)cleos에 Multisig 서브커맨드에 대한 기능 개선 #6356
이로인해 Multisig에 대한 트랜잭션에 대한 처리가 쉬워졌습니다.
6)리플레이 시 ctrl-c로 종료하는 기능 지원 #6237
기존에는 블록 리플레이 중 ctrl-c로 인해 state DB 손상이 발생했었는데, 이번 업데이트로 데이터 유실 없이 안전하게 종료할 수 있는 'Graceful Shutdown'이 가능해졌습니다. 따라서 리플레이 중 잠시 중단하였다가 다시 실행하여도 데이터 유실을 걱정하지 않아도 됩니다.
7) state_history_plugin 추가(알파버젼) #5970
history plugin을 대체할 수 있는 state_history_plugin기능이 알파버젼으로 추가되었습니다. 이 기능을 통해 실시간 스트리밍과 테이블 값 및 델타 값(변경 정보)에 접근이 가능해졌습니다.
자세한 업데이트 사항은 각각의 링크를 통해 확인해주세요.
감사합니다.
이오서울 팀 드림.
EOSeoul Contact
Telegram
Facebook
Youtube
Medium
Steemit
Github
Twitter
Bihu
👍