TransactionAttempt

Status upaya pengiriman transaksi.

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 adalah FINALIZED.

statusEvents[]

object (StatusEvent)

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

TransactionStatus

Status upaya transaksi.

Enum
TRANSACTION_STATUS_UNSPECIFIED Status tidak diketahui atau tidak diinisialisasi.
PENDING Transaksi diketahui oleh validator ini, tetapi belum diselesaikan.
FINALIZED Transaksi diselesaikan. 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 penyertaan efek transaksi dalam putaran tertentu.

roundCertificate

object (RoundCertificate)

Hanya output. Sertifikat eksekusi putaran.

pathToRoundRoot[]

object (MerkleTreeNode)

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

Bukti ini diberikan sebagai jalur dari leaf tertentu (ringkasan transaksi) ke root putaran eksekusi. Jalur direpresentasikan sebagai daftar pasangan (turunan kiri, turunan kanan), dan pasangan pertama adalah turunan kiri dan kanan dari node induk daun yang diberikan. Misalnya, dengan asumsi Merkle tree dibuat 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)].

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

TransactionCertificate

Sertifikat eksekusi transaksi tertentu dalam satu 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 terkait dengan sertifikat ini.

roundId

string (int64 format)

Hanya output. ID putaran eksekusi tempat transaksi ini dijalankan.

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 dari efek. Nilai 2.048 byte yang dienkode sebagai string heksadesimal.

certificationResultsDigestHex

string

Hanya output. Ringkasan kriptografis dari semua kolom sebelumnya secara berurutan. Digunakan untuk membangun hierarki Merkle untuk bukti penyertaan.

TransactionEffects

Efek dari eksekusi transaksi.

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

object (TransactionStatus)

Hanya output. Status yang dihasilkan dari eksekusi transaksi.

effects[]
(deprecated)

object (TransactionEffect)

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

TransactionStatus

Merepresentasikan 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. Hanya ditetapkan 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

Merepresentasikan update oleh beberapa transaksi ke status dunia.

Jika memiliki deltaVal, nilai tersebut diasumsikan 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 yang kosong menunjukkan bahwa nilai telah disisipkan. newVal yang 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 dijalankan.

String berenkode base64.

newVal

string (bytes format)

Hanya output. Nilai kunci setelah transaksi dijalankan.

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 spesial jenis transaction_output berisi output yang dihasilkan oleh transaksi—misalnya, ID akun dari akun yang baru dibuat.

attributes[]

object (EventAttribute)

Hanya output. Atribut peristiwa sebagai key-value pair arbitrer.

EventAttribute

Atribut individual sebagai key-value pair.

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 babak yang terkait dengan sertifikat.

validatorId

string

Hanya output. ID validator yang dapat dibaca manusia. ID ini digunakan untuk mencari kunci publik yang 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 heksadesimal dari ringkasan homomorfik atas efek transaksi gabungan dari putaran ini.

merkleTree

object (MerkleTree)

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

validatorSignatures[]

string (bytes format)

Opsional. Tanda tangan validator. Tanda tangan ini ditandatangani di atas ringkasan payload sebelumnya dari data ini.

String berenkode base64.

isFinalized

boolean

Hanya output. Boolean untuk menunjukkan apakah putaran telah diselesaikan, yaitu, apakah kuorum validator yang memadai telah menyertifikasi putaran ini dengan sertifikat yang sama.

MerkleTree

Pohon Merkle dengan ringkasan kriptografis dari node root.

Representasi JSON
{
  "rootDigestHex": string,
  "numTransactions": string
}
Kolom
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

Merepresentasikan node di jalur hierarki Merkle.

Representasi JSON
{
  "leftChildDigestHex": string,
  "rightChildDigestHex": string
}
Kolom
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

Merepresentasikan peristiwa dalam pemrosesan transaksi seperti yang diamati oleh satu validator.

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

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

string (Timestamp format)

Hanya output. Waktu saat peristiwa dicatat 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 peristiwa.

EventType

Mewakili jenis peristiwa dalam pemrosesan transaksi, seperti yang diamati oleh validator yang menjadi tujuan perutean permintaan.

Enum
EVENT_TYPE_UNSPECIFIED Peristiwa 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 diurutkan 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

Merepresentasikan detail tambahan peristiwa status.

Representasi JSON
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "executionDetails": {
    object (ExecutionDetails)
  }
  // End of mutually exclusive fields.
}
Kolom
Detail acara. Berikut adalah daftar kolom yang sama-sama bersifat eksklusif. Maksimal satu kolom akan ditetapkan dalam respons:
executionDetails

object (ExecutionDetails)

Hanya output. Detail tambahan untuk peristiwa eksekusi.

Akhir kolom yang saling eksklusif.

ExecutionDetails

Detail tambahan untuk peristiwa eksekusi.

Representasi JSON
{
  "roundId": string
}
Kolom
roundId

string (int64 format)

Hanya output. ID putaran tempat peristiwa eksekusi terjadi.