Sage, Is it possible that we can't reuse the op_t because it could be still there in the messenger queue before calling parent->log_operation() ? Thanks & Regards Somnath -----Original Message----- From: ceph-devel-owner@xxxxxxxxxxxxxxx [mailto:ceph-devel-owner@xxxxxxxxxxxxxxx] On Behalf Of Sage Weil Sent: Sunday, November 01, 2015 6:47 AM To: 池信泽 Cc: Ning Yao; ceph-devel@xxxxxxxxxxxxxxx Subject: Re: why we use two ObjectStore::Transaction in ReplicatedBackend::submit_transaction? On Sun, 1 Nov 2015, Sage Weil wrote: > On Sun, 1 Nov 2015, ??? wrote: > > Yes, I think so. > > keeping them separate and pass them to > > ObjectStore::queue_transactions() would increase the time on > > transaction encode process and exhaust more cpu. > > > > The transaction::append holds 0.8% cpu on my environment. > > The transaction encoding is also really a bottleneck which process > > holds 1.8% cpu on my environment. > > Where is the append() caller you're looking at? I'm not seeing it. Oh, I see: https://github.com/ceph/ceph/pull/6439 This makes sense to me. sage -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html ?韬{.n?????%??檩??w?{.n????u朕?Ф?塄}?财??j:+v??????2??璀??摺?囤??z夸z罐?+?????w棹f