pybsddb with cffi

Check-in [7d21048af6]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Added DBPageNotFoundError exception for DB_PAGE_NOTFOUND
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | trunk
Files: files | file ages | folders
SHA1: 7d21048af6104929bfbdfbd824d2167245b96d12
User & Date: broker-3 2013-05-20 17:27:06
Context
2013-05-20
17:27
Added DBPageNotFoundError exception for DB_PAGE_NOTFOUND Leaf check-in: 7d21048af6 user: broker-3 tags: trunk
2013-05-11
15:59
Show db verion in report check-in: 9249afb249 user: Senyai tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to bsddb3/__init__.py.

46
47
48
49
50
51
52

53
54
55
56
57
58
59
#define DB_LOCK_NOTGRANTED ...
#define DB_CHKSUM ...
#define DB_TXN_NOT_DURABLE ...
#define DB_LOG_DSYNC ...
#define DB_LOG_ZERO ...
#define DB_STAT_CLEAR ...
#define DB_NOTFOUND ...

#define DB_DONOTINDEX ...
#define DB_APPEND ...
#define DB_RECNUM ...
#define DB_DUP ...
#define DB_KEYEMPTY ...
#define DB_SET_RECNO ...
#define DB_KEYEXIST ...







>







46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#define DB_LOCK_NOTGRANTED ...
#define DB_CHKSUM ...
#define DB_TXN_NOT_DURABLE ...
#define DB_LOG_DSYNC ...
#define DB_LOG_ZERO ...
#define DB_STAT_CLEAR ...
#define DB_NOTFOUND ...
#define DB_PAGE_NOTFOUND ...
#define DB_DONOTINDEX ...
#define DB_APPEND ...
#define DB_RECNUM ...
#define DB_DUP ...
#define DB_KEYEMPTY ...
#define DB_SET_RECNO ...
#define DB_KEYEXIST ...

Changes to bsddb3/db.py.

79
80
81
82
83
84
85




86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103

104
105
106
107
108
109
110
class DBRepUnavailError(DBError):
    pass


class DBPermissionsError(DBError):
    pass






def check_error(err):
    if err:
        klass = check_error.errors.get(err, DBError)
        raise klass(err, ffi.string(C.db_strerror(err)))

    assert not err, 'DB_ENV error: %d' % err
check_error.errors = {
    EINVAL: DBInvalidArgError,
    ENOENT: DBNoSuchFileError,
    EPERM: DBPermissionsError,
    DB_NOTFOUND: DBNotFoundError,
    DB_KEYEXIST: DBKeyExistError,
    DB_KEYEMPTY: DBKeyEmptyError,
    DB_LOCK_DEADLOCK: DBLockDeadlockError,
    DB_LOCK_NOTGRANTED: DBLockNotGrantedError,
    DB_BUFFER_SMALL: DBNoMemoryError,
    DB_REP_UNAVAIL: DBRepUnavailError,

}


def _iter_pointer(p):
    if not p:
        return
    i = 0







>
>
>
>


















>







79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
class DBRepUnavailError(DBError):
    pass


class DBPermissionsError(DBError):
    pass


class DBPageNotFoundError(DBError):
    pass


def check_error(err):
    if err:
        klass = check_error.errors.get(err, DBError)
        raise klass(err, ffi.string(C.db_strerror(err)))

    assert not err, 'DB_ENV error: %d' % err
check_error.errors = {
    EINVAL: DBInvalidArgError,
    ENOENT: DBNoSuchFileError,
    EPERM: DBPermissionsError,
    DB_NOTFOUND: DBNotFoundError,
    DB_KEYEXIST: DBKeyExistError,
    DB_KEYEMPTY: DBKeyEmptyError,
    DB_LOCK_DEADLOCK: DBLockDeadlockError,
    DB_LOCK_NOTGRANTED: DBLockNotGrantedError,
    DB_BUFFER_SMALL: DBNoMemoryError,
    DB_REP_UNAVAIL: DBRepUnavailError,
    DB_PAGE_NOTFOUND: DBPageNotFoundError,
}


def _iter_pointer(p):
    if not p:
        return
    i = 0