adoroszlai opened a new pull request, #11883:
URL: https://github.com/apache/ozone/pull/11883

   ## What changes were proposed in this pull request?
   
   Client-server cross-compatibility test are performed in two environments:
   1. `test-new`: new (current software version, i.e. 2.3.0-SNAPSHOT currently) 
cluster with clients of various versions, including current one (1.1.0, ..., 
2.3.0)
   2. `test-old`: some old cluster (e.g. 1.4.1) with two client versions: 
current software version and another one same as the cluster version (1.4.1, 
2.3.0)
   
   Tests are executed in two main steps:
   1. `write.robot`: perform write operations (e.g. create key) skipping any 
that either the client or the server do not support; invoked once for each 
client version
   2. `read.robot`: read data written previously; each client read its own data 
and the one written by current version client
   
   Snapshot diff tests were previously all in the `write` step, so each client 
only read its own snapshot diffs.
   
   This PR improves snapshot / snapdiff compatibility tests.
   
   1. Reduce overhead by:
     - using the FSO bucket created by FSO compatibility test instead of 
creating a new bucket for each test case
     - create 3 snapshots instead of 4 for each client-server combination
     - using client and cluster version conditions to distinguish scenarios, 
instead of relying on fallbacks
   2. Move `--get-report` operations (without the actual CLI option for old 
versions) to `read` test.  `write` creates the snapshots and triggers diff 
creation.  `read` only fetches the diffs.
   
   This increases coverage by testing more client-data combinations in less 
time.  `xcompat-new`: total tests increased `349 -> 402`, time decreased `30 
mins -> 20 mins` (Robot test execution).
   
   https://issues.apache.org/jira/browse/HDDS-17633
   
   ## How was this patch tested?
   
   CI:
   https://github.com/adoroszlai/ozone/actions/runs/41221780320
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to