All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sebastien Ponce <sebastien.ponce@cern.ch>
To: Samuel Just <sjust@redhat.com>
Cc: Sage Weil <sweil@redhat.com>,
	"ceph-devel@vger.kernel.org" <ceph-devel@vger.kernel.org>
Subject: Re: libradosstriper
Date: Wed, 29 Jun 2016 17:44:27 +0200	[thread overview]
Message-ID: <1467215067.603.20.camel@cern.ch> (raw)
In-Reply-To: <CAN=+7FWi1pMFa-=fYYiaaNNyaKmm_8E8dbQOOdOwdTz5n8x34A@mail.gmail.com>

Oh I see, I did not know this one indeed.
I used the flag approach for the rados command line and it was really
easy, as the API is identical, you only have to use a Striper object
instead of an IOContext.
Now looking at the RadosModel class, I see that the user API (like
read/write/aio_read,...) is almost not used. Almost everything goes
through the aio_operate calls wich are not present in Striper.
So I believe the simplest would be to add a couple of TestOpType,
namely 5 of them : TEST_OP_READ/WRITE/DELETE/SETXATTR/RMXATTR_STRIPER
and implement the corresponding classes inheriting from TestOp.
This would also have the advantage to mix striped and regular objects
in the test, which is absolutely valid and thus should be tested.

Sebastien


On Wed, 2016-06-29 at 08:30 -0700, Samuel Just wrote:
> Ah, sorry.  See src/test/osd/RadosModel.* and
> src/test/osd/TestRados.cc.  It's gotten to be a somewhat kludgy mess,
> but it's a really valuable stress test for verifying that the osd and
> librados are behaving properly, especially when combined with failure
> injection and osd thrashing.  I'd like to either create a (less
> kludgy, I can only hope) seperate version for librados striper, or
> add
> a flag to the existing one which causes it to use the striper instead
> (and only allows ops where it makes sense).  libradosstriper should
> have the same ordering properties for piplined writes as normal
> librados (right?), so modifying the existing test would probably get
> us the most coverage for the least effort.
> -Sam
> 
> On Wed, Jun 29, 2016 at 8:03 AM, Sebastien Ponce
> <sebastien.ponce@cern.ch> wrote:
> > 
> > Well, I'm not sure what you are exactly looking for : I see now
> > that I
> > look more carefully that there is a file called ceph_test_rados
> > that
> > looks like a wrapper around the ceph_test_rados_* tests.
> > The equivalent does not seem to exist for striper (although the
> > same
> > wrapper would probably work), but the ceph_test_rados_striper_*
> > tests
> > do exist.
> > Should we/I create a wrapper for striper ? I'm not sure I have the
> > whole understanding of the structure of the whole test system...
> > 
> > Sebastien
> > 
> > 
> > On Tue, 2016-06-28 at 09:07 -0700, Samuel Just wrote:
> > > 
> > > I don't remember anything like ceph_test_rados which uses
> > > libradosstriper.  Did I miss it?
> > > -Sam
> > > 
> > > On Mon, Jun 27, 2016 at 8:27 PM, Sebastien Ponce
> > > <sebastien.ponce@cern.ch> wrote:
> > > > 
> > > > 
> > > > Would be great indeed. As it's already there, it can be done
> > > > already
> > > > now.
> > > > 
> > > > Sebastien
> > > > 
> > > > On Mon, 2016-06-27 at 15:25 -0700, Samuel Just wrote:
> > > > > 
> > > > > 
> > > > > The something like ceph_test_rados could then be wired into
> > > > > ceph-qa-suite to be tested with osd thrashing to ensure that
> > > > > ordering
> > > > > works and continues to work as expected.
> > > > > -Sam
> > > > > 
> > > > > On Mon, Jun 27, 2016 at 3:18 PM, Sage Weil <sweil@redhat.com>
> > > > > wrote:
> > > > > > 
> > > > > > 
> > > > > > 
> > > > > > Hi Sebastien,
> > > > > > 
> > > > > > Do you mind updating us on the current status of
> > > > > > libradosstriper?  Where
> > > > > > does it stand feature-wise with what you need, how are you
> > > > > > currently using
> > > > > > it or how do you plan to use it, and what is still missing?
> > > > > > 
> > > > > > Also, one thing we really want to see is test coverage for
> > > > > > the
> > > > > > code
> > > > > > so
> > > > > > that we can comfortably point users toward it.  This
> > > > > > ideally
> > > > > > would
> > > > > > look
> > > > > > something like the ceph_test_rados_api_* tests that verify
> > > > > > individual
> > > > > > operations behave as expected, and/or something like
> > > > > > ceph_test_rados that
> > > > > > throws random operations at is and verifies it returns
> > > > > > correct
> > > > > > results
> > > > > > that match its in-memory model.
> > > > > > 
> > > > > > Thanks!
> > > > > > sage
> > > > > > --
> > > > > > To unsubscribe from this list: send the line "unsubscribe
> > > > > > ceph-
> > > > > > devel" in
> > > > > > the body of a message to majordomo@vger.kernel.org
> > > > > > More majordomo info at  http://vger.kernel.org/majordomo-in
> > > > > > fo.h
> > > > > > tml
> > > --
> > > To unsubscribe from this list: send the line "unsubscribe ceph-
> > > devel"
> > > in
> > > the body of a message to majordomo@vger.kernel.org
> > > More majordomo info at  http://vger.kernel.org/majordomo-info.htm
> > > l
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  reply	other threads:[~2016-06-29 15:59 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-27 22:18 libradosstriper Sage Weil
2016-06-27 22:25 ` libradosstriper Samuel Just
2016-06-28  3:27   ` libradosstriper Sebastien Ponce
2016-06-28 16:07     ` libradosstriper Samuel Just
2016-06-29 15:03       ` libradosstriper Sebastien Ponce
2016-06-29 15:30         ` libradosstriper Samuel Just
2016-06-29 15:44           ` Sebastien Ponce [this message]
     [not found]             ` <CAN=+7FXwB45kLA+W7U_cyWkEOtykGpuYXXGv2Xh9wkBo_sXLMQ@mail.gmail.com>
2016-06-30  7:47               ` libradosstriper Sebastien Ponce
2016-07-11 12:35                 ` libradosstriper Sebastien Ponce
2016-06-28  3:26 ` libradosstriper Sebastien Ponce
  -- strict thread matches above, loose matches on Subject: below --
2017-08-17 19:18 libradosstriper Jesse Williamson
2017-08-17 21:39 ` libradosstriper Gregory Farnum
2017-08-18  8:28   ` libradosstriper Dan van der Ster
2017-08-18 18:35     ` libradosstriper Nathan Cutler
2017-08-18 23:38     ` libradosstriper Gregory Farnum

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1467215067.603.20.camel@cern.ch \
    --to=sebastien.ponce@cern.ch \
    --cc=ceph-devel@vger.kernel.org \
    --cc=sjust@redhat.com \
    --cc=sweil@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.