1 package walletdb
2 3 import (
4 "errors"
5 )
6 7 // Errors that can occur during driver registration.
8 var (
9 // ErrDbTypeRegistered is returned when two different database drivers attempt to register with the name database
10 // type.
11 ErrDbTypeRegistered = errors.New("database type already registered")
12 )
13 14 // Errors that the various database functions may return.
15 var (
16 // ErrDbUnknownType is returned when there is no driver registered for the specified database type.
17 ErrDbUnknownType = errors.New("unknown database type")
18 // ErrDbDoesNotExist is returned when open is called for a database that does not exist.
19 ErrDbDoesNotExist = errors.New("database does not exist")
20 // ErrDbExists is returned when create is called for a database that already exists.
21 ErrDbExists = errors.New("database already exists")
22 // ErrDbNotOpen is returned when a database instance is accessed before it is opened or after it is closed.
23 ErrDbNotOpen = errors.New("database not open")
24 // ErrDbAlreadyOpen is returned when open is called on a database that is already open.
25 ErrDbAlreadyOpen = errors.New("database already open")
26 // ErrInvalid is returned if the specified database is not valid.
27 ErrInvalid = errors.New("invalid database")
28 )
29 30 // Errors that can occur when beginning or committing a transaction.
31 var (
32 // ErrTxClosed is returned when attempting to commit or rollback a transaction that has already had one of those
33 // operations performed.
34 ErrTxClosed = errors.New("tx closed")
35 // ErrTxNotWritable is returned when an operation that requires write access to the database is attempted against a
36 // read-only transaction.
37 ErrTxNotWritable = errors.New("tx not writable")
38 )
39 40 // Errors that can occur when putting or deleting a value or bucket.
41 var (
42 // ErrBucketNotFound is returned when trying to access a bucket that has
43 // not been created yet.
44 ErrBucketNotFound = errors.New("bucket not found")
45 // ErrBucketExists is returned when creating a bucket that already exists.
46 ErrBucketExists = errors.New("bucket already exists")
47 // ErrBucketNameRequired is returned when creating a bucket with a blank name.
48 ErrBucketNameRequired = errors.New("bucket name required")
49 // ErrKeyRequired is returned when inserting a zero-length key.
50 ErrKeyRequired = errors.New("key required")
51 // ErrKeyTooLarge is returned when inserting a key that is larger than MaxKeySize.
52 ErrKeyTooLarge = errors.New("key too large")
53 // ErrValueTooLarge is returned when inserting a value that is larger than MaxValueSize.
54 ErrValueTooLarge = errors.New("value too large")
55 // ErrIncompatibleValue is returned when trying create or delete a bucket on an existing non-bucket key or when
56 // trying to create or delete a non-bucket key on an existing bucket key.
57 ErrIncompatibleValue = errors.New("incompatible value")
58 )
59