Skip to content

Commit c1cc2f1

Browse files
committed
dmclock/src/dmclock_server: template type of cleaning_job
We'll want crimson to be able to use seastar task based implementation. Signed-off-by: Samuel Just <[email protected]>
1 parent 2b8b5a5 commit c1cc2f1

File tree

1 file changed

+10
-7
lines changed

1 file changed

+10
-7
lines changed

src/dmclock/src/dmclock_server.h

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -281,7 +281,8 @@ namespace crimson {
281281
// recent values of rho and delta.
282282
// U1 determines whether to use client information function dynamically,
283283
// B is heap branching factor
284-
template<typename C, typename R, bool IsDelayed, bool U1, unsigned B>
284+
template<typename C, typename R, bool IsDelayed, bool U1, unsigned B,
285+
typename BackgroundJob=RunEvery>
285286
class PriorityQueueBase {
286287
// we don't want to include gtest.h just for FRIEND_TEST
287288
friend class dmclock_server_client_idle_erase_Test;
@@ -354,7 +355,7 @@ namespace crimson {
354355
// ClientRec could be "protected" with no issue. [See comments
355356
// associated with function submit_top_request.]
356357
class ClientRec {
357-
friend PriorityQueueBase<C,R,IsDelayed,U1,B>;
358+
friend PriorityQueueBase<C,R,IsDelayed,U1,B,BackgroundJob>;
358359

359360
C client;
360361
RequestTag prev_tag;
@@ -826,7 +827,7 @@ namespace crimson {
826827

827828
// NB: All threads declared at end, so they're destructed first!
828829

829-
RunEvery cleaning_job;
830+
BackgroundJob cleaning_job;
830831

831832
// helper function to return the value of a variant if it matches the
832833
// given type T, or a default value of T otherwise
@@ -1190,7 +1191,7 @@ namespace crimson {
11901191

11911192

11921193
/*
1193-
* This is being called regularly by RunEvery. Every time it's
1194+
* This is being called regularly by cleaning_job. Every time it's
11941195
* called it notes the time and delta counter (mark point) in a
11951196
* deque. It also looks at the deque to find the most recent
11961197
* mark point that is older than clean_age. It then walks the
@@ -1271,9 +1272,11 @@ namespace crimson {
12711272
}; // class PriorityQueueBase
12721273

12731274

1274-
template<typename C, typename R, bool IsDelayed=false, bool U1=false, unsigned B=2>
1275-
class PullPriorityQueue : public PriorityQueueBase<C,R,IsDelayed,U1,B> {
1276-
using super = PriorityQueueBase<C,R,IsDelayed,U1,B>;
1275+
template<typename C, typename R, bool IsDelayed=false, bool U1=false,
1276+
unsigned B=2, typename BackgroundJob=RunEvery>
1277+
class PullPriorityQueue : public PriorityQueueBase<
1278+
C,R,IsDelayed,U1,B,BackgroundJob> {
1279+
using super = PriorityQueueBase<C,R,IsDelayed,U1,B,BackgroundJob>;
12771280

12781281
public:
12791282

0 commit comments

Comments
 (0)