Commit Graph

36168 Commits

Author SHA1 Message Date
Sage Weil
398c74eacb ceph_test_rados_api_tier: add EvictSnap2 test case
Verify an evict doesn't create a snapdir object.  Reproduces #8629

Signed-off-by: Sage Weil <sage@redhat.com>
2014-09-21 15:54:15 -07:00
Sage Weil
682b9daacb os/FileJournal: do not request sync while shutting down
FileStore calls should_commit_now() to determine whether it should
loop and do a second sync (among other things).  During shutdown, this
can force us into a livelock: the journal is shutting down, but the
sync_entry loop never completes and repeatedly syncs because the
journal is full.  Since the journal is otherwise stopped, no expire
happens and we never become unfull, and we're stuck.

This seems to be triggered semi-reliably by the ceph_objectstore_tool
import function.

Fix by not requesting a sync while shutting down.

Fixes: #9545
Signed-off-by: Sage Weil <sage@redhat.com>
2014-09-21 13:41:01 -07:00
Samuel Just
544b8c7ffb ReplicatedPG::on_removal: clear rollback info
Fixes: #9293
Backport: firefly
Signed-off-by: Samuel Just <sam.just@inktank.com>
2014-09-21 10:19:51 -07:00
Samuel Just
781f05c90e Revert "PG::init: clear rollback info for backfill as well"
Log here is already empty, need to rollback the log when we start
removal in on_removal().

This reverts commit 1e69ff2f3c.
2014-09-21 10:10:02 -07:00
Loic Dachary
86bdd044e4 Merge pull request #2545 from dachary/wip-9547-python-rados-truncate
python radio aio_read must not truncate on \000

Reviewed-by: Loic Dachary <loic-201408@dachary.org>
2014-09-21 09:38:11 +02:00
Yan, Zheng
e8ac9d866e Merge pull request #2546 from ceph/wip-log-msgs
mds: remove spurious logging
2014-09-21 09:26:29 +08:00
John Spray
28b7b93367 mds: remove spurious logging
This is from 4f3b8032d, it should not have been
included.  Harmless but noisy.

Signed-off-by: John Spray <john.spray@redhat.com>
2014-09-21 00:55:06 +01:00
Loic Dachary
226c0c7ac6 test: check python rados aio_read with buffers containing null
http://tracker.ceph.com/issues/9547 Refs: #9547

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-09-20 13:08:52 +02:00
Mohammad Salehe
8bda44ff37 pybind: Fix aio_read handling of string buffer
Read data may contain \0, and buf.value interprerts them as string terminator.

Signed-off-by: Mohammad Salehe <salehe+dev@gmail.com>
2014-09-20 12:43:27 +02:00
Yan, Zheng
2a2711daf8 Merge pull request #2542 from ceph/wip-9539
Filer: add lock to protect struct PurgeRange
2014-09-20 06:25:19 +08:00
Yan, Zheng
9d9c8c73ad Filer: add lock to protect strcut PurgeRange
Fix: #9539
Signed-off-by: Yan, Zheng <zyan@redhat.com>
2014-09-20 06:09:09 +08:00
Sage Weil
859bf308ae Merge pull request #2534 from dachary/wip-9537-erasure-code-assert
erasure-code: fix assert overflow

Reviewed-by: Sage Weil <sage@redhat.com>
2014-09-19 14:40:05 -07:00
Samuel Just
437db44b46 Merge remote-tracking branch 'wonzhq/req-pending' into giant 2014-09-19 13:42:16 -07:00
Samuel Just
184773d67a Merge remote-tracking branch 'somnathr/wip-optracker-optimization' into giant 2014-09-19 13:34:44 -07:00
Danny Al-Gaaf
f3acae418d rgw_main.cc: add missing virtual destructor for RGWRequest
CID 1160858 (#1 of 1): Non-virtual destructor (VIRTUAL_DTOR)
 nonvirtual_dtor: Class RGWLoadGenRequest has a destructor
 and a pointer to it is upcast to class RGWRequest which doesn't
 have a virtual destructor.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
(cherry picked from commit b82ceda777)
2014-09-19 11:35:36 -07:00
Danny Al-Gaaf
eeb74a1c02 os/GenericObjectMap.cc: pass big parameter by reference
CID 1188142 (#1 of 1): Big parameter passed by value (PASS_BY_VALUE)
 pass_by_value: Passing parameter header of type
 GenericObjectMap::_Header (size 176 bytes) by value.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
(cherry picked from commit 13b8c92a29)
2014-09-19 11:35:31 -07:00
Danny Al-Gaaf
1f134bb06f mds/Beacon.*: fix UNINIT_CTOR cases
CID 1238905 (#1 of 1): Uninitialized scalar field (UNINIT_CTOR)
 uninit_member: Non-static class member want_state is not initialized
  in this constructor nor in any functions that it calls.
 uninit_member: Non-static class member last_send is not initialized
  in this constructor nor in any functions that it calls.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
(cherry picked from commit ff6148324a)
2014-09-19 11:35:02 -07:00
Danny Al-Gaaf
f2a7d62c23 ErasureCodeLrc.h: fix UNINIT_CTOR
Fix Coverity issue, preinit with 0:

uninit_member: Non-static class member chunk_count is not initialized
 in this constructor nor in any functions that it calls.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
(cherry picked from commit ea02dc37dc)
2014-09-19 11:34:59 -07:00
Danny Al-Gaaf
1a7482224c ErasureCodeLrc.h: fix data_chunk_count UNINIT_CTOR
CID 1238903 (#1 of 1): Uninitialized scalar field (UNINIT_CTOR)
 uninit_member: Non-static class member data_chunk_count is not
 initialized in this constructor nor in any functions that it calls.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
(cherry picked from commit 2bb35bba99)
2014-09-19 11:34:55 -07:00
Danny Al-Gaaf
0e15df43c3 LogEntry.h: init LogEntry::seq with 0
CID 1238904 (#1 of 1): Uninitialized scalar variable (UNINIT)
 uninit_use_in_call: Using uninitialized value e.seq when calling
 log_to_syslog.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
(cherry picked from commit 2c2b413ee0)
2014-09-19 11:34:50 -07:00
Sage Weil
7f1d9e8ab6 Merge pull request #2539 from ceph/wip-9529
Wip 9529

Reviewed-by: Sage Weil <sage@redhat.com>
2014-09-19 11:13:48 -07:00
Yehuda Sadeh
5bb94ede19 rgw: calculate hash after writing data
Since data is written asynchronously, we should do the hash calculation
while it's pending.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2014-09-19 10:48:53 -07:00
Yehuda Sadeh
7b137246b4 crypto: don't hash zero sized buffer
libnss returns an error and we assert in that case.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2014-09-19 10:48:45 -07:00
Joao Eduardo Luis
76eff95034 include/util.h: prevent multiple inclusion of header
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
2014-09-19 18:33:22 +01:00
Samuel Just
705abd9f3d Merge pull request #2517 from athanatos/wip-9326
DBObjectMap: restructure map_header_in_use locking

Reviewed-by: Sage Weil <sage@redhat.com>
2014-09-19 10:31:13 -07:00
John Spray
6cbf95b61e Merge pull request #2533 from dachary/wip-9538-format-plain
mon: osd find / metadata --format plain fallback

Reviewed-by: John Spray <john.spray@redhat.com>
2014-09-19 16:59:01 +01:00
Loic Dachary
f51e368f98 erasure-code: fix assert overflow
If the file size does not fit in 32 bits the (unsigned) cast will
overflow. Cast to uint64_t which is the type of the value returned by
get_total_chunk_size.

http://tracker.ceph.com/issues/9537 Fixes: #9537

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-09-19 16:16:44 +02:00
Loic Dachary
13780d7551 mon: osd find / metadata --format plain fallback
ceph --format plain osd find 1 (and metadata) are not implemented and
must fallback to the default (json-pretty).

http://tracker.ceph.com/issues/9538 Fixes: #9538

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
2014-09-19 15:31:33 +02:00
Loic Dachary
c8885aecea Merge pull request #2505 from dachary/wip-8914-unlink-fdcache
os: FileStore::lfn_unlink always clears FDCache

Reviewed-by: Sage Weil <sage@redhat.com>
2014-09-19 13:43:09 +02:00
Greg Farnum
3f23709c47 Objecter: disable fast dispatch of CEPH_MSG_OSD_OPREPLY messages
If they fast_dispatch they can deadlock right now. We'll need to change
the semantics around mark_down() or around the Objecter's locking to
fix it.

Sort-of-
Fixes: #9462

Signed-off-by: Greg Farnum <greg@inktank.com>
2014-09-18 21:13:28 -07:00
Greg Farnum
681a75488c Pipe: stop delayed delivery fast_dispatch in stop_and_wait()
If we don't, we can keep fast_dispatching messages after a Pipe has been
mark_down()ed. That breaks things right now.

Fixes: #9295

Signed-off-by: Greg Farnum <greg@inktank.com>
2014-09-18 21:13:28 -07:00
Sage Weil
fb5a244915 osd/Watch: handle con without sessions
Signed-off-by: Sage Weil <sage@redhat.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
2014-09-18 21:13:28 -07:00
Sage Weil
93dccdb3ff osd/ReplicatedPG: handle sessionless op con in do_osd_op_effects
Signed-off-by: Sage Weil <sage@redhat.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
2014-09-18 21:13:27 -07:00
Sage Weil
5d37850cf7 osd: drop dead shutdown message handler
There is no code anywhere in the code base that generates a MSG_SHUTDOWN.
Kill this.  The get_priv() logic here looks pretty dodgey anyway.

Signed-off-by: Sage Weil <sage@redhat.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
2014-09-18 21:13:27 -07:00
Sage Weil
0519225beb Merge pull request #2521 from athanatos/wip-9453
osd_types: fix pg_log_t tail dump

Reviewed-by: Sage Weil <sage@redhat.com>
2014-09-18 12:55:49 -07:00
Sage Weil
b4eb0e8f8b Merge pull request #2519 from athanatos/wip-9482
PG::find_best_info: let history.last_epoch_started provide a lower bound

Reviewed-by: Sage Weil <sage@redhat.com>
2014-09-18 12:55:09 -07:00
Sage Weil
9b8bbc046f Merge pull request #2520 from athanatos/wip-9497
PG::choose_acting: let the pg go down if acting is smaller than min_size

Reviewed-by: Sage Weil <sage@redhat.com>
2014-09-18 11:42:06 -07:00
Sage Weil
e7a099b243 Merge pull request #2518 from athanatos/wip-9481
PGLog::claim_log_and_clear_rollback_info: fix rollback_info_trimmed_to

Reviewed-by: Sage Weil <sage@redhat.com>
2014-09-18 11:02:04 -07:00
Sage Weil
336d905e2c Merge pull request #2522 from athanatos/wip-8315
ReplicatedPG: cancel cb on blacklisted watcher

Reviewed-by: Sage Weil <sage@redhat.com>
2014-09-18 11:00:45 -07:00
John Spray
d6913ae4fc mds: fix not journaling client metadata
Previously the code was there for storing in
the SessionMap table, but not for the ESession
logevent.

Fixes: #9518

Signed-off-by: John Spray <john.spray@redhat.com>
(cherry picked from commit 1395275e0f)
2014-09-18 10:52:20 -07:00
John Spray
cef34f4299 Merge pull request #2498 from ceph/wip-objecter-cancel
osdc/Objecter: cancel timeout before clearing op->session

Reviewed-by: John Spray <john.spray@redhat.com>
2014-09-17 19:07:22 +01:00
Gregory Farnum
f27ccd805e Merge pull request #2513 from ceph/wip-decode-dump
msg: dump messages we can' decode at a low devel level

Reviewed-by: Greg Farnum <greg@inktank.com>
2014-09-17 10:15:03 -07:00
Sage Weil
4089684259 msg: hexdump bad messages at debug level 1 (not 30)
These are rare, and when they do happen, we want to see them in the
logs.

Signed-off-by: Sage Weil <sage@redhat.com>
2014-09-17 09:53:36 -07:00
Sage Weil
54955702fc msg: hexdump messages we can't decode at configurable debug level
We had this hard-coded to 30.  Make it tunable.

Signed-off-by: Sage Weil <sage@redhat.com>
2014-09-17 09:52:54 -07:00
John Spray
d8630cf446 Merge pull request #2512 from dachary/wip-9490-crushtool-num-rep
Revert "crushtool: safeguard for missing --num-rep when --test"

Reviewed-by: John Spray <john.spray@redhat.com>
2014-09-17 13:59:33 +01:00
Loic Dachary
480c3727c9 Revert "crushtool: safeguard for missing --num-rep when --test"
This reverts commit 10b8966c8d.
2014-09-17 14:56:10 +02:00
John Spray
51eeb3340e Merge pull request #2496 from ceph/wip-9189
#9375 and #9189 - add client metadata and improve health messages

Reviewed-by: Greg Farnum greg@inktank.com
2014-09-17 13:47:27 +01:00
John Spray
288f05a58f mds: use new Session::human_name in health msgs
Signed-off-by: John Spray <john.spray@redhat.com>
2014-09-17 13:21:49 +01:00
John Spray
6320e53569 mds: implement const SessionMap::get_session
Signed-off-by: John Spray <john.spray@redhat.com>
2014-09-17 13:21:49 +01:00
John Spray
32b51bb7d5 mds: generate friendly name for client sessions
...from the client metadata, for use in health messages.

Signed-off-by: John Spray <john.spray@redhat.com>
2014-09-17 13:21:49 +01:00