]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/rgw/services/svc_sys_obj.cc
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / rgw / services / svc_sys_obj.cc
index 771a0169ac28999a7c13c5f48cee8e72b4b5e872..310e60514d2ca3e15e977767a7d24067a14edeb9 100644 (file)
@@ -6,25 +6,15 @@
 #include "svc_rados.h"
 #include "svc_zone.h"
 
-#include "rgw/rgw_zone.h"
+#include "rgw_zone.h"
 
 #define dout_subsys ceph_subsys_rgw
 
 using namespace std;
 
-RGWSysObjectCtx RGWSI_SysObj::init_obj_ctx()
+RGWSI_SysObj::Obj RGWSI_SysObj::get_obj(const rgw_raw_obj& obj)
 {
-  return RGWSysObjectCtx(this);
-}
-
-RGWSI_SysObj::Obj RGWSI_SysObj::get_obj(RGWSysObjectCtx& obj_ctx, const rgw_raw_obj& obj)
-{
-  return Obj(core_svc, obj_ctx, obj);
-}
-
-void RGWSI_SysObj::Obj::invalidate()
-{
-  ctx.invalidate(obj);
+  return Obj(core_svc, obj);
 }
 
 RGWSI_SysObj::Obj::ROp::ROp(Obj& _source) : source(_source) {
@@ -36,10 +26,8 @@ int RGWSI_SysObj::Obj::ROp::stat(optional_yield y, const DoutPrefixProvider *dpp
   RGWSI_SysObj_Core *svc = source.core_svc;
   rgw_raw_obj& obj = source.obj;
 
-  return svc->stat(source.get_ctx(), *state, obj,
-                  attrs, raw_attrs,
-                   lastmod, obj_size,
-                   objv_tracker, y, dpp);
+  return svc->stat(*state, obj, attrs, raw_attrs,
+                   lastmod, obj_size, objv_tracker, y, dpp);
 }
 
 int RGWSI_SysObj::Obj::ROp::read(const DoutPrefixProvider *dpp,
@@ -49,9 +37,10 @@ int RGWSI_SysObj::Obj::ROp::read(const DoutPrefixProvider *dpp,
   RGWSI_SysObj_Core *svc = source.core_svc;
   rgw_raw_obj& obj = source.get_obj();
 
-  return svc->read(dpp, source.get_ctx(), *state,
+  return svc->read(dpp, *state,
                    objv_tracker,
                    obj, bl, ofs, end,
+                   lastmod, obj_size,
                    attrs,
                   raw_attrs,
                    cache_info,
@@ -73,9 +62,7 @@ int RGWSI_SysObj::Obj::WOp::remove(const DoutPrefixProvider *dpp, optional_yield
   RGWSI_SysObj_Core *svc = source.core_svc;
   rgw_raw_obj& obj = source.get_obj();
 
-  return svc->remove(dpp, source.get_ctx(),
-                     objv_tracker,
-                     obj, y);
+  return svc->remove(dpp, objv_tracker, obj, y);
 }
 
 int RGWSI_SysObj::Obj::WOp::write(const DoutPrefixProvider *dpp, bufferlist& bl, optional_yield y)
@@ -100,7 +87,7 @@ int RGWSI_SysObj::Obj::WOp::write_attrs(const DoutPrefixProvider *dpp, optional_
   RGWSI_SysObj_Core *svc = source.core_svc;
   rgw_raw_obj& obj = source.get_obj();
 
-  return svc->set_attrs(dpp, obj, attrs, nullptr, objv_tracker, y);
+  return svc->set_attrs(dpp, obj, attrs, nullptr, objv_tracker, exclusive, y);
 }
 
 int RGWSI_SysObj::Obj::WOp::write_attr(const DoutPrefixProvider *dpp, const char *name, bufferlist& bl,
@@ -112,7 +99,7 @@ int RGWSI_SysObj::Obj::WOp::write_attr(const DoutPrefixProvider *dpp, const char
   map<string, bufferlist> m;
   m[name] = bl;
 
-  return svc->set_attrs(dpp, obj, m, nullptr, objv_tracker, y);
+  return svc->set_attrs(dpp, obj, m, nullptr, objv_tracker, exclusive, y);
 }
 
 int RGWSI_SysObj::Pool::list_prefixed_objs(const DoutPrefixProvider *dpp, const string& prefix, std::function<void(const string&)> cb)