librados::AioCompletion * AioWriter::get_aioc() {
return aioc;
}
-void AioWriter::set_aioc(librados::callback_t complete,
- librados::callback_t safe) {
- aioc = ob->rados.aio_create_completion(this, complete, safe);
+void AioWriter::set_aioc(librados::callback_t complete) {
+ aioc = ob->rados.aio_create_completion(this, complete);
}
//Helper methods
-void OmapBench::aio_is_safe(rados_completion_t c, void *arg) {
+void OmapBench::aio_is_complete(rados_completion_t c, void *arg) {
AioWriter *aiow = reinterpret_cast<AioWriter *>(arg);
aiow->stop_time();
ceph::mutex * data_lock = &aiow->ob->data_lock;
//tests
int OmapBench::test_write_objects_in_parallel(omap_generator_t omap_gen) {
- comp = NULL;
AioWriter *this_aio_writer;
std::unique_lock l{thread_is_free_lock};
//set up the write
this_aio_writer = new AioWriter(this);
- this_aio_writer->set_aioc(NULL,safe);
+ this_aio_writer->set_aioc(comp);
//perform the write
busythreads_count++;
AioWriter(OmapBench *omap_bench);
~AioWriter() override;
virtual librados::AioCompletion * get_aioc();
- virtual void set_aioc(librados::callback_t complete,
- librados::callback_t safe);
+ virtual void set_aioc(librados::callback_t complete);
};
class OmapBench{
ceph::make_mutex("OmapBench::data_lock");
int busythreads_count;
librados::callback_t comp;
- librados::callback_t safe;
string pool_name;
string rados_id;
: test(&OmapBench::test_write_objects_in_parallel),
omap_generator(generate_uniform_omap),
busythreads_count(0),
- comp(NULL), safe(aio_is_safe),
+ comp(aio_is_complete),
pool_name("rbd"),
rados_id("admin"),
prefix(rados_id+".obj."),
/**
* Callback for when an AioCompletion (called from an AioWriter)
- * is safe. deletes the AioWriter that called it,
+ * is complete. deletes the AioWriter that called it,
* Updates data, updates busythreads, and signals thread_is_free.
*
* @param c provided by aio_write - not used
* @param arg the AioWriter that contains this AioCompletion
*/
- static void aio_is_safe(rados_completion_t c, void *arg);
+ static void aio_is_complete(rados_completion_t c, void *arg);
/**
* Generates a random string len characters long