Previously copied the sample data to the iov buffers not yet allocated.
Now allocate buffers before writing data into them.
Fixes: #12123
Signed-off-by: Jevon Qiao <qiaojianfeng@unitedstack.com>
I put in doc/rados/api/python.rst line numbers on every code samples in
order to make them look all the same.
Fixes: #12174
Signed off: Pierre Chaumont pierre.chaumont31@gmail.com
Before this patch, the command 'logrotate -f /etc/logrotate.d/ceph'
was generating an error "Failed to reload ceph.target: Job type reload is not
applicable for unit ceph.target".
Before we issue systemctl reload, check that there is at least
one active ceph-* service. (The hyphen is significant.)
Since we use grep, make the grep package a dependency.
http://tracker.ceph.com/issues/12173Fixes: #12173
Signed-off-by: Tim Serong <tserong@suse.com>
Signed-off-by: Lars Marowsky-Bree <lmb@suse.com>
Signed-off-by: Nathan Cutler <ncutler@suse.com>
Fixes: #12146
Config parameter added for no of parts limit in multipart upload and checked while
completing multipart upload
Signed-off-by: Abhishek Dixit <dixitabhi@gmail.com>
argparse is a widely-used Python module for parsing command-line arguments.
Ceph makes heavy use of Python scripts, both in the build environment and on
cluster nodes and clients.
Until Python 2.6, argparse was distributed separately from Python proper.
As of 2.7 it is part of the Python standard library.
Although the python package in a given distro may or may not Provide:
python-argparse, this cannot be relied upon.
Therefore, this commit puts appropriate conditionals around Requires:
python-argparse and BuildRequires: python-argparse. It does so for Red
Hat/CentOS and SUSE only, because the last Fedora version with Python 2.6
was Fedora 13, which is EOL.
argparse is required by both the ceph and ceph-common packages, but since ceph
requires ceph-common, the argparse Requires and BuildRequires need only appear
once, under ceph-common.
http://tracker.ceph.com/issues/12034Fixes: #12034
Signed-off-by: Nathan Cutler <ncutler@suse.com>
First, the terms "common" and "specific" are vague. Second,
"common" can easily be confused with the ceph-common subpackage.
Fix this by rephrasing to "distro-unconditional dependencies" and
"distro-conditional dependencies", respectively.
Third, move the "distro-unconditional dependencies" header so it
is above the part where these dependencies are actually defined.
Signed-off-by: Nathan Cutler <ncutler@suse.com>
We must join threads before completing ::shutdown,
because otherwise these threads might try to use
torn-down resources like the objecter.
The replay/recovery threads may be blocking on
journaler calls like wait_for_readable, so we
must signal them using Journaler::shutdown. In
order for that to be safe, we must also protect
the assignment of ::journaler from the threads
using the mds_lock.
Fixes: #11985
Signed-off-by: John Spray <john.spray@redhat.com>
`stopping` is true once the MDS has entered suicide(). During
this phase, any MDSIOContexts that are called (e.g. from objecter,
journaler) become no-ops.
Signed-off-by: John Spray <john.spray@redhat.com>
Add a ::stopping flag, set at start of suicide(),
that other contexts must inspect after taking
mds_lock.
This guards against the possibility of multiple
threads entering suicide, and more generally
against the possibility of other procedures
starting while we're in the middle of shutting down.
Signed-off-by: John Spray <john.spray@redhat.com>
Because consumers may be blocked on the on_readable
condition, it is necessary for Journaler to have
an explicit shutdown method that fires the completion
Signed-off-by: John Spray <john.spray@redhat.com>
So that we can decode it from tests. This should go away
at some point when encoding of these raw-encoded structures
is modernized.
Signed-off-by: John Spray <john.spray@redhat.com>
This is surprisingly simple because we were already redundantly
calling store_backtrace whenever the layout changed! That was
a side effect of the way add_old_pool is handled, the backtrace
version is bumped to latest even if the "old" pool is the
current one.
The upshot is that if we accept the existing behaviour of
also unnecessarily updating the 'parent' xattr, keeping
the new 'layout' xattr update requires no new dirty flags. This
is a twitchy enough behaviour that new tests are needed to guard
against regressions though.
Fixes: #4161
Signed-off-by: John Spray <john.spray@redhat.com>
Fedora 19 is EOL, so there's no need to refer to Fedoras less than 20.
"%{fedora}" effectively implies "Fedora 20 and above".
Reported-by: Ira Cooper <ira@samba.org>
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
This reverts the change in commit
85517d611b. Since we BuildRequire:
libbabeltrace-devel, autoconf will see that babeltrace is available
during the build, and make will build/install the rbd-replay-prep
utility.
This change also simplifies Fedora selection logic, because Fedora 19 is
EOL, so "%{fedora}" implies "Fedora 20 and above".
Reported-by: Ira Cooper <ira@samba.org>
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>