In particular, we need to rebuild the created_pools set or else the mon
will try to recreate every PG in the system. On an aged cluster, that
is extremely expensive, and will break things.
Fixes: http://tracker.ceph.com/issues/36306
Signed-off-by: Sage Weil <sage@redhat.com>
cmake: do not use plain target_link_libraries(rgw_a ...)
Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Kai Wagner <kwagner@suse.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
this addresses following error:
CMake Error at src/rgw/CMakeLists.txt:178 (target_link_libraries):
The plain signature for target_link_libraries has already been used
with
the target "rgw_a". All uses of target_link_libraries with a target
must
be either all-keyword or all-plain.
The uses of the plain signature are here:
* src/rgw/CMakeLists.txt:168 (target_link_libraries)
Signed-off-by: Kefu Chai <kchai@redhat.com>
mgr broadcast "notify()" to call registered plugins upon finishing a
send_command() request. and restful plugin prints a warning message if
the request is not issued by itself. apparently, there is good chance
that the finished request is sent by other mgr plugins, in that case,
restful plugin always prints the warning messages like:
"2018-10-09 14:52:07.818 7fbc4d8c5700 1 mgr[restful] Unknown request
''
this is misleading and annoying. so, in this change
* add a prefix of "restful.module" before that tag used for identifying
a request. this prefix helps to differentiate the requests sent by
restful plugin from other requests.
* do not print warning message if none running request matches the given tag
* break at seeing the first request matches the given tag, because
the tags used by restful plugin are unique.
* do not str(self.id) before composing the tag, as it is a `str`
already, see CommandsRequest.__init__()
* early return to reduce the indent level
Fixes: http://tracker.ceph.com/issues/36374
Signed-off-by: Kefu Chai <kchai@redhat.com>
Make sure the mbuf and ethdev libraries are created as they export
required symbols.
Fixes: http://tracker.ceph.com/issues/36341
Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
This caused DPP to be threaded through the
verify_{objecy/bucket/user}_permissions functions
in rgw_common.cc and change all of the calls to
them in rgw_op.cc and in other places.
The logging in STS engine authorize was
changed too.
Signed-off-by: Ali Maredia <amaredia@redhat.com>
pass DPP into authenticate functions for auth
engines and change any of the logging inside of
them.
Next up is passing DPP and changing the douts
in the helper functions called in authenticate.
Signed-off-by: Ali Maredia <amaredia@redhat.com>
Pass a DPP into RGWOp::verify_request that leads
through RGWHandler -> RGWHandler_REST->
RGW::Auth_S3::authorize().
Change authenticate() in all the Handler classes
to take a DPP
Signed-off-by: Ali Maredia <amaredia@redhat.com>
The dashboard API now can delete all compression options if the
compression mode is set to 'unset' during edit. Other dismissed options
will be overwritten with the reset value on submit, which will cause
the deletion of the previously set settings.
Fixes: https://tracker.ceph.com/issues/36355
Signed-off-by: Stephan Müller <smueller@suse.com>
It is now commented out like it was before,
but I've added a comment what happened during this test with the QA
system. The problem was that even with only a increase of 1 PG the QA
cluster went into a cluster warning state and did not recover in time.
The QA coverage timeout is 2 minutes.
I could not reproduce this behavior with a local cluster, but I've
added a loop to wait until pgp and pg number are equal and the cluster
is in a healthy state again. This can take locally about 5 seconds.
The internal loop has a timeout of 3 minutes.
Fixes: https://tracker.ceph.com/issues/36362
Signed-off-by: Stephan Müller <smueller@suse.com>
The dashboard backend can now unset all set compression arguments if the
compression mode is switched to 'unset'. In the case of 'unset' Ceph
itself will only delete the 'compression_mode' argument, not all other
set arguments. The other arguments that should be removed, too, are
added to the update arguments in order to delete all set arguments.
Fixes: https://tracker.ceph.com/issues/36355
Signed-off-by: Stephan Müller <smueller@suse.com>
As of the merge of cleaner notifications, the notification component was
refactored and move this caused a loss of previously added
notifications.
Fixes: https://tracker.ceph.com/issues/36355
Signed-off-by: Stephan Müller <smueller@suse.com>
Now the pool list uses the task list service to monitor all tasks, in
order to extend each pool item with corresponding tasks if any. If there
is a running task for a pool you will see what action runs on it in the
listing.
Fixes: https://tracker.ceph.com/issues/36355
Signed-off-by: Stephan Müller <smueller@suse.com>
You can delete pools through the UI, this will generate a task that
deletes the pool in the background.
Fixes: https://tracker.ceph.com/issues/36355
Signed-off-by: Stephan Müller <smueller@suse.com>
You can create/edit pools through the UI if you have the right
permissions.
You can specify the following:
* Name - can't be duplicated
* Type - replicated or erasure
* Crush rule set
* Validates if you can use it
* A popover tells which crush steps are used
* Replica size - depends on your selected rule and the amount of OSDs
* Erasure code profile
* PGs - will be recalculated on form changes (type, replica size,
erasure profile, crush rule) only if not set before
* EC overwrites flag
* Compression - Algorithm / Min/max blob size / mode / ratio
* Application metadata - Predefined and custom applications as badges
Fixes: https://tracker.ceph.com/issues/36355
Signed-off-by: Stephan Müller <smueller@suse.com>