Commit Graph

29171 Commits

Author SHA1 Message Date
John Wilkins
5bc6327666 doc: Merge cleanup.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-10-10 12:21:34 -07:00
John Wilkins
c0c332c120 doc: minor clean up.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-10-10 12:20:37 -07:00
John Wilkins
fa909ad6ed doc: Update from wip-doc-quickstart branch.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-10-10 11:47:56 -07:00
Sandon Van Ness
8e493ef23b Go back to $PWD in fsstress.sh if compiling from source.
Although fsstress was being called with a static path the directory
it was writing to was in the current directory so doing a cd to the
source directory that is made in /tmp and then removing it later
caused it to be unable to write the files in a non-existent dir.

This change gets the current path first and cd's back into it after
it is done compiling fsstress.

Issue #6479.

Signed-off-by: Sandon Van Ness <sandon@inktank.com>
Reviewed-by: Alfredo Deza <alfredo.deza@inktank.com>
2013-10-08 12:05:02 -07:00
Sage Weil
1575895bdc Merge pull request #700 from dachary/master
doc: fix openstack rbd installation command
2013-10-08 07:52:42 -07:00
Loic Dachary
768fb0a2a2 doc: fix openstack rbd installation command
This cannot work because client.volumes.key is not a command

   ssh {your-compute-host} client.volumes.key

replace with a tee to allow for copy/paste as well as using the

   cat client.volumes.key

in the following lines.

Signed-off-by: Loic Dachary <loic@dachary.org>
2013-10-08 12:07:00 +02:00
David Zafman
86b5b42718 Merge pull request #699 from dachary/wip-ghobject-assert
os: stronger assert on FileStore::lfn_open

Reviewed-by: David Zafman <david.zafman@inktank.com>
2013-10-07 17:05:01 -07:00
Loic Dachary
e21e5736b3 os: stronger assert on FileStore::lfn_open
Signed-off-by: Loic Dachary <loic@dachary.org>
2013-10-08 01:15:41 +02:00
Greg Farnum
b9cc91dcef Merge branch 'next' 2013-10-07 14:40:42 -07:00
Gregory Farnum
9f75a42336 Merge pull request #697 from dachary/master
This lets "make check" pass, so I like it.
Reviewed-by: Greg Farnum <greg@inktank.com>
2013-10-07 14:15:19 -07:00
Loic Dachary
0f323bc4d6 common: unintended use of the wrong bloom_filter prototype
For encoding/decoding test purposes. The generate_test_instances should
be improved to cover more encoding/decoding cases.

Signed-off-by: Loic Dachary <loic@dachary.org>
2013-10-07 23:11:20 +02:00
Greg Farnum
4b911cf817 ReplicatedPG: copy: use aggregate return code instead of individual Op return
It appears that the OSD is not filling in the individual return codes, and they
should be equivalent for all purposes we care about here (the only Op we are
doing is the copy-get, and if it fails we are getting its failure code).

Reported-by: Sage Weil <sage@inktank.com>
Signed-off-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
2013-10-07 13:50:30 -07:00
Sage Weil
6da4b91c07 os/FileStore: fix ENOENT error code for getattrs()
In commit dc0dfb9e01 the omap xattrs code
moved up a block and r was no longer local to the block.  Translate
ENOENT -> 0 to compensate.

Fix the same error in _rmattrs().

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
2013-10-07 13:50:08 -07:00
Gregory Farnum
13b80bb446 Merge pull request #610 from ceph/wip-optracker
Reviewed-by: Samuel Just <sam.just@inktank.com>
2013-10-07 08:56:46 -07:00
Sage Weil
f7c5d1ac94 Merge remote-tracking branch 'gh/next' 2013-10-07 04:37:20 -07:00
João Eduardo Luís
02da1a1d79 Merge pull request #695 from ceph/wip-mon-auth
fix mon double-free when dropping unhandled messages, and allow "get monmap" messages to go through without authenticating for MonCliente::get_monmap_privately()

Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
2013-10-07 04:31:36 -07:00
Sage Weil
901427c522 Merge pull request #693 from ceph/wip-bloom
bloom_filter improvements, cleanups

Reviewed-by: Loic Dachary <loic@dachary.org>
2013-10-07 00:28:35 -07:00
Sage Weil
71ee6d7c8d mon: allow MMonGetMap without authentication
This is used by the MonClient::get_monmap_privately() helper.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-10-06 15:17:50 -07:00
Sage Weil
f279641894 mon: do not put() unhandle message
If we return false because we aren't handling a message, we should not put
the ref.  This fixes a double-free.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-10-06 15:17:50 -07:00
Sage Weil
0cae3a13fa common/bloom_filter: add a few assertions and checks for bit_table_ == NULL
Signed-off-by: Sage Weil <sage@inktank.com>
2013-10-06 10:28:20 -07:00
Sage Weil
cf34adb99b common/bloom_filter: simplify compressible_bloom_filter encode/decode/dump
Re-use bloom_filter for this, as per Loic's suggestion.  Much nicer!

Signed-off-by: Sage Weil <sage@inktank.com>
2013-10-06 10:22:41 -07:00
Sage Weil
f45c3b98d3 common/bloom_filter: fix compress; improve argument
Fix bug in compress() when compressing to less than .5 or original.

Make the argument have sane units (target size relative to current size;
not a precentage reduction).

Signed-off-by: Sage Weil <sage@inktank.com>
2013-10-06 10:18:35 -07:00
Sage Weil
055dc4c1f2 common/bloom_filter: fix estimated element count for compressed filters
We need to compensate for the fact that there are fewer bits than there
used to be.

This is a crappy adjustment; it is non-linear.  It's clone enough for now,
though.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-10-06 10:18:30 -07:00
Sage Weil
82f6ec596c doc/release-notes: v0.70
Note that a bunch of stuff we thought would go in 0.70 is actually in 0.69,
so the update/release notes were adjusted accordingly.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-10-05 21:08:55 -07:00
Sage Weil
aaabc65739 common/bloom_filter: methods for density, approx unique element counts
Signed-off-by: Sage Weil <sage@inktank.com>
2013-10-04 22:57:35 -07:00
Sage Weil
04091f87dd common/bloom_filter: remember original target size
This isn't strictly needed for core functionality, but it is convenient to
know.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-10-04 22:57:35 -07:00
Sage Weil
d07f5f3588 common/bloom_filter: drop raw_table_size_ member
We were storing table_size_ and raw_table_size_, where one is the size in
bits and the other is the size in bytes.  This is silly.  Store only the
size in bytes.

Also, bytes are always 8 bits, so use bit shifts and drop some of that
silliness too.

Move the member declarations to the top of the class so you read them
before the methods.

Fix some annoying whitespace.

Avoid allocating a 0-length array.

Mark the encoding incompatible with v1.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-10-04 22:57:18 -07:00
Sage Weil
ea2378e539 common/bloom_filter: make compressible_bloom_filter encodable
Signed-off-by: Sage Weil <sage@inktank.com>
2013-10-04 22:56:18 -07:00
Sage Weil
92a60a0584 mon/PGMap: make generated test instances obey new invariant
As of 091809b814 we keep an osd_map epoch
for any osd_stat update, and assert as much.

Signed-off-by: Sage Weil <sage@inktank.com>
2013-10-04 22:06:04 -07:00
Gary Lowell
7efbebe20f Merge branch 'next' 2013-10-05 02:11:36 +00:00
Sage Weil
e927941fca doc/release-notes: v0.67.4
Signed-off-by: Sage Weil <sage@inktank.com>
2013-10-04 16:49:41 -07:00
Greg Farnum
3fc6cfbb23 Makefile: add include/histogram.h to noinst_HEADERS
Signed-off-by: Greg Farnum <greg@inktank.com>
2013-10-04 16:45:38 -07:00
Gregory Farnum
c95d0a164f Merge pull request #676 from ceph/wip-start-copy
Reviewed-by: Samuel Just <sam.just@inktank.com>
2013-10-04 15:58:50 -07:00
David Zafman
5258c9c4e5 Merge pull request #667 from ceph/wip-6143
Reviewed-by: Sage Weil <sage@inktank.com>
2013-10-04 14:59:11 -07:00
David Zafman
bb9b9c8953 common, os: Perform xattr handling based on detected fs type
In FileStore::_detect_fs() store discovered filesystem type in m_fs_type
Add per-filesystem filestore_max_inline_xattr_size_* variants
Add per-filesystem filestore_max_inline_xattrs_* variants
New function set_xattr_limits_via_conf()
  Set m_filestore_max_inline_xattr_size based on override or fs type
  Set m_filestore_max_inline_xattrs based on override or fs type
Handle conf change of any relevant value by calling set_xattr_limits_via_conf()
Change filestore_max_inline_xattr_size to override if non-zero
Change filestore_max_inline_xattrs to override if non-zero

Fixes: #6143

Signed-off-by: David Zafman <david.zafman@inktank.com>
2013-10-04 14:10:01 -07:00
athanatos
ce2d9ae617 Merge pull request #692 from ceph/wip-5992-2
Wip 5992 2

Reviewed-by: Sage Weil <sage@inktank.com>
2013-10-04 14:04:41 -07:00
Samuel Just
b87bc2311a ReplicatedPG: lock snapdir obc during write
Otherwise, we won't block properly in prep_push_backfill_object.

Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-10-04 13:50:09 -07:00
Samuel Just
0c2769d332 PGLog: on split, leave log head alone
This way last_update doesn't go backwards.

Fixes: 6447
Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-10-04 13:50:09 -07:00
Samuel Just
391a885f70 FileStore: make _setattrs not return -ENOENT most of the time
Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-10-04 13:50:09 -07:00
Samuel Just
0c1e251351 ReplicatedPG: add debugging in recover_replicas for objects added for backfill
Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-10-04 13:50:09 -07:00
Samuel Just
2ae9ece1a8 ReplicatedPG,PG: use PGBackend methods for getattr
Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-10-04 13:50:09 -07:00
Samuel Just
8a919fb41d ReplicatedPG,PG: adapt collection_list* users to PGBackend interface
Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-10-04 13:50:09 -07:00
Samuel Just
ff17e45fe2 PG,ReplicatedPG: expose PGBackend to PG
Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-10-04 13:50:09 -07:00
Samuel Just
9a10a801f0 PG.cc: remove leading empty space
Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-10-04 13:50:09 -07:00
Samuel Just
4df481c2da PGBackend,ReplicatedBackend: add interfaces for scanning the pg
This will be important since the erasure coded pg will have a different
on-disk format than the replicated backend.

Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-10-04 13:50:06 -07:00
Samuel Just
664b589b05 ReplicatedPG: don't rescan the local collection if we can avoid it
Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-10-04 13:49:55 -07:00
Samuel Just
e73ec48371 common/hobject: add is_degenerate method
Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-10-04 13:49:55 -07:00
Samuel Just
c8a4411db1 PGMap: calc_min_last_epoch_clean() will now also use osd_epochs
We don't want to trim past the current osd map for any up osd.
osd_epochs provides a lower bound for that epoch for each osd.

Fixes: 5869
Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-10-04 13:49:55 -07:00
Samuel Just
091809b814 PGMap,PGMonitor: maintain mapping of osd to recent stat epoch
Also, osd_stat will be empty for out osd.

When an osd is marked out, rather than remove it from osd_stat,
we instead 0 out the structure.

This patch also makes osd_stat_updates and osd_stat_rm private.
This should make it simpler to enforce invariants on these
mappings.

Each up osd will have a mapping since out osds are now included as
empty stats.

Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-10-04 13:49:11 -07:00
Gary Lowell
e3bb0656d9 v0.70 2013-10-04 20:12:24 +00:00