Mercurial > core / lisp/lib/rdb/err.lisp
changeset 698: |
96958d3eb5b0 |
parent: |
38e9c3be2392
|
author: |
Richard Westhaver <ellis@rwest.io> |
date: |
Fri, 04 Oct 2024 22:04:59 -0400 |
permissions: |
-rw-r--r-- |
description: |
fixes |
1 ;;; rdb/err.lisp --- RDB errors 10 ((message :initarg :message 11 :reader rdb-error-message)) 13 (:documentation "Error signaled by the RDB system.")) 14 (define-condition rocksdb-alien-error (rdb-error) 15 ((db :initarg :db :reader rdb-error-db)) 16 (:documentation "Error signaled by RocksDB subsystem."))) 18 (defmethod print-object ((obj rdb-error) stream) 19 (print-unreadable-object (obj stream :type t :identity t) 20 (format stream "~A" (rdb-error-message obj)))) 22 (define-condition open-db-error (rocksdb-alien-error) 24 (:documentation "Error signaled while opening a database.")) 26 (define-condition open-backup-engine-error (rocksdb-alien-error) 28 (:documentation "Error signaled while opening a backup engine.")) 30 (define-condition destroy-db-error (rocksdb-alien-error) 32 (:documentation "Error signaled while destroying a database.")) 34 (define-condition flush-db-error (rocksdb-alien-error) 36 (:documentation "Error signaled while flushing a database.")) 38 (define-condition ingest-db-error (rocksdb-alien-error) 40 (:documentation "Error signaled while ingesting a database.")) 42 (define-condition sst-writer-error (rocksdb-alien-error) 44 (:documentation "Error signaled while writing a SST file.")) 46 (define-condition repair-db-error (rocksdb-alien-error) 48 (:documentation "Error signaled while repairing a database.")) 50 (define-condition destroy-backup-engine-error (rocksdb-alien-error) 52 (:documentation "Error signaled while destroying a backup engine.")) 54 (define-condition cf-error (rocksdb-alien-error) 55 ((cf :initarg :cf :reader rdb-error-cf)) 56 (:documentation "Error signaled in the context of a Column Family.")) 58 (define-condition put-kv-error (rdb-error) 59 ((kv :initarg :kv :reader rdb-error-kv)) 60 (:documentation "Error signaled while processing a PUT-KV request")) 62 (define-condition get-kv-error (rdb-error) 63 ((key :initarg :key :reader key)) 64 (:documentation "Error signaled while processing a GET-KV request")) 66 (define-condition opt-handler-missing (warning rdb-error) 69 (define-condition db-missing (warning rdb-error) 72 (define-condition metadata-missing (warning rdb-error) 75 (define-condition invalid-propname (rdb-error) 77 (:documentation "Error signaled when an invalid ROCKSDB-PROPERTY value is detected.")) 79 (defun handle-errptr (errptr &optional errtyp params) 80 "Handle ERRPTR, a ROCKSDB-ERRPTR type which is a pointer to NULL, 81 indicating a success or a pointer to a C-STRING. 83 ERRTYP if present must be a condition which sub-classes RDB-ERROR. If 84 an error is detected, the resulting string from ERRPTR and the 85 additional PARAMS will be used to signal a lisp error condition." 86 ;; if NULL, return nil 87 (unless (null-alien errptr) 88 (apply #'signal (or errtyp 'rocksdb-alien-error) 89 (nconc (list :message (sb-unix::strerror)) params))))