Redis Benchmark: generate random test data
The function of generating random data is designed by antirez. See #7196.
This commit is contained in:
parent
9564ed7c39
commit
a902e6b251
@ -1278,6 +1278,17 @@ static void updateClusterSlotsConfiguration() {
|
|||||||
pthread_mutex_unlock(&config.is_updating_slots_mutex);
|
pthread_mutex_unlock(&config.is_updating_slots_mutex);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Generate random data for redis benchmark. See #7196. */
|
||||||
|
static void genBenchmarkRandomData(char *data, int count) {
|
||||||
|
static uint32_t state = 1234;
|
||||||
|
int i = 0;
|
||||||
|
|
||||||
|
while (count--) {
|
||||||
|
state = (state*1103515245+12345);
|
||||||
|
data[i++] = '0'+((state>>16)&63);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* Returns number of consumed options. */
|
/* Returns number of consumed options. */
|
||||||
int parseOptions(int argc, const char **argv) {
|
int parseOptions(int argc, const char **argv) {
|
||||||
int i;
|
int i;
|
||||||
@ -1632,7 +1643,7 @@ int main(int argc, const char **argv) {
|
|||||||
/* Run default benchmark suite. */
|
/* Run default benchmark suite. */
|
||||||
data = zmalloc(config.datasize+1);
|
data = zmalloc(config.datasize+1);
|
||||||
do {
|
do {
|
||||||
memset(data,'x',config.datasize);
|
genBenchmarkRandomData(data, config.datasize);
|
||||||
data[config.datasize] = '\0';
|
data[config.datasize] = '\0';
|
||||||
|
|
||||||
if (test_is_selected("ping_inline") || test_is_selected("ping"))
|
if (test_is_selected("ping_inline") || test_is_selected("ping"))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user