为什么交易并不总是记录到区块中? - 区块链PBFT

Why is transactions not always record to the block? - Blockchain PBFT

我正在使用 ibm 的区块链服务,但我不太明白的是,有时我的调用或查询不会导致添加交易负载?

假设我的区块高度为 30。我现在对智能合约进行以下调用:

{
"method":"invoke",
"id":1,
"jsonrpc":"2.0",
"params":{
    "chaincodeID":{
        "name":"someIDHere"
    },
    "ctorMsg":{
        "args":[ "someArgsHere"
        ],
        "function":"create_user"
    },
    "secureContext":"admin",
    "type":1
}
}

区块高度增加到 31,我的审计员​​角色想要检查这个新区块...

我使用 API 端点调用 get /chain/blocks/30(因为新块的 size()-1)。我认为这会导致交易负载?但有时我只收到以下[​​=12=]

有时invoke/query没有存储在payload中?

{ "stateHash":"FmmIccWFaevjks2l9OagabDookEuaw3c3FKLGBVz2vZhDLetSR+B9ufK2/EAAQXWu8nj1RFIuSzcA+P+HxUM8w==",
"previousBlockHash":"nyugEcVpmcMCWdJzrMHhpBnTHr0Vr7D2TVysVOOhfcGfU+mbj/YaiHtm9OJ/WC4RrwkSwUoNGNAbJdSGHQT8Og==",
"consensusMetadata":"CIoC",
"nonHashData":{
    "localLedgerCommitTimestamp":{
        "seconds":1482353608,
        "nanos":800785285
    },
    "chaincodeEvents":[
        {
        }
    ]
}
}

有人可以帮我解释一下吗?是否存在我不能期望添加新有效载荷的特殊情况?除了创世块(或其他部署)?

查询不会导致创建新块。仅调用和部署添加块到网络