Tablestore SDK untuk PHP menangani kesalahan sebagai pengecualian. Topik ini menjelaskan metode penanganan kesalahan, jenis pengecualian, dan kebijakan pengulangan dari Tablestore SDK untuk PHP.
Metode
Tablestore SDK untuk PHP menangani kesalahan sebagai pengecualian. Jika tidak ada pengecualian yang dikembalikan, operasi dianggap berhasil. Namun, jika sebuah pengecualian dikembalikan, operasi dianggap gagal.
Operasi batch seperti BatchGetRow dan BatchWriteRow hanya dianggap berhasil jika sistem memverifikasi bahwa tidak ada pengecualian yang dikembalikan dan status setiap baris berhasil.
Pengecualian
OTSClientException dan OTSServerException adalah dua jenis pengecualian umum yang mungkin Anda temui saat menggunakan Tablestore SDK untuk PHP. Kedua pengecualian tersebut merupakan turunan dari Exception.
OTSClientException: Pengecualian internal SDK, seperti nilai parameter yang tidak valid.
OTSServerException: Kesalahan server yang diuraikan dari pesan kesalahan server. OTSServerException menyediakan informasi berikut:
getHttpStatus(): Kode status HTTP seperti 200 atau 404.
getOTSErrorCode(): String tipe kesalahan yang dikembalikan oleh Tablestore.
getOTSErrorMessage(): Deskripsi kesalahan terperinci yang dikembalikan oleh Tablestore.
getRequestId(): UUID yang mengidentifikasi permintaan. Jika masalah tetap ada, catat nilai parameter RequestId dan submit a ticket.
Pengulangan
Tablestore SDK untuk PHP secara otomatis melakukan pengulangan operasi ketika terjadi kesalahan. Dalam kebijakan pengulangan default, jumlah maksimum percobaan ulang adalah 3, dengan interval pengulangan maksimum sebesar 2.000 milidetik. Untuk informasi lebih lanjut, lihat Pengulangan.
Anda juga dapat menentukan kebijakan pengulangan kustom dengan mengonfigurasi RetryPolicy dalam OTSClientConfig.
Tablestore SDK untuk PHP menyediakan kebijakan pengulangan berikut:
DefaultRetryPolicy: Kebijakan pengulangan default. Jumlah maksimum percobaan ulang adalah 3, dengan interval pengulangan maksimum sebesar 2.000 milidetik. Pengulangan dilakukan untuk kesalahan pembatasan dan kesalahan server internal yang terkait dengan operasi baca.
NoRetryPolicy: Tidak ada pengulangan yang dilakukan.