ceph/qa/standalone
Sage Weil 26cb966cab ceph-objectstore-tool: import pg at original epoch
- In the jewel era, we fast-forwarded the PG to the OSD's latest epoch
and cleared past_intervals.

- In mimic, as of 2347ecb961, we brought the
PG up to date while updating past_intervals.  (At the same time we removed
the OSD's parallel past_intervals regeneration.)

The problem is that the tool then has to reimplement the past_intervals
update logic, and *also* has to cope with splits and merges.  Splits are
somewhat easier (until now we enable partial import of a PG into a split
child), but merges are not so easy.

This patch changes it so we import the PG and leave the pg_epoch matching
the import file.  The OSD is then responsible for bringing it up to date
with the latest map, and dealing with any intervening splits or merges.

We also adjust the safety check to ensure that we don't collide with
any existing PG, either a child we eventually split into, or a parent
we eventually merge into.

Fixes: http://tracker.ceph.com/issues/35955
Signed-off-by: Sage Weil <sage@redhat.com>
2018-09-20 12:58:00 -05:00
..
crush qa/standalone/crush/crush-choose-args: run mgr 2018-08-07 11:57:05 -05:00
erasure-code osd/PrimaryLogPG: s/list_missing/list_unfound/ 2018-09-06 09:52:20 +08:00
misc Merge pull request #16494 from asomers/bin_bash 2017-08-27 10:14:14 +08:00
mon osd/filestore: Change default filestore_merge_threshold to -1 2018-06-29 11:45:12 -04:00
osd ceph-objectstore-tool: import pg at original epoch 2018-09-20 12:58:00 -05:00
scrub Merge pull request #24013 from dzafman/wip-35845 2018-09-12 23:00:39 +08:00
special ceph-objectstore-tool: import pg at original epoch 2018-09-20 12:58:00 -05:00
ceph-helpers.sh Merge pull request #23955 from wjwithagen/wjw-fix-ceph-helpers.sh 2018-09-17 15:44:06 +08:00
README qa: Add support for specifying sub-tests with run-standalone.sh 2017-08-10 08:30:47 -07:00

qa/standalone
=============

These scripts run standalone clusters, but not in a normal way.  They make
use of functions ceph-helpers.sh to quickly start/stop daemons against
toy clusters in a single directory.

They are normally run via teuthology based on qa/suites/rados/standalone/*.yaml.

You can run them in a git checkout + build directory as well:

  * The qa/run-standalone.sh will run all of them in sequence.  This is slow
     since there is no parallelism.

  * You can run individual script(s) by specifying the basename or path below
    qa/standalone as arguments to qa/run-standalone.sh.

../qa/run-standalone.sh misc.sh osd/osd-dup.sh

  * Add support for specifying arguments to selected tests by simply adding
    list of tests to each argument.

../qa/run-standalone.sh "test-ceph-helpers.sh test_get_last_scrub_stamp"