]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Kefu Chai [Fri, 22 Mar 2019 11:32:32 +0000 (19:32 +0800)]
mon/MonClient: respect priority in SRV
before this change, we always choose the monitors with the lowest
priority and ignore the ones with higher priorty. but per
https://www.ietf.org/rfc/rfc2782.txt
> A client MUST attempt to contact the target host with the
> lowest-numbered priority it can reach
so, if a monitor is not reachable, we should try the ones with the
lowest ones *reachable*.
after this change, MonClient will memorize the monitors have been
contacted. and will continue hunting the ones not tried if the last
batch fail.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Jason Dillaman [Fri, 22 Mar 2019 12:21:50 +0000 (08:21 -0400)]
Merge pull request #25545 from zhouyuan/wip-ceph-immutable-obj-cache-daemon
tools: adding ceph level immutable obj cache daemon
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: Mykola Golub <mgolub@suse.com>
Jason Dillaman [Fri, 22 Mar 2019 12:19:27 +0000 (08:19 -0400)]
Merge pull request #26675 from trociny/wip-rbd-io-simple-scheduler
librbd: simple scheduler plugin for object dispatcher layer
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Lenz Grimmer [Fri, 22 Mar 2019 10:30:03 +0000 (11:30 +0100)]
Merge pull request #27098 from ming416/master
mgr/dashboard: auth ttl expired error
Reviewed-by: Ricardo Dias <rdias@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
Sage Weil [Fri, 22 Mar 2019 10:07:37 +0000 (05:07 -0500)]
Merge PR #27070 into master
* refs/pull/27070/head:
osd/OSDMap: add 'zone' to default crush map
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
Sage Weil [Fri, 22 Mar 2019 09:52:25 +0000 (04:52 -0500)]
Merge PR #27020 into master
* refs/pull/27020/head:
common/blkdev: handle devices with ID_MODEL as "LVM PV ..." but valid ID_MODEL_ENC
Reviewed-by: Kefu Chai <kchai@redhat.com>
Sage Weil [Fri, 22 Mar 2019 09:42:29 +0000 (04:42 -0500)]
Merge PR #27021 into master
* refs/pull/27021/head:
msg: remove XioMessenger
qa/suites/rados/thrash-old-clients: add nautilus
qa/suites/rados/thrash-old-clients: add mimic v1 variant
qa/suites/rados/thrash-old-clients: add mimic
qa/suites/rados/thrash-old-clients: collapse msgr and client choice
qa: remove simplemessenger tests
ceph_test_msgr: remove simple
msg: remove SimpleMessenger
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Reviewed-by: Matt Benjamin <mbenjami@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Sage Weil [Fri, 22 Mar 2019 09:29:03 +0000 (04:29 -0500)]
Merge PR #27101 into master
* refs/pull/27101/head:
mon/MgrStatMonitor: ensure only one copy of initial service map
Reviewed-by: Neha Ojha <nojha@redhat.com>
ming416 [Fri, 22 Mar 2019 08:56:10 +0000 (16:56 +0800)]
mgr/dashboard: auth ttl expired error
Fixes: https://tracker.ceph.com/issues/38428
Signed-off-by: ming416 <geenature@163.com>
Kefu Chai [Fri, 22 Mar 2019 07:43:04 +0000 (15:43 +0800)]
Merge pull request #26940 from xiexingguo/wip-monc-add-con
mon/MonClient: weight-based mon selection
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 22 Mar 2019 07:42:13 +0000 (15:42 +0800)]
Merge pull request #26955 from liewegas/wip-slow-add
crush: various fixes for weight-sets, the osd_crush_update_weight_set option, and tests
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Kefu Chai [Fri, 22 Mar 2019 07:39:11 +0000 (15:39 +0800)]
Merge pull request #26950 from xiexingguo/wip-mgr-fixes
mgr/Mgr: kill redundant sub_unwant call
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 22 Mar 2019 07:36:30 +0000 (15:36 +0800)]
Merge pull request #27068 from hjwsm1989/upmap-filter-out-underfull-buckets
crush: add root_bucket to identify underfull buckets
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Kefu Chai [Fri, 22 Mar 2019 07:31:53 +0000 (15:31 +0800)]
Merge pull request #27067 from SUSE/wip-fix-38788
cmake: remove cython 0.29's subinterpreter check during install
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 22 Mar 2019 07:31:07 +0000 (15:31 +0800)]
Merge pull request #26923 from majianpeng/msg-optimize-check-loopback-con
msg/async/AsyncConnection: optimize check loopback connection.
Reviewed-by: Ricardo Dias <rdias@suse.com>
Kefu Chai [Fri, 22 Mar 2019 07:28:49 +0000 (15:28 +0800)]
Merge pull request #27076 from MariusSchiffer/ceph-mgr-python3-fix
mgr/balancer: Python 3 compatibility fix
Reviewed-by: Kai Wagner <kwagner@suse.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 22 Mar 2019 05:40:15 +0000 (13:40 +0800)]
Merge pull request #27106 from dalgaaf/dalgaaf-wip-fix-lrc-doc
doc: fix LRC documentation
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 22 Mar 2019 05:37:01 +0000 (13:37 +0800)]
Merge pull request #27071 from tchaikov/wip-crimson-osd-peering
crimson/osd: add minimal state machine for PG peering
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
Kefu Chai [Mon, 25 Feb 2019 16:26:36 +0000 (00:26 +0800)]
crimson/osd: add minimal PG recovery FSM
after this change, PG is able to go clean as primary
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 8 Mar 2019 13:01:07 +0000 (21:01 +0800)]
crimson/osd: advance pg in consume_map()
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 8 Mar 2019 03:45:20 +0000 (11:45 +0800)]
crimson/osd/pg: update info.stats
PG.info.stats is sent to mgr periodically for PG stats reporting,
also, it is sent to peer OSD in MOSDPGLog message when PG performs
peering. we need to keep it updated.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Mon, 4 Mar 2019 02:58:12 +0000 (10:58 +0800)]
crimson/osd: add more peering facilities
* add PG::should_restart_peering() for telling if we should start
a peering at seeing a new mapping
* add PG::start_peering_interval() for starting a peering
* add PG::activate() for activating a PG
* add PG::on_activated() to be called once a PG is activated
* add PG::send_to_osd() for sending message to given OSD
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Tue, 12 Mar 2019 12:26:25 +0000 (20:26 +0800)]
crimson/osd: add operator<< for PG
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Tue, 5 Mar 2019 12:55:45 +0000 (20:55 +0800)]
crimson/osd/pg: add peer_activated
add facilities for updating peer_activated. it is used for tracking the
peers has activated and committed. once all of them ack the activation
proposed by primary, the PG is considered activated.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Mon, 4 Mar 2019 02:47:21 +0000 (10:47 +0800)]
crimson/osd: add facilities for sending notify
we need to notify the primary osd that a PG hosted by it has changed,
and it needs to start peering for it.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sun, 3 Mar 2019 16:13:09 +0000 (00:13 +0800)]
crimson/osd: maintain PG::want_acting
* add PG::choose_acting()
* add PG::proc_replica_info()
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sat, 2 Mar 2019 05:18:28 +0000 (13:18 +0800)]
crimson/osd: add PG::is_{acting,up}()
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Thu, 28 Feb 2019 10:13:12 +0000 (18:13 +0800)]
crimson/osd: wait osdmap before processing peering evt
the constraint that
> peering messages/events from peers must remain ordered by peer
is still enforced. because, the peering message from a certain peer
will block the succeeding messages from this peer, if the latest osdmap
possessed by OSD is not new enough.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Wed, 27 Feb 2019 14:59:09 +0000 (22:59 +0800)]
crimson/osd: add OSD::_send_active()
so PG can request monitor to update the OSD's up_thru in osdmap
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 15 Mar 2019 09:00:38 +0000 (17:00 +0800)]
crimson/osd: handle MOSDPGLog in OSD
will handle it in PG in follow-up changes.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Tue, 12 Mar 2019 12:22:57 +0000 (20:22 +0800)]
crimson/osd: handle MOSDPGQuery in OSD
will handle it in PG in follow-up changes.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Tue, 5 Mar 2019 09:32:11 +0000 (17:32 +0800)]
crimson/osd: handle MOSDPGInfo in OSD
will handle it in PG in follow-up changes.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Mon, 25 Feb 2019 13:42:09 +0000 (21:42 +0800)]
crimson/osd: handle MOSDPGNotify in OSD
will handle it in PG in follow-up changes.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sat, 2 Mar 2019 04:55:01 +0000 (12:55 +0800)]
crimson/osd: keep track of last_peering_reset
last_peering_reset is used to track the epoch when the most recent peering
started. it is used to tell if a message is targeting a changed PG. the
sender of a peering message will attach it. and the recipient will check
it against its own last_peering_reset. for instance, if a message claims
that that its map epoch is 16, while our last_peering_reset is 18, we will
consider this message stale, and probably drop it.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Danny Al-Gaaf [Fri, 22 Mar 2019 00:37:56 +0000 (01:37 +0100)]
doc: fix LRC documentation
Recovery from a failure in jerasure need only k reads and
not k+m-1.
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
Sage Weil [Fri, 15 Mar 2019 22:12:34 +0000 (17:12 -0500)]
common/blkdev: handle devices with ID_MODEL as "LVM PV ..." but valid ID_MODEL_ENC
Some devices appear like so:
E: ID_MODEL=LVM PV LUClYG-Oyte-jcM6-npfZ-ncsl-ycL0-bkOH0m on /dev/sdn
E: ID_MODEL_ENC=WDC\x20WDS200T2B0A-00SM50\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20
E: ID_SERIAL=WDC_WDS200T2B0A-00SM50_183503800168
E: ID_SERIAL_SHORT=
183503800168
To avoid upsetting our prioritization, defer to ID_MODEL_ENC over ID_MODEL
if ID_MODEL has "LVM PV" in it (as opposed to just using ID_SERIAL).
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Thu, 21 Mar 2019 17:04:59 +0000 (12:04 -0500)]
Merge PR #27044 into master
* refs/pull/27044/head:
common: add bool log_to_file option
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
Sage Weil [Wed, 20 Mar 2019 09:29:23 +0000 (04:29 -0500)]
osd/OSDMap: add 'zone' to default crush map
This lets use have a root -> region -> zone -> host hierarchy, like you
will see in the public cloud.
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Thu, 21 Mar 2019 16:58:29 +0000 (11:58 -0500)]
mon/MgrStatMonitor: ensure only one copy of initial service map
It's possible for create_pending to be called multiple times.
Fixes: http://tracker.ceph.com/issues/38839
Signed-off-by: Sage Weil <sage@redhat.com>
Sage Weil [Thu, 21 Mar 2019 16:48:29 +0000 (11:48 -0500)]
Merge PR #27048 into master
* refs/pull/27048/head:
doc: add changelog for nautilus
Reviewed-by: Sage Weil <sage@redhat.com>
Mykola Golub [Wed, 27 Feb 2019 15:45:10 +0000 (15:45 +0000)]
test/librbd: sequential write aio test
Signed-off-by: Mykola Golub <mgolub@suse.com>
Yuan Zhou [Thu, 21 Mar 2019 11:08:54 +0000 (19:08 +0800)]
tools: move options parsing into ObjectCacheStore for immutable obj cache daemon
This makes the options parsing more easy to read. SimplePolicy will get those
options from ObjectCacheStore.
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Thu, 21 Mar 2019 09:17:22 +0000 (17:17 +0800)]
building: adding missing ceph-immtable-object-cache-dbg rule
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
shangdehao1 [Thu, 14 Mar 2019 19:23:28 +0000 (03:23 +0800)]
tools: fix SimplyPolicy memory leak
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
shangdehao1 [Thu, 14 Mar 2019 18:05:05 +0000 (02:05 +0800)]
tools: cleanup code style and delete useless data
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
Yuan Zhou [Wed, 13 Mar 2019 03:31:42 +0000 (11:31 +0800)]
tools: new cache sub-dir rule for immutable obj cache daemon
do not use static sub-dirs for cache, instead we create the sub-dir
dynamically with the first two charactor of crc32(file_name)
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
shangdehao1 [Fri, 8 Mar 2019 00:35:02 +0000 (08:35 +0800)]
tools: cleanup RO
- replace useless callback with bind function.
- remove session_id and m_session_map.
- fixed memory leak when session occur error
- change type conversion.
- add prefix
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
shangdehao1 [Thu, 7 Mar 2019 18:35:15 +0000 (02:35 +0800)]
tools: eliminate session_map race between CacheSession
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
shangdehao1 [Thu, 7 Mar 2019 00:31:29 +0000 (08:31 +0800)]
tools: make cache file dir number configurable
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
shangdehao1 [Thu, 7 Mar 2019 00:06:12 +0000 (08:06 +0800)]
tools: make cache watermark configurable
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
shangdehao1 [Wed, 6 Mar 2019 23:11:53 +0000 (07:11 +0800)]
tools: make dedicated thread configurable for RO
At cache client side of RO, make dedicated woker thread configurable
Also, cleanup useless member of CacheClient class
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
shangdehao1 [Wed, 6 Mar 2019 22:24:16 +0000 (06:24 +0800)]
tools: adjust code style of RO
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
Yuan Zhou [Thu, 28 Feb 2019 08:51:41 +0000 (16:51 +0800)]
tools: clean up data structure of immutable obj cache daemon
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
shangdehao1 [Tue, 26 Feb 2019 17:18:37 +0000 (01:18 +0800)]
tools: refactor ObjectCacheRequest of RO
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
Yuan Zhou [Mon, 25 Feb 2019 03:31:46 +0000 (11:31 +0800)]
tools: return real cache status on lookup in immutable obj cache
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Fri, 22 Feb 2019 04:06:46 +0000 (12:06 +0800)]
tools: fix librados compatibility
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Fri, 22 Feb 2019 03:52:04 +0000 (11:52 +0800)]
tools: clean up cache dir for immutable obj cache
- user defined full path for cache dir
- hash objects into subfolders with crc32 of its name
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Fri, 22 Feb 2019 02:44:04 +0000 (10:44 +0800)]
tools: maintain cache size counter for immutable obj cache daemon
Do not assume 4M object size since we allow to cache any-sized objects.
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
shangdehao1 [Sun, 17 Feb 2019 20:30:28 +0000 (04:30 +0800)]
tools: templatize create_rados_callback
Also cleanup unused template codes
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
Yuan Zhou [Wed, 13 Feb 2019 14:24:58 +0000 (22:24 +0800)]
tools: use specific message for different ops in immutable obj cache daemon
use different types of message for different ops to be more efficient
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Mon, 11 Feb 2019 12:30:37 +0000 (20:30 +0800)]
tools: cleanup IPC message for immutable obj cache daemon
using ceph serialization(encode/decode) framework instead of building
new data structure
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Thu, 31 Jan 2019 14:49:32 +0000 (22:49 +0800)]
tools: set namespace & snap_id before promote from RADOS in immutable obj cache
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Thu, 31 Jan 2019 06:39:44 +0000 (14:39 +0800)]
tools: format code and clean up
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Thu, 31 Jan 2019 06:24:05 +0000 (14:24 +0800)]
tools: adding signal handling for immutable obj cache daemon
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Wed, 30 Jan 2019 14:12:01 +0000 (22:12 +0800)]
tests: reduce testing resources occupied for immutable obj cache
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
shangdehao1 [Sat, 26 Jan 2019 20:53:15 +0000 (04:53 +0800)]
tools: follow current codes to modify UT
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
shangdehao1 [Thu, 24 Jan 2019 19:35:58 +0000 (03:35 +0800)]
tools: release dedicated thread resource
Addtional, enable all UT
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
shangdehao1 [Thu, 24 Jan 2019 19:31:23 +0000 (03:31 +0800)]
tools: add connect fails to fault
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
Yuan Zhou [Thu, 24 Jan 2019 13:38:59 +0000 (21:38 +0800)]
tools: clean up object cache request struture
adding version and compat_version info for serailization
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Thu, 24 Jan 2019 06:05:44 +0000 (14:05 +0800)]
common/buffer: assign error message to caller on short read in pread_file
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
shangdehao1 [Wed, 23 Jan 2019 20:52:36 +0000 (04:52 +0800)]
tools: add m_cache_path
1) : enable ObjectCacheRequest.m_data.m_cache_path
2) : add generate_cache_file_path to create cache_path
, which will be used by CacheClient.
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
Yuan Zhou [Wed, 23 Jan 2019 16:19:14 +0000 (00:19 +0800)]
tools: clean up dead code in immutable obj cache
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Wed, 23 Jan 2019 15:48:44 +0000 (23:48 +0800)]
tools: kill ObjectCacheFile in immutable obj cache
instead we could use bufferlist::write_file/pread_file to write/read on cache
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Wed, 23 Jan 2019 15:36:57 +0000 (23:36 +0800)]
tools: clean up immutable obj cache
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Wed, 23 Jan 2019 15:15:16 +0000 (23:15 +0800)]
common/options: move immutable obj cache options out of rbd section
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Wed, 23 Jan 2019 15:54:33 +0000 (23:54 +0800)]
common/buffer: return 0 on short read in pread_file
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
shangdehao1 [Tue, 22 Jan 2019 01:39:37 +0000 (09:39 +0800)]
tools: some modification at RO
1) : add new data member to ObjectCacheRequest,
including m_pool_namepace, m_pool_id, m_snap_id,
m_cache_path
2) : add some log at CacheSession
3) : change pool name to pool_nspace + poo_id + snap_id
4) : change cache file name
5) : add generate_cache_file_name method
6) : modify UT interface
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
shangdehao1 [Sun, 20 Jan 2019 18:19:04 +0000 (02:19 +0800)]
tool: break down receive_message implements
Also, enable fault at CacheClient side.
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
Yuan Zhou [Fri, 18 Jan 2019 06:26:25 +0000 (14:26 +0800)]
common/buffer: fix pread_file to generate local bufferlist
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Thu, 17 Jan 2019 16:10:33 +0000 (00:10 +0800)]
tools: clean up types for immutable obj cache daemon
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Thu, 17 Jan 2019 15:37:12 +0000 (23:37 +0800)]
tools: refuse to start if obj cache daemon fail to initialize cache dir
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Thu, 17 Jan 2019 05:47:31 +0000 (13:47 +0800)]
test: enable asio tests for immutable obj cache controller
cleanups for immutable obj cache controller
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Wed, 16 Jan 2019 16:02:48 +0000 (00:02 +0800)]
tools: immutable_object_cache code format cleanup
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Wed, 16 Jan 2019 15:38:26 +0000 (23:38 +0800)]
common/buffer: adding pread_file method
pread_file allows to read length of contents at a given offset
using pread_file instead of read_file to reduce extra reads in ObjectCacheFile
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
shangdehao1 [Sun, 13 Jan 2019 22:46:19 +0000 (06:46 +0800)]
tools: refactor asio domain socket of RO
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Wed, 9 Jan 2019 14:36:27 +0000 (22:36 +0800)]
tools: fix redudent updates on cache metdata
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Sat, 29 Dec 2018 08:50:44 +0000 (16:50 +0800)]
build/ops: adding build spec for immutable object cache daemon
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
shangdehao1 [Sun, 13 Jan 2019 22:34:37 +0000 (06:34 +0800)]
test: add object cache message unite test
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
shangdehao1 [Sun, 13 Jan 2019 22:31:22 +0000 (06:31 +0800)]
tools: add new object cache message
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
shangdehao1 [Tue, 25 Dec 2018 22:53:35 +0000 (06:53 +0800)]
tools: use bufferlist to implement ObjectCacheFile
1) : modify unite testing of object cache file
2) : remove open and create internface
3) : use bufferlist interface to read/write file
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
shangdehao1 [Mon, 24 Dec 2018 04:12:41 +0000 (12:12 +0800)]
test: add ObjectCacheStore unit test
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
shangdehao1 [Mon, 24 Dec 2018 03:36:00 +0000 (11:36 +0800)]
test: add multi-session unit testing
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
shangdehao1 [Mon, 24 Dec 2018 03:01:51 +0000 (11:01 +0800)]
test: move WaitEvent class to test_common.h file
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
Yuan Zhou [Fri, 21 Dec 2018 02:56:19 +0000 (10:56 +0800)]
tools: fix immutable obj cache max size
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Fri, 21 Dec 2018 02:41:32 +0000 (10:41 +0800)]
tools: remove RBD specific logic in immutable obj cache
Make the daemon more generic(pool name + object id) so it
can service both RBD and RGW.
Also supports caching partial object(even empty), the caller
needs to append_zero to read buffer if read on those objects.
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Fri, 21 Dec 2018 01:20:07 +0000 (09:20 +0800)]
tools: remove background eviction
do eviction check in promotion callback simply
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Thu, 20 Dec 2018 13:21:58 +0000 (21:21 +0800)]
tools: format headers for object cache daemon
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Thu, 20 Dec 2018 10:30:19 +0000 (18:30 +0800)]
tools: create local utils for object cache daemon
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Thu, 20 Dec 2018 08:20:37 +0000 (16:20 +0800)]
tools: clean up immutable object cache
- drop "ceph_" prefix
- prefix all options with immutable_object_cache_
- adding configurable immutable_object_cache_max_inflight_ops
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
Yuan Zhou [Thu, 13 Dec 2018 21:36:36 +0000 (05:36 +0800)]
tools: adding ceph level immutable obj cache daemon
The daemon is built for future integration with both RBD and RGW cache.
The key components are:
- domain socket based simple IPC
- simple LRU policy based promotion/demotion for the cache
- simple file based caching store for RADOS objs with sync IO interface
- systemd service/target files for the daemon
Signed-off-by: Dehao Shang <dehao.shang@intel.com>
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>