Commit Graph

47113 Commits

Author SHA1 Message Date
Sage Weil
bc0f2e66a6 os/bluestore/bluestore_types: localize types
Prefix with bluestore_

Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:59 -05:00
Sage Weil
648f13284e os/bluestore: add extent_ref_map_t
This will be used to refcount extents for some subset
of the store (objects with same name or hash value?).

Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:59 -05:00
Sage Weil
7664ffa629 os/bluestore/FreelistManager: drop unused db ref
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:59 -05:00
Sage Weil
423f797d31 os/bluestore: record kv backend
Record kv backend at mkfs time instead of relying on current value
of config option.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:59 -05:00
Sage Weil
a17fe3e5e3 os/bluestore: statfs
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:59 -05:00
Sage Weil
5fb09a9ac9 os/bluestore/BlockDevice: inject block failures
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:59 -05:00
Sage Weil
c96e025a0e ceph_test_objectstore: clean up synthetic collections
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:58 -05:00
Sage Weil
485557af2d os/bluestore: block.db support
Support a mid- to fast device that will preferentially
store the rocksdb data (and wal, if block.wal is not
present).

Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:58 -05:00
Sage Weil
809435575d os/bluestore: less debug noise
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:58 -05:00
Sage Weil
f80b3359b0 os/bluestore/BlueFS: all overwrites on open_for_write
rocksdb will occasionally overwrite an existing file
if it is not present/valid in the manifest.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:58 -05:00
Sage Weil
de300b1c81 os/bluestore/BlueStore: drop internal EnvMirror
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:58 -05:00
Sage Weil
07a47a3ba5 rocksdb: pull up to master, include EnvMirror
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:58 -05:00
Sage Weil
31307a5ab8 os/bluestore: label all block devices
Label all of our block devices with a simple label
that includes the osd_uuid.  Wire this into the
ObjectStore and OSD probe mechanism.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:57 -05:00
Sage Weil
9565f0d834 os/bluestore/BlueFS: flush log if needed
If a file has dirty metadata (but no dirty data), we
still need to flush the log when it is flushed.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:57 -05:00
Sage Weil
2e1edef3ff os/bluestore/BlueFS: fix replay of unlink
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:57 -05:00
Sage Weil
3745afb4c8 os/bluestore: support second block.wal device
Use this device for the bluefs log.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:57 -05:00
Sage Weil
02605a6612 os/bluestore/BlueStore: fix zero gap bug
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:57 -05:00
Sage Weil
9f114ac24b os/bluestore: disable overlay for now
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:57 -05:00
Sage Weil
b48798787d os/bluestore/BlockDevice: restructure interface
use atomics, do not track in-flight extents or magically cope
with racing ios (that is the users responsibility).

Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:57 -05:00
Sage Weil
1727cebdae os/bluestore/BlueFS: fix overwrite
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:56 -05:00
Sage Weil
13655fbb4a os/bluestore/BlueFS: fix writes spanning extents
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:56 -05:00
Sage Weil
ccce793f60 os/bluestore: reenable rocksdb recycling
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:56 -05:00
Sage Weil
ef06380b9a os/bluestore/BlockDevice: lock device while open
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:56 -05:00
Sage Weil
e3fd2795d0 os/bluestore/BlockDevice: debug read result
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:56 -05:00
Sage Weil
f6f4ed3dfc os/bluestore/BlockDevice: fix alignment check
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:56 -05:00
Sage Weil
db754e7df3 os/bluestore/BlockDevice: check aio return values
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:56 -05:00
Sage Weil
e7cce09c4d os/bluestore/BlueFS: avoid lock during reads
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:55 -05:00
Sage Weil
05be4c6c11 os/bluestore/BlueFS: prevent read+write sharing
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:55 -05:00
Sage Weil
9785bc9866 vstart.sh: debug bluefs and rocksdb
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:55 -05:00
Sage Weil
73adec4c98 os/bluestore/BlueFS: periodically compact log
Rewrite only the current metadata in a fresh log
periodically to free log space.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:55 -05:00
Sage Weil
dd901498c9 os/bluestore/BlueFS: simplify extent list
Merge contiguous extents.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:55 -05:00
Sage Weil
b073028528 os/bluestore/BlueFS: fix read
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:55 -05:00
Sage Weil
ac05b4c1c5 ceph_test_objectstore: trivial init fix
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:55 -05:00
Sage Weil
9341eec54d kv/RocksDBStore: rocksdb_separate_wal_dir option
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:54 -05:00
Sage Weil
3649a80a89 os/bluestore/BlueFS: ref count BlueFS::File *
There are FileWriters that exist when the file is
deleted.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:54 -05:00
Sage Weil
98485dee05 os/bluestore/BlueFS: readdir list dirs, too
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:54 -05:00
Sage Weil
b8630ee48c ceph-bluefs-tool: simple tool to export bluefs content
Currently we just do a dump.  We'll add more
functionality later.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:54 -05:00
Sage Weil
2d0537853a os/bluestore/BlueFS: many fixes
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:54 -05:00
Sage Weil
e4f6148c9f os/bluestore/BlueStore: share space with BlueFS
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:54 -05:00
Sage Weil
653882c446 os/bluestore/BlockDevice: move to simple mutex model
Just for now, while we get the rest of this working.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:53 -05:00
Sage Weil
dd04391706 os/bluestore/BlueFS: simple file system to back rocksdb
BlueFS is a simple file system that will back rocksdb.
BlueRocksEnv is the rocksdb::Env implementation that
glues them together.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:53 -05:00
Sage Weil
6f5ac50171 ceph_test_objectstore: less verbose
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:53 -05:00
Sage Weil
226b3476a3 ceph_test_objectstore: less verbose on hash collision test
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:53 -05:00
Sage Weil
1b8d5b6068 os/bluestore/BlueStore: fix _do_read
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:53 -05:00
Sage Weil
1ffd5e6963 os/bluestore/StupidAllocator: fix locking
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:53 -05:00
Sage Weil
14460484ff os/bluestore/StupidAllocator: fix misc bugs
Can't use invalid iterator; fix init_rm_free.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:52 -05:00
Sage Weil
08a94d95e1 os/bluestore/Allocator: init_rm_free
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:52 -05:00
Sage Weil
65f720ae9d kv/RocksDBStore: take custom Env
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:52 -05:00
Sage Weil
a869f92fac os/bluestore: fix _do_read return value
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:52 -05:00
Sage Weil
d704628cab os/bluestore/BlockDevice: fix read return value
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:06:52 -05:00