技術的には、REGISTER は Deploy トランザクションの一部です。
チェーンコードは、それと対話するための Deploy、Invoke、Query メソッド/API を提供します。チェーンコードのデプロイについて話すとき、実際にはチェーンコードで Deploy メソッドを呼び出すエンド ユーザー (またはアプリケーション) について話していることになります。
Deploy トランザクションを処理するピアは、Docker コンテナーでチェーンコードを開始しますが、Deploy トランザクションの処理はここで終了しません。チェーンコード コンテナーには、以降ピアと実際に通信する shim レイヤーがあります。シム レイヤーとピア間のこの通信は、ChaincodeMessage によって管理されます。この宣言で定義されているように、さまざまなタイプの ChaincodeMessage(s) があります。
enum Type {
UNDEFINED = 0;
REGISTER = 1;
REGISTERED = 2;
INIT = 3;
READY = 4;
TRANSACTION = 5;
COMPLETED = 6;
ERROR = 7;
GET_STATE = 8;
PUT_STATE = 9;
DEL_STATE = 10;
INVOKE_CHAINCODE = 11;
INVOKE_QUERY = 12;
RESPONSE = 13;
QUERY = 14;
QUERY_COMPLETED = 15;
QUERY_ERROR = 16;
RANGE_QUERY_STATE = 17;
}
ソースhttp://hyperledger-fabric.readthedocs.io/en/latest/protocol-spec/#33-chaincodeから引用します。
Upon deploy (chaincode container is started), the shim layer sends a one
time REGISTER message to the validating peer with the payload containing the
ChaincodeID. The validating peer responds with REGISTERED or ERROR on
success or failure respectively. The shim closes the connection and exits if
it receives an ERROR.
したがって、あなたは得る
10:08:38.450 [shim] DEBU : Registering.. sending REGISTER
10:08:39.901 [shim] DEBU : []Received message REGISTERED from shim
10:08:39.965 [shim] DEBU : []Handling ChaincodeMessage of type: REGISTERED(state:created)
10:08:40.037 [shim] DEBU : Received REGISTERED, ready for invocations
その後、チェーンコードは実際に Query と Invoke を受け取る準備が整います。