Project

General

Profile

Actions

Feature #73986

open

Modernise cls interface with compile time safety

Added by Alex Ainscow 4 months ago. Updated about 2 months ago.

Status:
Fix Under Review
Priority:
Normal
Assignee:
Category:
-
Target version:
-
% Done:

0%

Source:
Backport:
Reviewed:
Affected Versions:
Component(RADOS):
OSD, Objecter, librados, osdc, rados tool
Pull request ID:
Tags (freeform):
Merge Commit:
Fixed In:
Released In:
Upkeep Timestamp:

Description

This is a preparation PR for EC direct reads, but is also provides protection for balanced reads.

This PR does the following:

Adds a new C++ interface, with compile time safety, which prevents any code from attempting to call an exec which may do a write without marking the OP as write.
Deprecates any C++ interface which can be used unsafely.
Refactors all clients within Ceph to use the new interface.
Deprecates any C interface providing execs within read ops, since they cannot be checked.
Note: This interface was not in use within the ceph code base.
Refactors "IOCTX" interface to flag all execs as writes. This is safe, since reads are always permitted as part of writes.
Note: Python uses these interface and so is now safe.
Classifies any attempt to perform an exec with a "write" without a WRITE flag as a misdirected op and fails it.
Deletes cls_acl, cls_crypto and key_value_store. These were unmaintained consumers of the old API. Each has not been properly maintained for many years.

Actions #1

Updated by Radoslaw Zarzynski 4 months ago

  • Status changed from In Progress to Fix Under Review
  • Assignee set to Alex Ainscow
Actions #2

Updated by Radoslaw Zarzynski 4 months ago

This requires discussion on CDM.

Actions #3

Updated by Radoslaw Zarzynski 3 months ago

Discussed in CDM. Alex addresses comments.

Actions #4

Updated by Laura Flores 3 months ago ยท Edited

YouTube link for CDM discussion: https://youtu.be/S8xNtdiNqKA?si=I3hSUMnkZo1KjVV6

Actions #5

Updated by Radoslaw Zarzynski 3 months ago

scrub note: will do a 2nd round of review.

Actions #6

Updated by Radoslaw Zarzynski 2 months ago

I will re-review.

Actions #7

Updated by Radoslaw Zarzynski 2 months ago

Bump up.

Actions #8

Updated by Radoslaw Zarzynski about 2 months ago

Needs a second round of review. Bump up.

Actions

Also available in: Atom PDF