@@ -33,6 +33,7 @@ class ZAddCmd : public Cmd {
3333 private:
3434 std::string key_;
3535 std::vector<storage::ScoreMember> score_members;
36+ int32_t added_count_ = 0 ; // For async mode
3637 rocksdb::Status s_;
3738 void DoInitial () override ;
3839};
@@ -103,7 +104,8 @@ class ZIncrbyCmd : public Cmd {
103104 private:
104105 std::string key_, member_;
105106 double by_ = .0f ;
106- double score_ = .0f ;
107+ double score_ = .0f ; // For async mode: result after increment
108+ rocksdb::Status s_;
107109 void DoInitial () override ;
108110};
109111
@@ -333,6 +335,7 @@ class ZUnionstoreCmd : public ZsetUIstoreParentCmd {
333335
334336 private:
335337 void DoInitial () override ;
338+ int32_t result_count_ = 0 ; // For async mode
336339 // used for write binlog
337340 std::map<std::string, double > value_to_dest_;
338341 rocksdb::Status s_;
@@ -352,6 +355,7 @@ class ZInterstoreCmd : public ZsetUIstoreParentCmd {
352355
353356 private:
354357 void DoInitial () override ;
358+ int32_t result_count_ = 0 ; // For async mode
355359 rocksdb::Status s_;
356360 // used for write binlog
357361 std::vector<storage::ScoreMember> value_to_dest_;
@@ -561,6 +565,7 @@ class ZRemrangebyscoreCmd : public Cmd {
561565 std::string key_, min_, max_;
562566 double min_score_ = 0 , max_score_ = 0 ;
563567 bool left_close_ = true , right_close_ = true ;
568+ int32_t deleted_count_ = 0 ; // For async mode
564569 rocksdb::Status s_;
565570 void DoInitial () override ;
566571 void Clear () override { left_close_ = right_close_ = true ; }
@@ -586,6 +591,7 @@ class ZRemrangebylexCmd : public Cmd {
586591 std::string key_, min_, max_;
587592 std::string min_member_, max_member_;
588593 bool left_close_ = true , right_close_ = true ;
594+ int32_t deleted_count_ = 0 ; // For async mode
589595 rocksdb::Status s_;
590596 void DoInitial () override ;
591597 void Clear () override { left_close_ = right_close_ = true ; }
@@ -611,6 +617,8 @@ class ZPopmaxCmd : public Cmd {
611617 void DoInitial () override ;
612618 std::string key_;
613619 int64_t count_ = 0 ;
620+ std::vector<storage::ScoreMember> score_members_; // For async mode: popped members
621+ rocksdb::Status s_;
614622};
615623
616624class ZPopminCmd : public Cmd {
@@ -633,6 +641,8 @@ class ZPopminCmd : public Cmd {
633641 void DoInitial () override ;
634642 std::string key_;
635643 int64_t count_ = 0 ;
644+ std::vector<storage::ScoreMember> score_members_; // For async mode: popped members
645+ rocksdb::Status s_;
636646};
637647
638648#endif
0 commit comments