Index of values


A
access [Seqdb_containers.PERM]
Access the perm file referenced by the file descriptor
access [Seqdb_containers.HINDEX]
Access the hindex file referenced by the file descriptor
access [Seqdb_containers.KVSEQ]
Access the kvseq file referenced by the file descriptor.
add [Seqdb_log.Make]
add [Seqdb_containers.PERM]
Adds a new entry at the end of the permutation array
add [Seqdb_containers.HINDEX]
Add another value to the file, and return the new entry.
add [Seqdb_containers.KVSEQ]
Add another value to the file, and return the new entry.
aentries_name [Seqdb_containers.Sb_consts]
AENTRIES is the number of active (non-deleted) entries in the file.
align_name [Seqdb_containers.Sb_consts]
ALIGN enforces the alignment of the Kvseq entries so entries can only start at multiples of ALIGN.
alignment [Seqdb_containers.KVSEQ]
append [Seqdb_archive]
let ch = append arch entry_name entry_timestamp entry_gzip data_gzip comment: Appends data to the archive.

B
base_dir [Seqdb_fsys_ht]
Return the directory
blit_from_string [Seqdb_containers.KVSEQ]
blit_from_string s s_pose e_pos len: Copies the substring of length len at position s_pos from s to e's value at position e_pos.
blit_to_string [Seqdb_containers.KVSEQ]
blit_to_string e e_pos s s_pos len: Copies the substring of length len at position e_pos from e's value to s at position s_pos.

C
cellsz_name [Seqdb_containers.Sb_consts]
CELLSZ is the size of the Hindex elements in the number of 8 byte words.
check_all_filesys [Seqdb_fsys_ht]
Do a filesystem check if we can get the global lock exclusively
check_filesys [Seqdb_fsys_ht]
Performs a filesys check, and if necessary rolls it back
checkpoint_and_dispose_all [Seqdb_fsys_ht]
Checkpoints and disposes all filesystems of the base that have been used by this program
close [Seqdb_archive]
Closes the file (and if locks are held, they are released)
close_log [Seqdb_log.Make]
compact [Seqdb_fsys_ht]
Create new .data and .idx files with the given params.
configure [Seqdb_containers.PERM]
Sets some (non-persistent) parameters: flush_every: The superblock is written every this number of adds, deletes, replaces. (Default: 1), auto_fadvise: Advises to remove the file from the page cache after every sync (automatic syncs & explicit syncs). The superblock is not removed. (Default: false)
configure [Seqdb_containers.HINDEX]
Sets some (non-persistent) parameters: flush_every: The superblock is written every this number of adds, replaces, deletes. (Default: 1), auto_fadvise: Advises to remove the file from the page cache after every sync (automatic syncs & explicit syncs). The superblock is not removed. (Default: false), random_fadvise: Whether to advise the OS to assume fully random accesses (Default: false)
configure [Seqdb_containers.KVSEQ]
Sets some (non-persistent) parameters: flush_every: The superblock is written every this number of adds, deletes, replaces. (Default: 1), auto_sync: If non-None, every auto_sync seconds the whole file is synced to disk. This also sets the superblock variables SYNCSIZE and SYNCTIME. A value of 0 means: sync after every modification. (Default: Some 0 - you want to change this), auto_fadvise: Advises to remove the file from the page cache after every sync (automatic syncs & explicit syncs). The superblock is not removed from the cache. (Default: false), onsync: This function is called before an automatic or explicit sync is done. For example, one can sync the attached Hindex at that time. (Default: do nothing)
configure_ao_filesys [Seqdb_fsys_ao]
- read_only_mode: If true, the fsys can only be read - writes will fail.
configure_filesys [Seqdb_fsys_ht]
Changes runtime parameters: hindex_caching: whether to allow page-caching of the idx file. (true after create/get_filesys), data_caching: whether to allow page-caching of the data file. (true after create/get_filesys), sync_every: after how many seconds files are synced to disk. A negative value disables syncs. (600 after create/get_filesys), fully_buffered_index: The buffer for the index is made so large that it can hold the whole index (false after create/get_filesys)
contents [Seqdb_archive]
Return the contents
create [Seqdb_containers.PERM]
Write an empty perm structure into the file referenced by the file descriptor.
create [Seqdb_containers.HINDEX]
Write an empty hindex structure into the file referenced by the file descriptor.
create [Seqdb_containers.KVSEQ]
Write an empty kvseq structure into the file referenced by the file descriptor.
create_ao_filesys [Seqdb_fsys_ao]
Create an ao file system
create_filesys [Seqdb_fsys_ht]
Creates a new file system in the base.
create_superblock [Seqdb_containers.Superblock]
Creates a new empty superblock with the passed parameters

D
del_mark [Seqdb_containers.HASHABLE]
The pointer values marking free and deleted hash table cells
del_mark [Seqdb_containers.KVSEQ]
The pointer values marking free and deleted hash table cells
delete [Seqdb_containers.HINDEX]
Marks the entry as deleted
delete [Seqdb_containers.KVSEQ]
Same as replacing the entry with a deleted entry
dispose_all [Seqdb_fsys_ht]
Disposes all filesystems of the base
downgrade [Seqdb_containers.Hpointer]
downgrade_pointer [Seqdb_containers.Hpointer]
dtotsz_name [Seqdb_containers.Sb_consts]
DTOTSZ is the estimated total size of all active (non-deleted) files in bytes.

E
entries_name [Seqdb_containers.Sb_consts]
ENTRIES is the total number of entries in the file (deleted and active entries).

F
fadvise_iterating [Seqdb_containers.KVSEQ]
Tell the page cache that we are iterating over the file, and it is a good idea to read ahead pages.
fadvise_willneed [Seqdb_containers.KVSEQ]
Advise to load the size bytes at pointer
fadvise_wontneed [Seqdb_containers.PERM]
Tell the page cache that we won't need this file any more.
fadvise_wontneed [Seqdb_containers.HINDEX]
Tell the page cache that we won't need this file any more.
fadvise_wontneed [Seqdb_containers.KVSEQ]
Tell the page cache that we won't need this file any more.
false_bool [Seqdb_containers.Sb_consts]
fileincr_name [Seqdb_containers.Sb_consts]
FILEINCR is the increment by which the file is extended when the file is full.
filesize [Seqdb_containers.Superblock]
Return the logical file size: The FILESIZE variable if existent, or else the real file size of the descriptor.
filesize_name [Seqdb_containers.Sb_consts]
FILESIZE is the logical length of the file.
filesys_ao_params [Seqdb_fsys_ao]
Get the special ao parameters
filesys_params [Seqdb_fsys_ht]
Get the parameters of the filesystem
first_entry [Seqdb_containers.HINDEX]
Returns the first entry, or raises End_of_file
first_entry [Seqdb_containers.KVSEQ]
Returns the first entry, or raises End_of_file
fixed_repr_max [Seqdb_containers.Sb_consts]
If KEYREPR/VALREPR is a value n between fixed_repr_min and fixed_repr_max, the length of the keys/values is fixed to n - fixed_repr_min.
fixed_repr_min [Seqdb_containers.Sb_consts]
flush [Seqdb_containers.PERM]
Ensure that everything is written out (but a sync is not forced).
flush [Seqdb_containers.HINDEX]
Ensure that everything is written out (but a sync is not forced).
flush [Seqdb_containers.KVSEQ]
Ensure that everything is written out (but a sync is not forced).
format_name [Seqdb_containers.Sb_consts]
free_mark [Seqdb_containers.HASHABLE]
free_mark [Seqdb_containers.KVSEQ]

G
get_ao_iterator [Seqdb_fsys_ao]
Starts iterating at the first file whose mtime is greater or equal to at_mtime (or the beginning of the filesys if at_mtime is omitted).
get_contents [Seqdb_containers.PERM]
Get the contents of an entry
get_contents [Seqdb_containers.HINDEX]
Get the contents of an entry (or Not_found if it is deleted)
get_contents [Seqdb_containers.KVSEQ]
Get the contents of an entry
get_delflag [Seqdb_containers.KVSEQ]
Get only the delflag of the entry
get_filesys [Seqdb_fsys_ht]
Get the filesystem
get_idx_iterator [Seqdb_fsys_ht]
Get an iterator for the filesystem.
get_index [Seqdb_containers.PERM]
Get the index of an entry, 0 <= index < size
get_iterator [Seqdb_fsys_ht]
Get an iterator for the filesystem.
get_key [Seqdb_containers.HASHABLE]
Get the key of the entry
get_key [Seqdb_containers.KVSEQ]
Get only the key of the entry
get_pointer [Seqdb_containers.POINTABLE]
Get the pointer of an entry
get_pointer [Seqdb_containers.HINDEX]
Get the pointer to the container entry (or Not_found if it is deleted)
get_pointer [Seqdb_containers.KVSEQ]
Get the pointer of an entry
get_stats [Seqdb_fsys_ht]
Read the statistics
get_total_length [Seqdb_containers.KVSEQ]
Get the total length (used space) of the entry
get_value [Seqdb_containers.KVSEQ]
Get only the value of the entry
get_value_length [Seqdb_containers.KVSEQ]
Get the length of the value
group [Seqdb_containers.PERM]
Sorts the entries by first their hash value, and then by their keys.

H
has_key [Seqdb_containers.HASHABLE]
Checks whether the entry has the key.
has_key [Seqdb_containers.KVSEQ]
Checks whether the entry has the key
hash [Seqdb_containers.Hash_algo]
The hash value of a key must fit in a positive int64 number
hash_algo [Seqdb_containers.PERM]
Query features of the file
hash_algo [Seqdb_containers.HINDEX]
hash_algo_of_htalgo [Seqdb_containers.Hash_algo]
have_statistics [Seqdb_containers.HINDEX]
have_statistics [Seqdb_containers.KVSEQ]
havedups_name [Seqdb_containers.Sb_consts]
HAVEDUPS is used in the superblocks of the data files of file systems.
hindex_format [Seqdb_containers.Sb_consts]
htalgo_name [Seqdb_containers.Sb_consts]
HTALGO sets the hash algorithm.
htalgo_of_hash_algo [Seqdb_containers.Hash_algo]
Convert from/to HTALGO superblock values
htsize [Seqdb_containers.HINDEX]
Query features of the file
htsize_name [Seqdb_containers.Sb_consts]
HTSIZE is the size of the Hindex table as number of elements

I
index_hint [Seqdb_containers.HINDEX]
Get the most likely index position (in cell numbers) of the key
info [Seqdb_archive]
Return toc information about the entry
init [Seqdb_fsys_ao]
Initialize Seqdb_fsys_ht in a special way so the ao variant is known there
input_string [Seqdb_rdwr]
input_string rw n: read exactly n bytes from rw
int16_repr [Seqdb_containers.Sb_consts]
The length of keys/values is stored in 2 bytes.
int32_repr [Seqdb_containers.Sb_consts]
The length of keys/values is stored in 4 bytes.
int64_of_pointer [Seqdb_containers.KVSEQ]
int64_repr [Seqdb_containers.Sb_consts]
The length of keys/values is stored in 8 bytes.
int8_repr [Seqdb_containers.Sb_consts]
The length of keys/values is stored in 1 byte.
isz_name [Seqdb_containers.Sb_consts]
ISZ is the default size for new inodes (existing inodes are allowed to have a different size).
iter [Seqdb_log.Make]
itotsz_name [Seqdb_containers.Sb_consts]
ITOTSZ is the total size of all active (non-deleted) inodes in bytes This variable occurs in the data file of file systems.

K
keep_page_cache_clean [Seqdb_archive]
Remove all cached pages for t from the page cache.
keyrepr [Seqdb_containers.KVSEQ]
keyrepr_name [Seqdb_containers.Sb_consts]
KEYREPR says how the keys in a Kvseq file are represented.
kvdelfl_name [Seqdb_containers.Sb_consts]
KVDELFL says whether there is a delete flag in every entry of a Kvseq file.
kvseq_format [Seqdb_containers.Sb_consts]

L
lastmt_name [Seqdb_containers.Sb_consts]
LASTMT is the mtime timestamp of the last appended file
lim8_repr_max [Seqdb_containers.Sb_consts]
If KEYREPR/VALREPR is a value n between lim8_repr_min and lim8_repr_max, a fixed space of n - lim8_repr_min + 1 is reserved for the key/value string, and the string can have a variable size from 0 to n - lim8_repr_min + 1.
lim8_repr_min [Seqdb_containers.Sb_consts]
lock_base [Seqdb_fsys_ht]
Obtains a shared global lock.
lookup [Seqdb_containers.POINTABLE]
Get an entry by looking up a pointer, or raise Not_found
lookup [Seqdb_containers.PERM]
Get an entry by looking up an index, 0 <= index < size
lookup [Seqdb_containers.HINDEX]
Get an entry by looking up a key, or raise Not_found
lookup [Seqdb_containers.KVSEQ]
Get an entry by looking up a pointer

M
mark_superblock_as_dirty [Seqdb_containers.PERM]
The superblock is marked as dirty, and will be written out at the next good opportunity
mark_superblock_as_dirty [Seqdb_containers.HINDEX]
The superblock is marked as dirty, and will be written out at the next good opportunity
mark_superblock_as_dirty [Seqdb_containers.KVSEQ]
The superblock is marked as dirty, and will be written out at the next good opportunity
md5_algo [Seqdb_containers.Sb_consts]
Based on MD5

N
names [Seqdb_fsys_ht]
Looks into the base directory and returns the names of all filesystems (i.e.
new_base [Seqdb_fsys_ht]
Creates a base.
next_entry [Seqdb_containers.HINDEX]
Returns the next entry of a given entry, or raises End_of_file
next_entry [Seqdb_containers.KVSEQ]
Returns the next entry of a given entry, or raises End_of_file
num_active_entries [Seqdb_containers.HINDEX]
Get statistics.
num_active_entries [Seqdb_containers.KVSEQ]
Get statistics.
num_entries [Seqdb_log.Make]
num_entries [Seqdb_containers.HINDEX]
num_entries [Seqdb_containers.KVSEQ]

O
open_log [Seqdb_log.Make]
openfile [Seqdb_archive]
Open the file.
openfile_filesys [Seqdb_archive]
Open the file.
openstring [Seqdb_archive]
Open the archive given as string (always `Rdonly)
other_hash [Seqdb_containers.Hash_algo]
Another hash value computed from the key
output_string [Seqdb_rdwr]
output_string rw s: write s to rw

P
perm_format [Seqdb_containers.Sb_consts]
permsize_name [Seqdb_containers.Sb_consts]
PERMSIZE is the size of the Perm array in number of elements
pointer_hint [Seqdb_containers.HINDEX]
Get the most likely position of the key in the container.
pointer_length [Seqdb_containers.POINTABLE]
Convert pointer to/from strings.
pointer_length [Seqdb_containers.KVSEQ]
Convert pointer to/from string, and int64.
pointer_of_string [Seqdb_containers.POINTABLE]
pointer_of_string [Seqdb_containers.KVSEQ]
purpose_name [Seqdb_containers.Sb_consts]
PURPOSE is a string of 8 bytes that gives a hint for what the file is used.

R
read [Seqdb_archive]
Read the contents of the entry.
read_superblock [Seqdb_containers.Superblock]
Reads the superblock from the file.
read_superblock_from_rw [Seqdb_containers.Superblock]
Reads the superblock from the reader/writer.
recover_entry [Seqdb_containers.KVSEQ]
This is a recovery function for reading damaged files.
reindex [Seqdb_fsys_ht]
Create a new .idx file with the given params.
rename [Seqdb_containers.KVSEQ]
Rename the entry.
replace [Seqdb_containers.HINDEX]
Replace the value stored inside an entry with a new version.
replace [Seqdb_containers.KVSEQ]
Replace the value stored inside an entry with a new version.
rollback_flag [Seqdb_containers.KVSEQ]
After opening the kvseq with access, this flag is true if a rollback to the last synchronized file size is to be done.

S
sbsize [Seqdb_containers.Superblock]
Return the superblock size
sbsize_name [Seqdb_containers.Sb_consts]
SBSIZE is the size of the superblock in bytes
set_variable [Seqdb_containers.Superblock]
Set a superblock variable.
size [Seqdb_containers.PERM]
The size of the permutation array in number of entries
string_of_pointer [Seqdb_containers.POINTABLE]
string_of_pointer [Seqdb_containers.KVSEQ]
string_of_t [Seqdb_log.Serializer]
suggested_hash_algo [Seqdb_containers.HASHABLE]
Get the suggested hash algorithm, if any
suggested_hash_algo [Seqdb_containers.KVSEQ]
Query features of the file
superblock [Seqdb_containers.PERM]
Get the superblock
superblock [Seqdb_containers.HINDEX]
Get the superblock
superblock [Seqdb_containers.KVSEQ]
Get the superblock.
supports_deletions [Seqdb_containers.KVSEQ]
sync [Seqdb_containers.PERM]
Ensure that everything is physically written to disk (implies flush)
sync [Seqdb_containers.HINDEX]
Ensure that everything is physically written to disk (implies flush)
sync [Seqdb_containers.KVSEQ]
Ensure that everything is physically written to disk (implies flush).
syncsize_name [Seqdb_containers.Sb_consts]
SYNCSIZE is the logical length of the file at the time of the last checkpoint.
synctime_name [Seqdb_containers.Sb_consts]
SYNCTIME is the timestamp (as seconds since the epoch) of the last checkpoint.

T
t_of_string [Seqdb_log.Serializer]
timemark_name [Seqdb_containers.Sb_consts]
TIMEMARK is the value of the last written time mark.
timemn_name [Seqdb_containers.Sb_consts]
TIMEMN is the number of appended files since the last time mark was written.
timemp_name [Seqdb_containers.Sb_consts]
TIMEMP says after how many seconds a new time mark is written.
true_bool [Seqdb_containers.Sb_consts]

U
upgrade [Seqdb_containers.Hpointer]

V
validate_pointer [Seqdb_containers.POINTABLE]
Checks whether the pointer is in the valid range.
validate_pointer [Seqdb_containers.KVSEQ]
See POINTABLE
valrepr [Seqdb_containers.KVSEQ]
valrepr_name [Seqdb_containers.Sb_consts]
VALREPR says how the values in a Kvseq file are represented.
variable [Seqdb_containers.Superblock]
Get a superblock variable (or Not_found)
variables [Seqdb_containers.Superblock]
Get all superblock variables

W
willneed_all_filesys [Seqdb_fsys_ht]
Load as much as reasonable into the page cache
willneed_filesys [Seqdb_fsys_ht]
Load as much as reasonable into the page cache
winkme [Seqdb_containers.Sb_consts]
This is the "#!WINKME" magic at the beginning of the superblock
write_superblock [Seqdb_containers.Superblock]
Writes the superblock to the file.
write_superblock_to_rw [Seqdb_containers.Superblock]
Writes the superblock to the reader/writer.