Ceph : Issueshttps://tracker.ceph.com/https://tracker.ceph.com/favicon.ico2021-11-30T07:18:14ZCeph
Redmine rbd - Bug #53434 (Resolved): DiffIterateTest/0.DiffIterate failed w/ librbd pwl cache.https://tracker.ceph.com/issues/534342021-11-30T07:18:14Zjianpeng majianpeng.ma@intel.com
<p>[ RUN ] DiffIterateTest/0.DiffIterate<br />using new format!<br /> wrote [4104167~28361,7507937~35127,8211521~20835,10648079~7405,16584393~10572,18804007~45552,20390893~84624]<br /> wrote [2113334~66009,6360264~99806,6681612~87217,8221560~10796]<br /> diff was [2113334~66009,6360264~99806,6681612~87217]<br /> ... two - (two*diff) = [8221560~10796]<br />../src/test/librbd/test_librbd.cc:4294: Failure<br />Value of: two.subset_of(diff)<br /> Actual: false<br />Expected: true<br />[ FAILED ] DiffIterateTest/0.DiffIterate, where TypeParam = DiffIterateParams<false> (5318 ms)<br />[----------] 1 test from DiffIterateTest/0 (5318 ms total)</p> Ceph - Bug #24569 (Fix Under Review): Fix outorder between Thread::create and Thread::set_iopriohttps://tracker.ceph.com/issues/245692018-06-19T06:25:06Zjianpeng majianpeng.ma@intel.com
<p>In TheadPool::start_threads:</p>
<blockquote><blockquote>
<p>int r = wt->set_ioprio(ioprio_class, ioprio_priority);<br />if (r < 0)<br />lderr(cct) << " set_ioprio got " << cpp_strerror(r) << dendl;</p>
</blockquote></blockquote>
<blockquote><blockquote>
<p>wt->create(thread_name.c_str());</p>
</blockquote></blockquote>
<p>In fact, it should firstly call create.</p> Ceph - Bug #24567 (Fix Under Review): fix a race between Thread::create and Thread::set_iopriohttps://tracker.ceph.com/issues/245672018-06-19T06:07:39Zjianpeng majianpeng.ma@intel.com
<p>We may do the following process:<br />a)Thread::create/try_create<br />b)Thread::set_ioprio</p>
<p>But the entry of Thread maybe not exec after step a) which cause step b)<br />can't set currently ioprio.<br />To fix potential race, i add mutex which make step b) wait until entry<br />exec.</p> bluestore - Bug #24561 (Resolved): if disableWAL is set, submit_transacton_sync will met error.https://tracker.ceph.com/issues/245612018-06-19T03:03:44Zjianpeng majianpeng.ma@intel.com
<p>If disableWAL is set, it will met those error:</p>
<p>rocksdb: submit_common error: Invalid argument: Sync writes has to enable WAL. code = 4 Rocksdb transaction:</p> bluestore - Bug #24560 (Resolved): BitmapAllocator::_mark_allocated parameter overflow.https://tracker.ceph.com/issues/245602018-06-19T02:20:05Zjianpeng majianpeng.ma@intel.com
<p>In fact, length of 'struct interval_t' and 'struct bluestore_pextent_t'<br />is uint32_t. But len of AllocatorLevel02::_mark_allocated is uint64_t.<br />So it may cause data overflow which cause bug.</p> Ceph - Bug #17760 (Closed): compile errorhttps://tracker.ceph.com/issues/177602016-11-01T07:20:41Zjianpeng majianpeng.ma@intel.com
<p>/mnt/ceph/src/test/erasure-code/TestErasureCodePluginJerasure.cc:25:25: fatal error: gtest/gtest.h: No such file or directory<br />compilation terminated.<br />src/test/erasure-code/CMakeFiles/unittest_erasure_code_plugin_jerasure.dir/build.make:62: recipe for target 'src/test/erasure-code/CMakeFiles/unittest_erasure_code_plugin_jerasure.dir/TestErasureCodePluginJerasure.cc.o' failed</p>
<p>This is because the PR:https://github.com/ceph/ceph/pull/11714</p> Ceph - Bug #14954 (Rejected): BlueStore: met assert when write size==bluestore_overlay_max_lengthhttps://tracker.ceph.com/issues/149542016-03-03T02:15:04Zjianpeng majianpeng.ma@intel.com
<p>Suppose set bluestore_overlay_max_length == bluestore_min_alloc_size && bluestore_overlay_max > 0.<br />write(bluestore_min_alloc_size, offset=0). It will met those errors:<br /> 0> 2016-03-03 18:32:22.089828 7f2719572700 -1 os/bluestore/BlueStore.cc: In function 'int BlueStore::_do_write(BlueStore::TransContext*, BlueStore::CollectionRef&, BlueStore::OnodeRef, uint64_t, uint64_t, ceph::bufferlist&, uint32_t)' thread 7f2719572700 time 2016-03-03 18:32:22.083797<br />os/bluestore/BlueStore.cc: 5601: FAILED assert(0 == "leaked unwritten extent")</p>
<pre><code>ceph version 10.0.3-2621-g045ad3d (045ad3d2a5bf85698d9d28e8e47bfe3ec2a136af)<br /> 1: (ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x80) [0x55a57b3990a0]<br /> 2: (BlueStore::_do_write(BlueStore::TransContext*, boost::intrusive_ptr&lt;BlueStore::Collection&gt;&, boost::intrusive_ptr&lt;BlueStore::Onode&gt;, unsigned long, unsigned long, ceph::buffer::list&, unsigned int)+0x302a) [0x55a57afd7b9a]<br /> 3: (BlueStore::_write(BlueStore::TransContext*, boost::intrusive_ptr&lt;BlueStore::Collection&gt;&, boost::intrusive_ptr&lt;BlueStore::Onode&gt;&, unsigned long, unsigned long, ceph::buffer::list&, unsigned int)+0x2ee) [0x55a57afd873e]<br /> 4: (BlueStore::_txc_add_transaction(BlueStore::TransContext*, ObjectStore::Transaction*)+0xcd4) [0x55a57aff0d94]<br /> 5: (BlueStore::queue_transactions(ObjectStore::Sequencer*, std::vector&lt;ObjectStore::Transaction, std::allocator&lt;ObjectStore::Transaction&gt; >&, std::shared_ptr&lt;TrackedOp&gt;, ThreadPool::TPHandle*)+0x4cb) [0x55a57aff382b]<br /> 6: (ReplicatedPG::queue_transactions(std::vector&lt;ObjectStore::Transaction, std::allocator&lt;ObjectStore::Transaction&gt; >&, std::shared_ptr&lt;OpRequest&gt;)+0x81) [0x55a57ae6eff1]<br /> 7: (void ReplicatedBackend::sub_op_modify_impl&lt;MOSDRepOp, 112&gt;(std::shared_ptr&lt;OpRequest&gt;)+0xc2d) [0x55a57aed585d]<br /> 8: (ReplicatedBackend::sub_op_modify(std::shared_ptr&lt;OpRequest&gt;)+0x44) [0x55a57aebf8b4]<br /> 9: (ReplicatedBackend::handle_message(std::shared_ptr&lt;OpRequest&gt;)+0x2fb) [0x55a57aebfc3b]<br /> 10: (ReplicatedPG::do_request(std::shared_ptr&lt;OpRequest&gt;&, ThreadPool::TPHandle&)+0xbd) [0x55a57ae1326d]<br /> 11: (OSD::dequeue_op(boost::intrusive_ptr&lt;PG&gt;, std::shared_ptr&lt;OpRequest&gt;, ThreadPool::TPHandle&)+0x411) [0x55a57acbb131]<br /> 12: (PGQueueable::RunVis::operator()(std::shared_ptr&lt;OpRequest&gt;&)+0x52) [0x55a57acbb382]<br /> 13: (OSD::ShardedOpWQ::_process(unsigned int, ceph::heartbeat_handle_d*)+0x6e1) [0x55a57acd50c1]<br /> 14: (ShardedThreadPool::shardedthreadpool_worker(unsigned int)+0x734) [0x55a57b3892e4]<br /> 15: (ShardedThreadPool::WorkThreadSharded::entry()+0x10) [0x55a57b38c3f0]<br /> 16: (()+0x760a) [0x7f2737a1360a]<br /> 17: (clone()+0x6d) [0x7f27359bca4d]<br /> NOTE: a copy of the executable, or `objdump -rdS &lt;executable&gt;` is needed to interpret this.</code></pre> Ceph - Bug #14920 (Resolved): If bluestore_sync_submit_transaction == true, make ceph don't work.https://tracker.ceph.com/issues/149202016-02-29T06:21:06Zjianpeng majianpeng.ma@intel.com
<p>If bluestore_sync_submit_transaction = true; it submit transaction in _txc_state_proc.<br />For the extent alloca/release info need update in _kv_sync_thread. But because blustore_sync_submit_transaction == true, it don't submit transaction again.<br />So the extent alloca/release don't store in kv. After reboot, fsck met error.</p> CephFS - Feature #12265 (New): Add Iohint in cephfshttps://tracker.ceph.com/issues/122652015-07-10T05:27:31Zjianpeng majianpeng.ma@intel.com
<p>This is the plan of BP "Add Iohint in Cephfs"(<a class="external" href="http://tracker.ceph.com/projects/ceph/wiki/Add_IOhint_in_CephFS">http://tracker.ceph.com/projects/ceph/wiki/Add_IOhint_in_CephFS</a>).</p>
<p>By the following steps to implement this BP<br />a:add iohint in mds, mostly for mds journal. Like osd journal, most journal data don't read again and will overwrite. So w/ DONTNEED is make sense.<br />b:add iohint mount option. Different sub directory have different purpose. For example, one directory don't need cache data.<br />c:in cephfs client(kernel/client) add iohint. Hope the the posix_fadvise can effect the whole ceph cluster rather than client kernel page cache.<br />d:Maybe add iohint in cephfs repair.(Need review code).</p> Ceph - Bug #9342 (Resolved): Different implementation for PGTransaction::get_bytes_written betwee...https://tracker.ceph.com/issues/93422014-09-04T07:20:02Zjianpeng majianpeng.ma@intel.com
<p>The l_osd_op_w_inb use this value. So the perf-dump display different value when write same object to erasure-pool/replicated-pool.<br />I think the implementation of ECTransaction is right. It should record the size of data which client wrote.</p> Ceph - Bug #5444 (Rejected): ceph df print error messagehttps://tracker.ceph.com/issues/54442013-06-24T19:16:33Zjianpeng majianpeng.ma@intel.com
<p>root@ubuntu:/media# ceph df<br />GLOBAL:<br /> SIZE AVAIL RAW USED %RAW USED <br /> 3903M 2267M 1367M 35.03</p>
<p>POOLS:<br /> NAME ID USED %USED OBJECTS <br /> data 0 309G 8109.86 79144 <br /> metadata 1 36981K 0.93 30 <br /> rbd 2 0 0 0</p>
<p>The total size of cluster if 3903M,about 4G.But the pool of data used about 309G.</p> devops - Bug #5174 (Resolved): df: ‘/media/osd.0/.’: No such file or directoryhttps://tracker.ceph.com/issues/51742013-05-26T19:45:59Zjianpeng majianpeng.ma@intel.com
<p>In my cluster, there are two machine:<br />host1: mon/mds<br />host2: two osd/mon</p>
<p>When i exec" service ceph -a start' on host1, it will print:df: ‘/media/osd.0/.’: No such file or directory.</p>
<p>Only i create a directory /media/osd.0/ on host1.It won't print the messages.</p> devops - Bug #5161 (Resolved): daemons should create /var/run/ceph if it doesn't already existhttps://tracker.ceph.com/issues/51612013-05-23T19:49:54Zjianpeng majianpeng.ma@intel.com
<p>I wanted to add a new mon into a cluster.But when i exce "ceph-mon -i majianpeng --mkfs --monmap map --keyring key", it print the following messages:</p>
<blockquote>
<p>2013-05-24 10:37:26.795665 7f446912e7c0 -1 asok(0x1440000) AdminSocketConfigObs::init: failed: >AdminSocket::bind_and_listen: failed to bind the UNIX domain socket to '/var/run/ceph/ceph-mon.majianpeng.asok': (2) No >such file or directory<br />ceph-mon: created monfs at /var/lib/ceph/mon/mon.majianpeng for mon.majianpeng</p>
</blockquote>
<p>I think the reason is there is not /var/run/ceph.<br />After I created the directory, then exec again.It's ok.</p>
<p>In document on ceph.com,there is no guide to do this.<br />I think we should create /var/run/ceph automaticly if there is no this director.</p> devops - Bug #5150 (Resolved): How many memory need if we compile ceph?https://tracker.ceph.com/issues/51502013-05-22T17:21:37Zjianpeng majianpeng.ma@intel.com
<p>My machine hardware:<br />memory: 2G<br />Intel(R) Core(TM) i3-2120 CPU @ 3.30GHz</p>
<p>But when i compile ceph, it will cause OOM.<br />Why? Can we optimize it?</p> devops - Bug #5130 (Resolved): ceph-deploy osd create ubuntu:sdbhttps://tracker.ceph.com/issues/51302013-05-21T00:03:58Zjianpeng majianpeng.ma@intel.com
<p>root@majianpeng:/tmp/my-cluster# ceph-deploy osd create ubuntu:sdb<br />INFO:ceph-disk:Will colocate journal with data on /dev/sdb<br />Caution! After loading partitions, the CRC doesn't check out!<br />Caution: invalid main GPT header, but valid backup; regenerating main header<br />from backup!</p>
<p>Warning! Main partition table CRC mismatch! Loaded backup partition table<br />instead of main partition table!</p>
<p>Warning! One or more CRCs don't match. You should repair the disk!</p>
<p>Invalid partition data!<br />ceph-disk: Error: Command '['sgdisk', '--new=2:0:1024M', '--change-name=2:ceph journal', '--partition-guid=2:d23bc8e4-4967-4ae0-9966-99851c670580', '--typecode=2:45b0969e-9b03-4f30-b4c6-b4b80ceff106', '--', '/dev/sdb']' returned non-zero exit status 2<br />Traceback (most recent call last):<br /> File "/usr/bin/ceph-deploy", line 22, in <module><br /> main()<br /> File "/usr/lib/pymodules/python2.7/ceph_deploy/cli.py", line 112, in main<br /> return args.func(args)<br /> File "/usr/lib/pymodules/python2.7/ceph_deploy/osd.py", line 293, in osd<br /> prepare(args, cfg, activate_prepared_disk=True)<br /> File "/usr/lib/pymodules/python2.7/ceph_deploy/osd.py", line 177, in prepare<br /> dmcrypt_dir=args.dmcrypt_key_dir,<br /> File "/usr/lib/python2.7/dist-packages/pushy/protocol/proxy.py", line 255, in <lambda><br /> (conn.operator(type_, self, args, kwargs))<br /> File "/usr/lib/python2.7/dist-packages/pushy/protocol/connection.py", line 66, in operator<br /> return self.send_request(type_, (object, args, kwargs))<br /> File "/usr/lib/python2.7/dist-packages/pushy/protocol/baseconnection.py", line 323, in send_request<br /> return self.__handle(m)<br /> File "/usr/lib/python2.7/dist-packages/pushy/protocol/baseconnection.py", line 639, in __handle<br /> raise e<br />pushy.protocol.proxy.ExceptionProxy: Command '['ceph-disk-prepare', '--', '/dev/sdb']' returned non-zero exit status 1</p>