Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
R
rust-rocksdb
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
fangzongwu
rust-rocksdb
Commits
8a694ddd
Commit
8a694ddd
authored
Sep 14, 2016
by
zhangjinpeng1987
Committed by
siddontang
Sep 14, 2016
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
wal recovery mode (#34)
parent
c84cccfe
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
20 additions
and
2 deletions
+20
-2
lib.rs
librocksdb_sys/src/lib.rs
+10
-0
lib.rs
src/lib.rs
+1
-1
main.rs
src/main.rs
+2
-0
rocksdb_options.rs
src/rocksdb_options.rs
+7
-1
No files found.
librocksdb_sys/src/lib.rs
View file @
8a694ddd
...
...
@@ -96,6 +96,15 @@ pub enum DBUniversalCompactionStyle {
rocksdb_total_size_compaction_stop_style
=
1
,
}
#[derive(Copy,
Clone)]
#[repr(C)]
pub
enum
DBRecoveryMode
{
TolerateCorruptedTailRecords
=
0
,
AbsoluteConsistency
=
1
,
PointInTime
=
2
,
SkipAnyCorruptedRecords
=
3
,
}
pub
fn
error_message
(
ptr
:
*
const
i8
)
->
String
{
let
c_str
=
unsafe
{
CStr
::
from_ptr
(
ptr
as
*
const
_
)
};
let
s
=
from_utf8
(
c_str
.to_bytes
())
.unwrap
()
.to_owned
();
...
...
@@ -200,6 +209,7 @@ extern "C" {
pub
fn
rocksdb_options_set_disable_auto_compactions
(
options
:
DBOptions
,
v
:
c_int
);
pub
fn
rocksdb_options_set_report_bg_io_stats
(
options
:
DBOptions
,
v
:
c_int
);
pub
fn
rocksdb_options_set_wal_recovery_mode
(
options
:
DBOptions
,
mode
:
DBRecoveryMode
);
pub
fn
rocksdb_filterpolicy_create_bloom_full
(
bits_per_key
:
c_int
)
->
DBFilterPolicy
;
pub
fn
rocksdb_filterpolicy_create_bloom
(
bits_per_key
:
c_int
)
...
...
src/lib.rs
View file @
8a694ddd
...
...
@@ -24,7 +24,7 @@ pub mod rocksdb_options;
pub
mod
merge_operator
;
pub
mod
comparator
;
pub
use
librocksdb_sys
::{
DBCompactionStyle
,
DBComparator
,
DBCompressionType
,
pub
use
librocksdb_sys
::{
DBCompactionStyle
,
DBComparator
,
DBCompressionType
,
DBRecoveryMode
,
new_bloom_filter
,
self
as
rocksdb_ffi
};
pub
use
rocksdb
::{
DB
,
DBIterator
,
DBVector
,
Kv
,
ReadOptions
,
SeekKey
,
Writable
,
WriteBatch
};
...
...
src/main.rs
View file @
8a694ddd
...
...
@@ -145,6 +145,7 @@ fn main() {
mod
tests
{
use
rocksdb
::{
BlockBasedOptions
,
DB
,
DBCompressionType
,
Options
,
ReadOptions
,
WriteOptions
,
SeekKey
};
use
rocksdb
::
DBCompactionStyle
::
DBUniversal
;
use
rocksdb
::
DBRecoveryMode
;
#[allow(dead_code)]
fn
tuned_for_somebody_elses_disk
(
path
:
&
str
,
...
...
@@ -179,6 +180,7 @@ mod tests {
opts
.set_max_background_flushes
(
4
);
opts
.set_filter_deletes
(
false
);
opts
.set_report_bg_io_stats
(
true
);
opts
.set_wal_recovery_mode
(
DBRecoveryMode
::
PointInTime
);
opts
.compression_per_level
(
&
per_level_compression
);
blockopts
.set_block_size
(
524288
);
blockopts
.set_cache_index_and_filter_blocks
(
true
);
...
...
src/rocksdb_options.rs
View file @
8a694ddd
...
...
@@ -16,7 +16,7 @@ use libc::{c_int, size_t};
use
std
::
ffi
::
CString
;
use
std
::
mem
;
use
rocksdb_ffi
::{
self
,
DBCompressionType
};
use
rocksdb_ffi
::{
self
,
DBCompressionType
,
DBRecoveryMode
};
use
merge_operator
::{
self
,
MergeOperatorCallback
,
full_merge_callback
,
partial_merge_callback
};
use
comparator
::{
self
,
ComparatorCallback
,
compare_callback
};
...
...
@@ -409,6 +409,12 @@ impl Options {
}
}
}
pub
fn
set_wal_recovery_mode
(
&
mut
self
,
mode
:
DBRecoveryMode
)
{
unsafe
{
rocksdb_ffi
::
rocksdb_options_set_wal_recovery_mode
(
self
.inner
,
mode
);
}
}
}
impl
Default
for
WriteOptions
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment