[
https://issues.apache.org/jira/browse/HDDS-6213?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17484485#comment-17484485
]
Rakesh Radhakrishnan edited comment on HDDS-6213 at 2/1/22, 1:07 PM:
---------------------------------------------------------------------
[~pifta] [~erose] Will this conditional action be executed irrespective of the
"{{{}pre-finalized" state{}}} of OM ?
+*Pre-finalization Behavior of FSO:*+
*Case-1) User can create bucket in below ways:*
* (A) Ozone Shell:-*
case-1) Old-Shell-Client : ozone sh create bucket myBucket
case-2) New-Shell-Client : ozone sh create bucket --layout=FSO myFSOBucket
({*}B) BasicRootedFileSystem createBucket:-{*}
** case-1) ** if the bucket doesn’t exists then client will create a
bucket with FSO layout.
*Expected Behaviour:-*
OM will create LEGACY bucket by giving a WARN message if the given bucket
layout is FSO/OBS.
+Note:+ OM shouldn’t read the "ozone.default.bucket.layout" default value
if the client does not specify the bucket layout option.
+*Post finalization phase - Behavior of FSO:*+
Here the idea is to to disallow any operations(read/list/delete/rename/update)
on a FILE_SYSTEM_OPTIMIZED("FSO") bucket by a {{{}pre-FSO client(old version
client){}}}. Will throw exception to the {{pre-FSO client}} when he tries to
access FSO bucket.
+*Overall Behavior of FSO (both PRE and POST upgrade):*+
Only a {{new client}} can talk to FSO bucket.
was (Author: rakeshr):
[~pifta] [~erose] Will this conditional action be executed irrespective of the
"{{{}pre-finalized" state{}}} of OM ?
IMHO to disallow any operations(read/update) on a FILE_SYSTEM_OPTIMIZED("FSO")
bucket by a {{{}pre-FSO client(old version client){}}}at any state of OM(either
pre-finalized or finalized state) .
Expected behavior of FSO: Only a {{new client}} can talk to FSO bucket.
> Layout version based argument actions
> -------------------------------------
>
> Key: HDDS-6213
> URL: https://issues.apache.org/jira/browse/HDDS-6213
> Project: Apache Ozone
> Issue Type: Sub-task
> Components: OM
> Reporter: Ethan Rose
> Assignee: István Fajth
> Priority: Major
>
> Currently, the upgrade framework provides annotations that can be applied to
> RPC endpoints to fail calls when the cluster is pre-finalized for a certain
> layout version. Features like EC and FSO may add parameters to existing
> endpoints, instead of adding new endpoints, and the request only needs to be
> blocked or modified if certain arguments are passed in. This Jira proposes
> adding annotations for conditional failure based on the arguments supplied
> and the cluster's metadata layout version. Pluggable actions given to the
> annotation could fail the request or modify the arguments before proceeding.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]