TransactionAttempt

Status pengiriman transaksi yang dicoba.

Representasi JSON
{
  "status": enum (TransactionStatus),
  "proofOfInclusion": {
    object (ProofOfInclusion)
  },
  "statusEvents": [
    {
      object (StatusEvent)
    }
  ]
}
Kolom
status

enum (TransactionStatus)

Hanya output. Status upaya transaksi saat ini.

proofOfInclusion

object (ProofOfInclusion)

Hanya output. Sertifikat penyertaan efek transaksi dalam status dunia. Hanya diberikan jika statusnya FINALIZED.

statusEvents[]

object (StatusEvent)

Hanya output. Peristiwa status yang diurutkan dan dicatat untuk upaya transaksi.

TransactionStatus

Status upaya transaksi.

Enum
TRANSACTION_STATUS_UNSPECIFIED Status tidak diketahui atau belum diinisialisasi.
PENDING Transaksi diketahui oleh validator ini, tetapi belum diselesaikan.
FINALIZED Transaksi telah selesai. Efeknya telah dipertahankan di blockchain dan tidak dapat dibatalkan.

ProofOfInclusion

Sertifikat penyertaan efek transaksi dalam status dunia.

Representasi JSON
{
  "transactionCertificate": {
    object (TransactionCertificate)
  },
  "roundCertificate": {
    object (RoundCertificate)
  },
  "pathToRoundRoot": [
    {
      object (MerkleTreeNode)
    }
  ]
}
Kolom
transactionCertificate

object (TransactionCertificate)

Hanya output. Sertifikat pencantuman efek transaksi dalam putaran tertentu.

roundCertificate

object (RoundCertificate)

Hanya output. Sertifikat eksekusi putaran.

pathToRoundRoot[]

object (MerkleTreeNode)

Hanya output. Bukti kriptografi penyertaan efek transaksi dalam putaran eksekusi.

Diberikan sebagai jalur dari leaf tertentu (ringkasan transaksi) ke root putaran eksekusi. Jalur ditampilkan sebagai daftar pasangan (turunan kiri, turunan kanan), dan pasangan pertama adalah turunan kiri dan kanan dari node induk daun yang diberikan. Misalnya, dengan asumsi pohon Merkle dibangun dengan delapan ringkasan leaf [t0, t1, t2, t3, t4, t5, t6, t7], yang memiliki struktur berikut:

       _____root_digest____
      |                    |
   __ h20__             __h21__
  |        |           |       |
 h10     h11          h12     h13
 | |     | |          | |     | |
t0 t1   t2 t3        t4 t5   t6 t7

Di sini, pathToRoundRoot untuk t0 akan berisi: [(t0, t1), (h10, h11), (h20, h21)].

Orang dapat menghitung digest SHA-256 dari setiap node jalur secara berurutan untuk memverifikasi bahwa digest jalur menghasilkan nilai yang sama dengan roundCertificate.merkle_tree.root_digest_hex. Dengan demikian, memverifikasi bahwa leaf disertakan dalam pohon Merkle putaran.

TransactionCertificate

Sertifikat pelaksanaan transaksi tertentu dalam putaran.

Representasi JSON
{
  "transactionDigestHex": string,
  "roundId": string,
  "transactionEffects": {
    object (TransactionEffects)
  },
  "events": [
    {
      object (TransactionEvent)
    }
  ],
  "transactionEffectsStateChecksumHex": string,
  "certificationResultsDigestHex": string
}
Kolom
transactionDigestHex

string

Hanya output. ID transaksi yang menggunakan sertifikat ini.

roundId

string (int64 format)

Hanya output. ID putaran eksekusi saat transaksi ini dieksekusi.

transactionEffects

object (TransactionEffects)

Hanya output. Efek dari eksekusi transaksi.

events[]

object (TransactionEvent)

Hanya output. Peristiwa yang dihasilkan oleh transaksi.

transactionEffectsStateChecksumHex

string

Hanya output. Checksum homomorfik efek. Nilai 2048 byte yang dienkode sebagai string heksadesimal.

certificationResultsDigestHex

string

Hanya output. Ringkasan kriptografi dari semua kolom sebelumnya secara berurutan. Digunakan untuk membuat pohon Merkle untuk bukti penyertaan.

TransactionEffects

Efek pelaksanaan transaksi.

Representasi JSON
{
  "status": {
    object (TransactionStatus)
  },
  "effects": [
    {
      object (TransactionEffect)
    }
  ]
}
Kolom
status

object (TransactionStatus)

Hanya output. Status eksekusi transaksi yang dihasilkan.

effects[]
(deprecated)

object (TransactionEffect)

Hanya output. Tidak digunakan lagi: Kueri status jaringan untuk menentukan perubahan apa pun pada status dunia. Efek transaksi dalam status dunia.

TransactionStatus

Menampilkan status eksekusi transaksi.

Representasi JSON
{
  "code": integer,
  "message": string
}
Kolom
code

integer

Hanya output. Kode status, nilai numerik yang artinya ditentukan oleh kode status gRPC yang sesuai.

message

string (bytes format)

Hanya output. Pesan error, jika ada. Ditetapkan hanya jika kode bukan OK. Ini adalah string yang dienkode sebagai byte UTF-8. Disimpan sebagai byte untuk mencegah masalah apa pun terkait determinisme encoding.

String berenkode base64.

TransactionEffect

Mewakili pembaruan oleh beberapa transaksi ke status dunia.

Jika memiliki deltaVal, nilai tersebut dianggap sebagai delta (offset bilangan bulat) yang diterapkan ke nilai yang disimpan sebelumnya pada kunci tertentu. Dalam hal ini, newVal dan oldVal harus kosong.

Jika tidak, diasumsikan memiliki setidaknya salah satu dari oldVal atau newVal (atau keduanya). oldVal kosong menunjukkan bahwa nilai telah disisipkan. newVal kosong menunjukkan bahwa nilai telah dihapus.

Representasi JSON
{
  "key": string,
  "oldVal": string,
  "newVal": string,
  "deltaVal": string
}
Kolom
key

string (bytes format)

Hanya output. Kunci dalam status dunia yang diperbarui.

String berenkode base64.

oldVal

string (bytes format)

Hanya output. Nilai kunci sebelum transaksi dieksekusi.

String berenkode base64.

newVal

string (bytes format)

Hanya output. Nilai kunci setelah transaksi dieksekusi.

String berenkode base64.

deltaVal

string (int64 format)

Hanya output. Offset bilangan bulat yang diterapkan ke nilai yang disimpan sebelumnya.

TransactionEvent

Peristiwa yang dihasilkan oleh transaksi.

Representasi JSON
{
  "type": string,
  "attributes": [
    {
      object (EventAttribute)
    }
  ]
}
Kolom
type

string

Hanya output. Jenis peristiwa. Acara khusus berjenis transaction_output berisi output yang dihasilkan oleh transaksi—misalnya, ID akun dari akun yang baru dibuat.

attributes[]

object (EventAttribute)

Hanya output. Atribut peristiwa sebagai pasangan nilai kunci arbitrer.

EventAttribute

Atribut individual sebagai pasangan nilai kunci.

Representasi JSON
{
  "key": string,
  "value": string
}
Kolom
key

string

Hanya output. Kunci atribut.

value

string

Hanya output. Nilai atribut.

RoundCertificate

Sertifikat eksekusi putaran oleh validator tertentu.

Representasi JSON
{
  "roundId": string,
  "validatorId": string,
  "roundStateChecksumHex": string,
  "roundDeltaChecksumHex": string,
  "merkleTree": {
    object (MerkleTree)
  },
  "validatorSignatures": [
    string
  ],
  "isFinalized": boolean
}
Kolom
roundId

string (int64 format)

Hanya output. ID putaran yang sertifikatnya ditujukan.

validatorId

string

Hanya output. ID validator yang dapat dibaca manusia. Ini digunakan untuk mencari kunci publik yang akan digunakan untuk memverifikasi validatorSignatures.

roundStateChecksumHex

string

Hanya output. Representasi heksadesimal dari ringkasan homomorfik atas status dunia setelah efek putaran ini diterapkan.

roundDeltaChecksumHex

string

Hanya output. Representasi hex dari ringkasan homomorfik atas efek transaksi gabungan dari putaran ini.

merkleTree

object (MerkleTree)

Hanya output. Pohon Merkle yang memiliki putaran ini sebagai node root dan batch transaksi (dieksekusi dalam putaran) sebagai daun.

validatorSignatures[]

string (bytes format)

Opsional. Tanda tangan validator. Ditandatangani melalui ringkasan payload sebelumnya dari catatan ini.

String berenkode base64.

isFinalized

boolean

Hanya output. Boolean untuk menunjukkan apakah putaran sudah selesai, yaitu apakah kuorum validator yang memadai telah mensertifikasi putaran ini dengan sertifikat yang sama.

MerkleTree

Pohon Merkle dengan ringkasan kriptografi dari node root.

Representasi JSON
{
  "rootHashHex": string,
  "rootDigestHex": string,
  "numTransactions": string
}
Kolom
rootHashHex
(deprecated)

string

Hanya output. Ringkasan kriptografi dari node root. Tidak digunakan lagi: Gunakan rootDigestHex sebagai gantinya.

rootDigestHex

string

Hanya output. Representasi heksadesimal dari ringkasan node root. Format: String heksadesimal 64 karakter.

numTransactions

string (int64 format)

Hanya output. Jumlah transaksi dalam hierarki.

MerkleTreeNode

Mewakili node dalam jalur pohon Merkle.

Representasi JSON
{
  "leftChildHashHex": string,
  "rightChildHashHex": string,
  "leftChildDigestHex": string,
  "rightChildDigestHex": string
}
Kolom
leftChildHashHex
(deprecated)

string

Hanya output. Representasi heksadesimal dari ringkasan turunan kiri node. Tidak digunakan lagi: Gunakan leftChildDigestHex sebagai gantinya.

rightChildHashHex
(deprecated)

string

Hanya output. Representasi heksadesimal dari ringkasan turunan kanan node. Tidak digunakan lagi: Gunakan rightChildDigestHex sebagai gantinya.

leftChildDigestHex

string

Hanya output. Representasi heksadesimal dari ringkasan turunan kiri node. Format: String heksadesimal 64 karakter.

rightChildDigestHex

string

Hanya output. Representasi heksadesimal dari ringkasan turunan kanan node. Format: String heksadesimal 64 karakter.

StatusEvent

Mewakili peristiwa dalam pemrosesan transaksi sebagaimana diamati oleh satu validator.

Semua nilai yang dilaporkan berasal dari perspektif validator yang menangani permintaan dan mungkin berbeda dari tampilan validator lainnya.

Representasi JSON
{
  "eventTime": string,
  "eventType": enum (EventType),
  "eventDetails": {
    object (EventDetails)
  }
}
Kolom
eventTime

string (Timestamp format)

Hanya output. Waktu saat peristiwa direkam oleh validator ini.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

eventType

enum (EventType)

Hanya output. Jenis peristiwa.

eventDetails

object (EventDetails)

Hanya output. Detail tambahan yang terkait dengan acara.

EventType

Mewakili jenis peristiwa dalam pemrosesan transaksi, sebagaimana diamati oleh validator yang menerima permintaan tersebut.

Enum
EVENT_TYPE_UNSPECIFIED Acara tidak diketahui atau tidak ditentukan.
EVENT_TYPE_RECEIVED Transaksi diterima oleh validator ini langsung dari klien.
EVENT_TYPE_BROADCASTED Transaksi disiarkan oleh validator ini ke validator lain.
EVENT_TYPE_ORDERED Transaksi dipesan dan dijadwalkan untuk dieksekusi oleh validator ini.
EVENT_TYPE_EXECUTION_STARTED Eksekusi transaksi telah dimulai.
EVENT_TYPE_EXECUTION_COMPLETED Eksekusi transaksi telah selesai.
EVENT_TYPE_FINALIZED Transaksi telah diselesaikan oleh validator ini.

EventDetails

Mewakili detail tambahan dari peristiwa status.

Representasi JSON
{

  // Union field event_details can be only one of the following:
  "executionDetails": {
    object (ExecutionDetails)
  }
  // End of list of possible types for union field event_details.
}
Kolom
Kolom union event_details. Detail acara. event_details hanya ada berupa salah satu diantara berikut:
executionDetails

object (ExecutionDetails)

Hanya output. Detail tambahan untuk peristiwa eksekusi.

ExecutionDetails

Detail tambahan untuk peristiwa eksekusi.

Representasi JSON
{
  "roundId": string
}
Kolom
roundId

string (int64 format)

Hanya output. ID putaran saat peristiwa eksekusi terjadi.