Time complexity of zadd when value has score greater than highest score present in the targeted sorted set

If every value one adds to a sorted set (redis) is one with the highest score, will the time complexity be O(log(N)) for each zadd?

OR, for such edge cases, redis performs optimizations (e.g. an exception that in such cases where score is higher than the highest score in the set, simply add the value at the highest spot)?

Practically, I ask because I keep a global sorted set in my app where values are zadded with time since epoch as the score. And I'm wondering whether this will still be O(log(N)), or would it be faster?


ANSWERS:


Once a Sorted Set has grown over the thresholds set by the zset-max-ziplist-* configuration directives, it is encoded as a skip list. Optimizing insertion for this edge case seems impossible due to the need to maintain the skip list's upper levels. A cursory review of the source code shows that, as expected, this isn't handled in any special way.



 MORE:


 ? using pipeline for bulk processing in redis (python example)
 ? Segmenting Redis By Database
 ? Expressing Redis Time Complexity
 ? Redis add more than one item to Sorted Set
 ? Using REDIS sorted sets, what is the time complexity certain special operations?
 ? Most efficient way to insert an already sorted set into REDIS
 ? Sorting array where many of the keys are identical - time complexity analysis
 ? What the following macro means in competitive programming?
 ? Big O of recursive functions with multiple function calls?
 ? How to find time complexity of an algorithm