SDK Tablestore PHP menangani error dengan melemparkan eksepsi. Topik ini menjelaskan penanganan error Tablestore, informasi eksepsi, dan kebijakan pengulangan.
Metode
SDK Tablestore PHP menangani error dengan melemparkan eksepsi. Jika pemanggilan API selesai tanpa eksepsi, operasi tersebut berhasil. Jika tidak, operasi tersebut gagal.
Untuk operasi batch, seperti BatchGetRow dan BatchWriteRow, Anda harus memeriksa eksepsi serta status setiap baris. Pemanggilan API secara keseluruhan dianggap berhasil hanya jika semua baris diproses dengan sukses.
Eksepsi
SDK Tablestore PHP mendefinisikan dua jenis eksepsi: OTSClientException dan OTSServerException. Kedua eksepsi tersebut mewarisi kelas dasar Exception.
OTSClientException: Eksepsi yang terjadi di dalam SDK, misalnya karena parameter yang ditetapkan tidak valid.
-
OTSServerException: Error sisi server yang diurai dari pesan error yang dikembalikan oleh server. Objek OTSServerException berisi anggota berikut:
getHttpStatus(): Kode respons HTTP, seperti 200 atau 404.
getOTSErrorCode(): String jenis error yang dikembalikan oleh Tablestore.
getOTSErrorMessage(): Deskripsi detail error yang dikembalikan oleh Tablestore.
getRequestId(): Pengidentifikasi unik universal (UUID) yang secara unik mengidentifikasi permintaan. Jika Anda tidak dapat menyelesaikan masalah, catat RequestId ini dan kirim tiket.
Pengulangan
SDK secara otomatis melakukan pengulangan operasi ketika terjadi error. Kebijakan default adalah mengulang maksimal 3 kali dengan interval pengulangan maksimum 2.000 ms. Untuk informasi lebih lanjut, lihat Retry.
Anda juga dapat menyesuaikan kebijakan pengulangan dengan mengubah RetryPolicy di OTSClientConfig.
SDK menerapkan kebijakan pengulangan berikut:
DefaultRetryPolicy: Kebijakan pengulangan default. Kebijakan ini mengulang operasi hingga 3 kali dengan interval pengulangan maksimum 2.000 ms. Kebijakan ini berlaku untuk error terkait Pengendalian aliran dan error internal sisi server pada operasi baca.
NoRetryPolicy: Tidak ada pengulangan yang dilakukan.