| line |
true |
false |
branch |
|
81
|
391 |
0 |
return (sum > UINT32_MAX) ? UINT32_MAX : (uint32_t)sum; |
|
104
|
0 |
1478 |
if (align_end > cap) align_end = cap; |
|
105
|
2514 |
267 |
for (; i < align_end; i++) { |
|
106
|
1211 |
1303 |
if (states[i] >= SHM_TAG_MIN) { *pos = i; return 1; } |
|
109
|
206 |
62 |
for (; i + 16 <= cap; i += 16) { |
|
114
|
205 |
1 |
if (mask) { *pos = i + __builtin_ctz(mask); return 1; } |
|
118
|
0 |
62 |
for (; i < cap; i++) { |
|
119
|
0 |
0 |
if (states[i] >= SHM_TAG_MIN) { *pos = i; return 1; } |
|
178
|
12 |
6605 |
if (utf8) lf |= SHM_UTF8_FLAG; |
|
182
|
2239 |
4378 |
if (slen > 4) { |
|
200
|
2723 |
8343 |
if (slen > 4) { |
|
212
|
5272 |
41 |
if (SHM_IS_INLINE(len_field)) { |
|
315
|
1 |
62 |
if (needed == 0) needed = 1; |
|
316
|
57 |
6 |
if (needed <= *cap) return 1; |
|
317
|
0 |
6 |
uint32_t ns = *cap ? *cap : 64; |
|
318
|
0 |
6 |
while (ns < needed) { |
|
320
|
0 |
0 |
if (next <= ns) { ns = needed; break; } /* overflow guard */ |
|
324
|
0 |
6 |
if (!nb) return 0; |
|
370
|
0 |
1 |
if (pid == 0) return 1; /* no owner recorded, assume alive */ |
|
371
|
1 |
0 |
return !(kill((pid_t)pid, 0) == -1 && errno == ESRCH); |
|
|
0 |
1 |
return !(kill((pid_t)pid, 0) == -1 && errno == ESRCH); |
|
380
|
0 |
1 |
if (!__atomic_compare_exchange_n(&hdr->rwlock, &observed_rwlock, |
|
385
|
1 |
0 |
if (seq & 1) |
|
390
|
0 |
1 |
if (__atomic_load_n(&hdr->rwlock_waiters, __ATOMIC_RELAXED) > 0) |
|
405
|
0 |
1604 |
if (cur > 0 && cur < SHM_RWLOCK_WRITER_BIT) { |
|
|
0 |
0 |
if (cur > 0 && cur < SHM_RWLOCK_WRITER_BIT) { |
|
406
|
0 |
0 |
if (__atomic_compare_exchange_n(lock, &cur, cur + 1, |
|
409
|
1604 |
0 |
} else if (cur == 0 && !__atomic_load_n(writers_waiting, __ATOMIC_RELAXED)) { |
|
|
1604 |
0 |
} else if (cur == 0 && !__atomic_load_n(writers_waiting, __ATOMIC_RELAXED)) { |
|
410
|
1604 |
0 |
if (__atomic_compare_exchange_n(lock, &cur, 1, |
|
414
|
0 |
0 |
if (__builtin_expect(spin < SHM_RWLOCK_SPIN_LIMIT, 1)) { |
|
421
|
0 |
0 |
if (cur >= SHM_RWLOCK_WRITER_BIT || cur == 0) { |
|
|
0 |
0 |
if (cur >= SHM_RWLOCK_WRITER_BIT || cur == 0) { |
|
424
|
0 |
0 |
if (rc == -1 && errno == ETIMEDOUT) { |
|
|
0 |
0 |
if (rc == -1 && errno == ETIMEDOUT) { |
|
426
|
0 |
0 |
if (cur >= SHM_RWLOCK_WRITER_BIT) { |
|
428
|
0 |
0 |
if (val >= SHM_RWLOCK_WRITER_BIT) { |
|
430
|
0 |
0 |
if (!shm_pid_alive(pid)) |
|
437
|
0 |
0 |
while (wc > 0 && !__atomic_compare_exchange_n( |
|
438
|
0 |
0 |
writers_waiting, &wc, wc - 1, |
|
452
|
1604 |
0 |
if (prev == 0 && __atomic_load_n(&hdr->rwlock_waiters, __ATOMIC_RELAXED) > 0) |
|
|
0 |
1604 |
if (prev == 0 && __atomic_load_n(&hdr->rwlock_waiters, __ATOMIC_RELAXED) > 0) |
|
465
|
15483 |
0 |
if (__atomic_compare_exchange_n(lock, &expected, mypid, |
|
468
|
0 |
0 |
if (__builtin_expect(spin < SHM_RWLOCK_SPIN_LIMIT, 1)) { |
|
475
|
0 |
0 |
if (cur != 0) { |
|
478
|
0 |
0 |
if (rc == -1 && errno == ETIMEDOUT) { |
|
|
0 |
0 |
if (rc == -1 && errno == ETIMEDOUT) { |
|
482
|
0 |
0 |
if (val >= SHM_RWLOCK_WRITER_BIT) { |
|
484
|
0 |
0 |
if (!shm_pid_alive(pid)) |
|
499
|
1 |
15482 |
if (__atomic_load_n(&hdr->rwlock_waiters, __ATOMIC_RELAXED) > 0) |
|
509
|
4066 |
100001 |
if (__builtin_expect((s & 1) == 0, 1)) return s; |
|
510
|
100000 |
1 |
if (__builtin_expect(spin < 100000, 1)) { |
|
517
|
1 |
0 |
if (val >= SHM_RWLOCK_WRITER_BIT) { |
|
519
|
1 |
0 |
if (!shm_pid_alive(pid)) { |
|
550
|
20 |
146 |
if (len < SHM_ARENA_MIN_ALLOC) return SHM_ARENA_MIN_ALLOC; |
|
555
|
20 |
146 |
if (alloc_size <= SHM_ARENA_MIN_ALLOC) return 0; |
|
556
|
0 |
146 |
if (alloc_size > (SHM_ARENA_MIN_ALLOC << (SHM_ARENA_NUM_CLASSES - 1))) return -1; |
|
564
|
160 |
0 |
if (cls >= 0 && hdr->arena_free[cls] != 0) { |
|
|
1 |
159 |
if (cls >= 0 && hdr->arena_free[cls] != 0) { |
|
573
|
157 |
2 |
if (off + asize > hdr->arena_cap || off + asize > (uint64_t)UINT32_MAX) |
|
|
0 |
157 |
if (off + asize > hdr->arena_cap || off + asize > (uint64_t)UINT32_MAX) |
|
583
|
6 |
0 |
if (cls < 0 || off == 0) return; |
|
|
0 |
6 |
if (cls < 0 || off == 0) return; |
|
594
|
6617 |
160 |
if (slen <= SHM_INLINE_MAX) { |
|
599
|
2 |
158 |
if (aoff == 0 && slen > 0) return 0; |
|
|
2 |
0 |
if (aoff == 0 && slen > 0) return 0; |
|
602
|
1 |
157 |
*len_field = SHM_PACK_LEN(slen, utf8); |
|
609
|
6 |
170 |
if (!SHM_IS_INLINE(len_field)) |
|
616
|
104 |
0 |
if (SHM_IS_INLINE(len_field)) |
|
625
|
1 |
492 |
if (v < 2) return 2; |
|
626
|
0 |
492 |
if (v > 0x80000000U) return 0; /* overflow: no valid power of 2 */ |
|
639
|
336 |
4 |
if (p != SHM_LRU_NONE) next[p] = n; |
|
641
|
3 |
337 |
if (n != SHM_LRU_NONE) prev[n] = p; |
|
650
|
2143 |
0 |
if (h->lru_accessed) __atomic_store_n(&h->lru_accessed[idx], 0, __ATOMIC_RELAXED); /* clear stale clock bit */ |
|
653
|
2087 |
56 |
if (hdr->lru_head != SHM_LRU_NONE) prev[hdr->lru_head] = idx; |
|
660
|
3 |
1 |
if (hdr->lru_head == idx) return; |
|
664
|
0 |
1 |
if (hdr->lru_skip > 0 && idx != hdr->lru_tail) { |
|
|
0 |
0 |
if (hdr->lru_skip > 0 && idx != hdr->lru_tail) { |
|
666
|
0 |
0 |
if ((++promote_ctr & hdr->lru_skip) != 0) |
|
688
|
0 |
334 |
if (!h) { |
|
689
|
0 |
0 |
if (errbuf) snprintf(errbuf, SHM_ERR_BUFLEN, "calloc: out of memory"); |
|
691
|
0 |
0 |
if (backing_fd >= 0) close(backing_fd); |
|
697
|
106 |
228 |
h->arena = hdr->arena_off ? (char *)hdr + hdr->arena_off : NULL; |
|
698
|
32 |
302 |
h->lru_prev = has_lru ? (uint32_t *)((char *)hdr + lru_prev_off) : NULL; |
|
699
|
32 |
302 |
h->lru_next = has_lru ? (uint32_t *)((char *)hdr + lru_next_off) : NULL; |
|
700
|
32 |
302 |
h->lru_accessed = has_lru ? (uint8_t *)((char *)hdr + lru_accessed_off) : NULL; |
|
701
|
61 |
273 |
h->expires_at = has_ttl ? (uint32_t *)((char *)hdr + expires_off) : NULL; |
|
710
|
316 |
18 |
if (path) { |
|
712
|
0 |
316 |
if (!h->path) { |
|
713
|
0 |
0 |
if (errbuf) snprintf(errbuf, SHM_ERR_BUFLEN, "strdup: out of memory"); |
|
715
|
0 |
0 |
if (backing_fd >= 0) close(backing_fd); |
|
721
|
106 |
228 |
if (has_arena) { |
|
723
|
106 |
0 |
if (h->copy_buf) h->copy_buf_size = 256; |
|
733
|
333 |
0 |
if (errbuf) errbuf[0] = '\0'; |
|
735
|
2 |
331 |
if (max_tcap < SHM_INITIAL_CAP) max_tcap = SHM_INITIAL_CAP; |
|
746
|
32 |
301 |
if (has_lru) { |
|
755
|
61 |
272 |
if (has_ttl) { |
|
762
|
107 |
226 |
if (has_arena) { |
|
765
|
13 |
94 |
if (arena_cap < 4096) arena_cap = 4096; |
|
768
|
107 |
226 |
uint64_t total_size = has_arena ? arena_off + arena_cap : next_off; |
|
778
|
12 |
321 |
if (anonymous) { |
|
781
|
0 |
12 |
if (base == MAP_FAILED) { SHM_ERR("mmap(anon): %s", strerror(errno)); return NULL; } |
|
|
0 |
0 |
if (base == MAP_FAILED) { SHM_ERR("mmap(anon): %s", strerror(errno)); return NULL; } |
|
785
|
1 |
320 |
if (fd < 0) { SHM_ERR("open(%s): %s", path, strerror(errno)); return NULL; } |
|
|
1 |
0 |
if (fd < 0) { SHM_ERR("open(%s): %s", path, strerror(errno)); return NULL; } |
|
787
|
0 |
320 |
if (flock(fd, LOCK_EX) < 0) { SHM_ERR("flock(%s): %s", path, strerror(errno)); close(fd); return NULL; } |
|
|
0 |
0 |
if (flock(fd, LOCK_EX) < 0) { SHM_ERR("flock(%s): %s", path, strerror(errno)); close(fd); return NULL; } |
|
789
|
0 |
320 |
if (fstat(fd, &st) < 0) { SHM_ERR("fstat(%s): %s", path, strerror(errno)); flock(fd, LOCK_UN); close(fd); return NULL; } |
|
|
0 |
0 |
if (fstat(fd, &st) < 0) { SHM_ERR("fstat(%s): %s", path, strerror(errno)); flock(fd, LOCK_UN); close(fd); return NULL; } |
|
793
|
7 |
313 |
if (!is_new && (uint64_t)st.st_size < sizeof(ShmHeader)) { |
|
|
0 |
7 |
if (!is_new && (uint64_t)st.st_size < sizeof(ShmHeader)) { |
|
794
|
0 |
0 |
SHM_ERR("%s: file too small (%lld bytes, need %zu)", path, |
|
799
|
313 |
7 |
if (is_new) { |
|
800
|
0 |
313 |
if (ftruncate(fd, (off_t)total_size) < 0) { |
|
801
|
0 |
0 |
SHM_ERR("ftruncate(%s, %llu): %s", path, (unsigned long long)total_size, strerror(errno)); |
|
806
|
7 |
313 |
base = mmap(NULL, is_new ? total_size : (size_t)st.st_size, |
|
808
|
0 |
320 |
if (base == MAP_FAILED) { SHM_ERR("mmap(%s): %s", path, strerror(errno)); flock(fd, LOCK_UN); close(fd); return NULL; } |
|
|
0 |
0 |
if (base == MAP_FAILED) { SHM_ERR("mmap(%s): %s", path, strerror(errno)); flock(fd, LOCK_UN); close(fd); return NULL; } |
|
813
|
325 |
7 |
if (is_new) { |
|
824
|
104 |
221 |
hdr->arena_off = has_arena ? arena_off : 0; |
|
833
|
1 |
324 |
if (lru_skip > 0 && lru_skip < 100) { |
|
|
1 |
0 |
if (lru_skip > 0 && lru_skip < 100) { |
|
836
|
4 |
1 |
while (p < interval) p <<= 1; |
|
845
|
31 |
294 |
if (has_lru) { |
|
852
|
60 |
265 |
if (has_ttl) { |
|
860
|
6 |
1 |
hdr->version == SHM_VERSION && |
|
861
|
3 |
3 |
hdr->variant_id == variant_id && |
|
862
|
3 |
0 |
hdr->node_size == node_size && |
|
863
|
3 |
0 |
hdr->total_size == (uint64_t)st.st_size && |
|
864
|
3 |
0 |
hdr->nodes_off >= sizeof(ShmHeader) && |
|
865
|
3 |
0 |
hdr->states_off > hdr->nodes_off && |
|
866
|
3 |
0 |
hdr->states_off < hdr->total_size && |
|
867
|
0 |
3 |
(!hdr->arena_off || (hdr->arena_off < hdr->total_size && |
|
|
0 |
0 |
(!hdr->arena_off || (hdr->arena_off < hdr->total_size && |
|
868
|
0 |
0 |
hdr->arena_off + hdr->arena_cap <= hdr->total_size && |
|
869
|
0 |
0 |
hdr->arena_bump <= hdr->arena_cap && |
|
870
|
0 |
0 |
hdr->arena_bump >= SHM_ARENA_MIN_ALLOC)) && |
|
871
|
3 |
0 |
hdr->max_table_cap > 0 && |
|
872
|
3 |
0 |
(hdr->max_table_cap & (hdr->max_table_cap - 1)) == 0 && |
|
873
|
3 |
0 |
hdr->table_cap > 0 && |
|
874
|
3 |
0 |
(hdr->table_cap & (hdr->table_cap - 1)) == 0 && |
|
875
|
3 |
0 |
hdr->table_cap <= hdr->max_table_cap && |
|
876
|
3 |
0 |
hdr->states_off + hdr->max_table_cap <= hdr->total_size && |
|
877
|
3 |
0 |
hdr->nodes_off + (uint64_t)hdr->max_table_cap * hdr->node_size <= hdr->states_off && |
|
878
|
3 |
0 |
hdr->size <= hdr->table_cap && |
|
879
|
7 |
0 |
hdr->tombstones <= hdr->table_cap - hdr->size && |
|
|
3 |
0 |
hdr->tombstones <= hdr->table_cap - hdr->size && |
|
880
|
1 |
2 |
(!hdr->max_size || |
|
881
|
1 |
0 |
((hdr->lru_head == SHM_LRU_NONE || hdr->lru_head < hdr->max_table_cap) && |
|
|
1 |
0 |
((hdr->lru_head == SHM_LRU_NONE || hdr->lru_head < hdr->max_table_cap) && |
|
882
|
1 |
0 |
(hdr->lru_tail == SHM_LRU_NONE || hdr->lru_tail < hdr->max_table_cap)))); |
|
|
1 |
0 |
(hdr->lru_tail == SHM_LRU_NONE || hdr->lru_tail < hdr->max_table_cap)))); |
|
883
|
4 |
3 |
if (!valid) { |
|
884
|
0 |
4 |
if (hdr->magic != SHM_MAGIC) |
|
885
|
0 |
0 |
SHM_ERR("%s: bad magic (not a HashMap::Shared file)", path); |
|
886
|
1 |
3 |
else if (hdr->version != SHM_VERSION) |
|
887
|
1 |
0 |
SHM_ERR("%s: version mismatch (file=%u, expected=%u)", path, hdr->version, SHM_VERSION); |
|
888
|
3 |
0 |
else if (hdr->variant_id != variant_id) |
|
889
|
3 |
0 |
SHM_ERR("%s: variant mismatch (file=%u, expected=%u)", path, hdr->variant_id, variant_id); |
|
891
|
0 |
0 |
SHM_ERR("%s: corrupt header", path); |
|
902
|
1 |
2 |
if (has_lru) { |
|
911
|
1 |
2 |
if (has_ttl) { |
|
916
|
0 |
3 |
if (next_off > total_size) { |
|
917
|
0 |
0 |
SHM_ERR("%s: file too small for LRU/TTL arrays", path); |
|
924
|
316 |
12 |
if (fd >= 0) { flock(fd, LOCK_UN); close(fd); } |
|
938
|
4 |
0 |
if (errbuf) errbuf[0] = '\0'; |
|
941
|
0 |
4 |
if (max_tcap < SHM_INITIAL_CAP) max_tcap = SHM_INITIAL_CAP; |
|
949
|
0 |
4 |
if (has_lru) { |
|
958
|
0 |
4 |
if (has_ttl) { |
|
964
|
1 |
3 |
if (has_arena) { |
|
967
|
0 |
1 |
if (arena_cap < 4096) arena_cap = 4096; |
|
969
|
1 |
3 |
uint64_t total_size = has_arena ? arena_off + arena_cap : next_off; |
|
971
|
4 |
0 |
int fd = memfd_create(name ? name : "hashmap", MFD_CLOEXEC | MFD_ALLOW_SEALING); |
|
972
|
0 |
4 |
if (fd < 0) { |
|
973
|
0 |
0 |
if (errbuf) snprintf(errbuf, SHM_ERR_BUFLEN, "memfd_create: %s", strerror(errno)); |
|
976
|
0 |
4 |
if (ftruncate(fd, (off_t)total_size) < 0) { |
|
977
|
0 |
0 |
if (errbuf) snprintf(errbuf, SHM_ERR_BUFLEN, "ftruncate: %s", strerror(errno)); |
|
982
|
0 |
4 |
if (base == MAP_FAILED) { |
|
983
|
0 |
0 |
if (errbuf) snprintf(errbuf, SHM_ERR_BUFLEN, "mmap: %s", strerror(errno)); |
|
998
|
1 |
3 |
hdr->arena_off = has_arena ? arena_off : 0; |
|
1005
|
0 |
4 |
if (lru_skip > 0 && lru_skip < 100) { |
|
|
0 |
0 |
if (lru_skip > 0 && lru_skip < 100) { |
|
1008
|
0 |
0 |
while (p < interval) p <<= 1; |
|
1015
|
0 |
4 |
if (has_lru) { |
|
1020
|
0 |
4 |
if (has_ttl) memset((char *)base + expires_off, 0, max_tcap * sizeof(uint32_t)); |
|
1031
|
3 |
0 |
if (errbuf) errbuf[0] = '\0'; |
|
1033
|
0 |
3 |
if (fstat(fd, &st) < 0) { |
|
1034
|
0 |
0 |
if (errbuf) snprintf(errbuf, SHM_ERR_BUFLEN, "fstat: %s", strerror(errno)); |
|
1037
|
1 |
2 |
if ((uint64_t)st.st_size < sizeof(ShmHeader)) { |
|
1038
|
1 |
0 |
if (errbuf) snprintf(errbuf, SHM_ERR_BUFLEN, "fd: file too small for header"); |
|
1043
|
0 |
2 |
if (base == MAP_FAILED) { |
|
1044
|
0 |
0 |
if (errbuf) snprintf(errbuf, SHM_ERR_BUFLEN, "mmap: %s", strerror(errno)); |
|
1052
|
2 |
0 |
hdr->version == SHM_VERSION && |
|
1053
|
2 |
0 |
hdr->variant_id == variant_id && |
|
1054
|
2 |
0 |
hdr->node_size == node_size && |
|
1055
|
2 |
0 |
hdr->total_size == (uint64_t)st.st_size && |
|
1056
|
2 |
0 |
hdr->nodes_off >= sizeof(ShmHeader) && |
|
1057
|
2 |
0 |
hdr->states_off > hdr->nodes_off && |
|
1058
|
2 |
0 |
hdr->states_off < hdr->total_size && |
|
1059
|
1 |
1 |
(!hdr->arena_off || (hdr->arena_off < hdr->total_size && |
|
|
1 |
0 |
(!hdr->arena_off || (hdr->arena_off < hdr->total_size && |
|
1060
|
1 |
0 |
hdr->arena_off + hdr->arena_cap <= hdr->total_size && |
|
1061
|
1 |
0 |
hdr->arena_bump <= hdr->arena_cap && |
|
1062
|
1 |
0 |
hdr->arena_bump >= SHM_ARENA_MIN_ALLOC)) && |
|
1063
|
2 |
0 |
hdr->max_table_cap > 0 && |
|
1064
|
2 |
0 |
(hdr->max_table_cap & (hdr->max_table_cap - 1)) == 0 && |
|
1065
|
2 |
0 |
hdr->table_cap > 0 && |
|
1066
|
2 |
0 |
(hdr->table_cap & (hdr->table_cap - 1)) == 0 && |
|
1067
|
2 |
0 |
hdr->table_cap <= hdr->max_table_cap && |
|
1068
|
2 |
0 |
hdr->states_off + hdr->max_table_cap <= hdr->total_size && |
|
1069
|
2 |
0 |
hdr->nodes_off + (uint64_t)hdr->max_table_cap * hdr->node_size <= hdr->states_off && |
|
1070
|
2 |
0 |
hdr->size <= hdr->table_cap && |
|
1071
|
2 |
0 |
hdr->tombstones <= hdr->table_cap - hdr->size && |
|
|
2 |
0 |
hdr->tombstones <= hdr->table_cap - hdr->size && |
|
1072
|
0 |
2 |
(!hdr->max_size || |
|
1073
|
0 |
0 |
((hdr->lru_head == SHM_LRU_NONE || hdr->lru_head < hdr->max_table_cap) && |
|
|
0 |
0 |
((hdr->lru_head == SHM_LRU_NONE || hdr->lru_head < hdr->max_table_cap) && |
|
1074
|
0 |
0 |
(hdr->lru_tail == SHM_LRU_NONE || hdr->lru_tail < hdr->max_table_cap)))); |
|
|
0 |
0 |
(hdr->lru_tail == SHM_LRU_NONE || hdr->lru_tail < hdr->max_table_cap)))); |
|
1075
|
0 |
2 |
if (!valid) { |
|
1076
|
0 |
0 |
if (errbuf) { |
|
1077
|
0 |
0 |
if (hdr->magic != SHM_MAGIC) |
|
1079
|
0 |
0 |
else if (hdr->version != SHM_VERSION) |
|
1082
|
0 |
0 |
else if (hdr->variant_id != variant_id) |
|
1099
|
0 |
2 |
if (has_lru) { |
|
1108
|
0 |
2 |
if (has_ttl) { |
|
1113
|
0 |
2 |
if (next_off > total_size) { |
|
1114
|
0 |
0 |
if (errbuf) snprintf(errbuf, SHM_ERR_BUFLEN, "fd: file too small for LRU/TTL arrays"); |
|
1120
|
0 |
2 |
if (myfd < 0) { |
|
1121
|
0 |
0 |
if (errbuf) snprintf(errbuf, SHM_ERR_BUFLEN, "fcntl: %s", strerror(errno)); |
|
1131
|
0 |
1 |
if (!h) return 0; |
|
1132
|
0 |
1 |
if (h->shard_handles) { |
|
1133
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
1136
|
0 |
0 |
if (rc != 0) return rc; |
|
1140
|
0 |
1 |
if (!h->hdr) return 0; |
|
1145
|
0 |
356 |
if (!h) return; |
|
1146
|
22 |
334 |
if (h->shard_handles) { |
|
1148
|
100 |
22 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
1155
|
334 |
0 |
if (h->hdr) munmap(h->hdr, h->mmap_size); |
|
1156
|
6 |
328 |
if (h->backing_fd >= 0) close(h->backing_fd); |
|
1168
|
0 |
22 |
if (!path_prefix) { |
|
1169
|
0 |
0 |
if (errbuf) snprintf(errbuf, SHM_ERR_BUFLEN, "new_sharded requires a path_prefix"); |
|
1174
|
46 |
22 |
while (ns < num_shards) ns <<= 1; |
|
1178
|
0 |
22 |
if (!h) { if (errbuf) snprintf(errbuf, SHM_ERR_BUFLEN, "calloc: out of memory"); return NULL; } |
|
|
0 |
0 |
if (!h) { if (errbuf) snprintf(errbuf, SHM_ERR_BUFLEN, "calloc: out of memory"); return NULL; } |
|
1181
|
0 |
22 |
if (!h->shard_handles) { free(h); if (errbuf) snprintf(errbuf, SHM_ERR_BUFLEN, "calloc: out of memory"); return NULL; } |
|
|
0 |
0 |
if (!h->shard_handles) { free(h); if (errbuf) snprintf(errbuf, SHM_ERR_BUFLEN, "calloc: out of memory"); return NULL; } |
|
1187
|
100 |
22 |
for (uint32_t i = 0; i < num_shards; i++) { |
|
1190
|
100 |
0 |
if (sn < 0 || sn >= (int)sizeof(shard_path)) { |
|
|
0 |
100 |
if (sn < 0 || sn >= (int)sizeof(shard_path)) { |
|
1191
|
0 |
0 |
if (errbuf) snprintf(errbuf, SHM_ERR_BUFLEN, "shard path too long"); |
|
1192
|
0 |
0 |
for (uint32_t j = 0; j < i; j++) |
|
1202
|
0 |
100 |
if (!h->shard_handles[i]) { |
|
1204
|
0 |
0 |
for (uint32_t j = 0; j < i; j++) |
|
1221
|
2 |
1 |
if (!h->shard_handles) { |
|
1222
|
1 |
1 |
if (!h->path) return 0; |
|
1226
|
4 |
1 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
1227
|
4 |
0 |
if (h->shard_handles[i] && h->shard_handles[i]->path) { |
|
|
4 |
0 |
if (h->shard_handles[i] && h->shard_handles[i]->path) { |
|
1228
|
0 |
4 |
if (unlink(h->shard_handles[i]->path) != 0) ok = 0; |
|
1236
|
0 |
24 |
if (!c) return NULL; |
|
1238
|
4 |
20 |
if (h->shard_handles) { |
|
1253
|
0 |
24 |
if (!c) return; |
|
1255
|
24 |
0 |
if (cur && cur->iterating > 0) |
|
|
8 |
16 |
if (cur && cur->iterating > 0) |
|
1321
|
58 |
2 |
if (SHM_IS_INLINE(kl_packed)) { |
|
|
16 |
0 |
if (SHM_IS_INLINE(kl_packed)) { |
|
|
9 |
0 |
if (SHM_IS_INLINE(kl_packed)) { |
|
|
12 |
0 |
if (SHM_IS_INLINE(kl_packed)) { |
|
1322
|
13 |
45 |
if (shm_inline_len(kl_packed) != len) return 0; |
|
|
2 |
14 |
if (shm_inline_len(kl_packed) != len) return 0; |
|
|
0 |
9 |
if (shm_inline_len(kl_packed) != len) return 0; |
|
|
0 |
12 |
if (shm_inline_len(kl_packed) != len) return 0; |
|
1327
|
0 |
2 |
if (SHM_UNPACK_LEN(kl_packed) != len) return 0; |
|
|
0 |
0 |
if (SHM_UNPACK_LEN(kl_packed) != len) return 0; |
|
|
0 |
0 |
if (SHM_UNPACK_LEN(kl_packed) != len) return 0; |
|
|
0 |
0 |
if (SHM_UNPACK_LEN(kl_packed) != len) return 0; |
|
1409
|
1280 |
4352 |
while (SHM_IS_LIVE(states[pos])) |
|
|
225 |
762 |
while (SHM_IS_LIVE(states[pos])) |
|
|
2 |
13 |
while (SHM_IS_LIVE(states[pos])) |
|
|
0 |
0 |
while (SHM_IS_LIVE(states[pos])) |
|
|
0 |
0 |
while (SHM_IS_LIVE(states[pos])) |
|
|
0 |
0 |
while (SHM_IS_LIVE(states[pos])) |
|
|
0 |
0 |
while (SHM_IS_LIVE(states[pos])) |
|
|
6399 |
13380 |
while (SHM_IS_LIVE(states[pos])) |
|
|
764 |
2042 |
while (SHM_IS_LIVE(states[pos])) |
|
|
0 |
0 |
while (SHM_IS_LIVE(states[pos])) |
|
1440
|
52 |
0 |
while (victim != SHM_LRU_NONE) { |
|
|
1 |
0 |
while (victim != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (victim != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (victim != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (victim != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (victim != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (victim != SHM_LRU_NONE) { |
|
|
273 |
0 |
while (victim != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (victim != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (victim != SHM_LRU_NONE) { |
|
1441
|
52 |
0 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
|
0 |
52 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
|
1 |
0 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
|
0 |
1 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
|
0 |
0 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
|
0 |
0 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
|
0 |
0 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
|
0 |
0 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
|
0 |
0 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
|
0 |
0 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
|
0 |
0 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
|
0 |
0 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
|
0 |
0 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
|
0 |
0 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
|
273 |
0 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
|
7 |
266 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
|
0 |
0 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
|
0 |
0 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
|
0 |
0 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
|
0 |
0 |
if (h->lru_accessed && __atomic_load_n(&h->lru_accessed[victim], __ATOMIC_RELAXED)) { |
|
1448
|
0 |
0 |
if (victim == SHM_LRU_NONE) victim = hdr->lru_tail; |
|
|
0 |
0 |
if (victim == SHM_LRU_NONE) victim = hdr->lru_tail; |
|
|
0 |
0 |
if (victim == SHM_LRU_NONE) victim = hdr->lru_tail; |
|
|
0 |
0 |
if (victim == SHM_LRU_NONE) victim = hdr->lru_tail; |
|
|
0 |
0 |
if (victim == SHM_LRU_NONE) victim = hdr->lru_tail; |
|
|
0 |
0 |
if (victim == SHM_LRU_NONE) victim = hdr->lru_tail; |
|
|
0 |
0 |
if (victim == SHM_LRU_NONE) victim = hdr->lru_tail; |
|
|
0 |
7 |
if (victim == SHM_LRU_NONE) victim = hdr->lru_tail; |
|
|
0 |
0 |
if (victim == SHM_LRU_NONE) victim = hdr->lru_tail; |
|
|
0 |
0 |
if (victim == SHM_LRU_NONE) victim = hdr->lru_tail; |
|
1453
|
0 |
52 |
if (victim == SHM_LRU_NONE) return; |
|
|
0 |
1 |
if (victim == SHM_LRU_NONE) return; |
|
|
0 |
0 |
if (victim == SHM_LRU_NONE) return; |
|
|
0 |
0 |
if (victim == SHM_LRU_NONE) return; |
|
|
0 |
0 |
if (victim == SHM_LRU_NONE) return; |
|
|
0 |
0 |
if (victim == SHM_LRU_NONE) return; |
|
|
0 |
0 |
if (victim == SHM_LRU_NONE) return; |
|
|
0 |
266 |
if (victim == SHM_LRU_NONE) return; |
|
|
0 |
0 |
if (victim == SHM_LRU_NONE) return; |
|
|
0 |
0 |
if (victim == SHM_LRU_NONE) return; |
|
1455
|
0 |
52 |
if (h->expires_at) h->expires_at[victim] = 0; |
|
|
0 |
1 |
if (h->expires_at) h->expires_at[victim] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[victim] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[victim] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[victim] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[victim] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[victim] = 0; |
|
|
2 |
264 |
if (h->expires_at) h->expires_at[victim] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[victim] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[victim] = 0; |
|
1463
|
0 |
2 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
260 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
1486
|
30 |
4 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
|
0 |
30 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
|
6 |
0 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
|
0 |
6 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
|
1 |
0 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
|
0 |
1 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
|
0 |
0 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
|
0 |
0 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
|
0 |
0 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
|
0 |
0 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
|
0 |
0 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
|
0 |
0 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
|
0 |
0 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
|
0 |
0 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
|
149 |
20 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
|
18 |
131 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
|
8 |
0 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
|
0 |
8 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
|
0 |
0 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
|
0 |
0 |
int need_mapping = (h->lru_prev || h->expires_at); |
|
1488
|
32 |
2 |
if (live > 0) { |
|
|
6 |
0 |
if (live > 0) { |
|
|
1 |
0 |
if (live > 0) { |
|
|
0 |
0 |
if (live > 0) { |
|
|
0 |
0 |
if (live > 0) { |
|
|
0 |
0 |
if (live > 0) { |
|
|
0 |
0 |
if (live > 0) { |
|
|
156 |
13 |
if (live > 0) { |
|
|
8 |
0 |
if (live > 0) { |
|
|
0 |
0 |
if (live > 0) { |
|
1490
|
0 |
32 |
if (!saved) return 0; |
|
|
0 |
6 |
if (!saved) return 0; |
|
|
0 |
1 |
if (!saved) return 0; |
|
|
0 |
0 |
if (!saved) return 0; |
|
|
0 |
0 |
if (!saved) return 0; |
|
|
0 |
0 |
if (!saved) return 0; |
|
|
0 |
0 |
if (!saved) return 0; |
|
|
0 |
156 |
if (!saved) return 0; |
|
|
0 |
8 |
if (!saved) return 0; |
|
|
0 |
0 |
if (!saved) return 0; |
|
1492
|
4 |
28 |
if (need_mapping) { |
|
|
0 |
6 |
if (need_mapping) { |
|
|
0 |
1 |
if (need_mapping) { |
|
|
0 |
0 |
if (need_mapping) { |
|
|
0 |
0 |
if (need_mapping) { |
|
|
0 |
0 |
if (need_mapping) { |
|
|
0 |
0 |
if (need_mapping) { |
|
|
33 |
123 |
if (need_mapping) { |
|
|
0 |
8 |
if (need_mapping) { |
|
|
0 |
0 |
if (need_mapping) { |
|
1495
|
4 |
0 |
if (!saved_indices || !old_to_new) { |
|
|
0 |
4 |
if (!saved_indices || !old_to_new) { |
|
|
0 |
0 |
if (!saved_indices || !old_to_new) { |
|
|
0 |
0 |
if (!saved_indices || !old_to_new) { |
|
|
0 |
0 |
if (!saved_indices || !old_to_new) { |
|
|
0 |
0 |
if (!saved_indices || !old_to_new) { |
|
|
0 |
0 |
if (!saved_indices || !old_to_new) { |
|
|
0 |
0 |
if (!saved_indices || !old_to_new) { |
|
|
0 |
0 |
if (!saved_indices || !old_to_new) { |
|
|
0 |
0 |
if (!saved_indices || !old_to_new) { |
|
|
0 |
0 |
if (!saved_indices || !old_to_new) { |
|
|
0 |
0 |
if (!saved_indices || !old_to_new) { |
|
|
0 |
0 |
if (!saved_indices || !old_to_new) { |
|
|
0 |
0 |
if (!saved_indices || !old_to_new) { |
|
|
33 |
0 |
if (!saved_indices || !old_to_new) { |
|
|
0 |
33 |
if (!saved_indices || !old_to_new) { |
|
|
0 |
0 |
if (!saved_indices || !old_to_new) { |
|
|
0 |
0 |
if (!saved_indices || !old_to_new) { |
|
|
0 |
0 |
if (!saved_indices || !old_to_new) { |
|
|
0 |
0 |
if (!saved_indices || !old_to_new) { |
|
1502
|
4 |
28 |
if (h->lru_prev) { |
|
|
0 |
6 |
if (h->lru_prev) { |
|
|
0 |
1 |
if (h->lru_prev) { |
|
|
0 |
0 |
if (h->lru_prev) { |
|
|
0 |
0 |
if (h->lru_prev) { |
|
|
0 |
0 |
if (h->lru_prev) { |
|
|
0 |
0 |
if (h->lru_prev) { |
|
|
20 |
136 |
if (h->lru_prev) { |
|
|
0 |
8 |
if (h->lru_prev) { |
|
|
0 |
0 |
if (h->lru_prev) { |
|
1504
|
0 |
4 |
if (!lru_order) { |
|
|
0 |
0 |
if (!lru_order) { |
|
|
0 |
0 |
if (!lru_order) { |
|
|
0 |
0 |
if (!lru_order) { |
|
|
0 |
0 |
if (!lru_order) { |
|
|
0 |
0 |
if (!lru_order) { |
|
|
0 |
0 |
if (!lru_order) { |
|
|
0 |
20 |
if (!lru_order) { |
|
|
0 |
0 |
if (!lru_order) { |
|
|
0 |
0 |
if (!lru_order) { |
|
1509
|
184 |
4 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
|
184 |
0 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
|
0 |
0 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
|
0 |
0 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
|
0 |
0 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
|
0 |
0 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
|
0 |
0 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
|
0 |
0 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
|
0 |
0 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
|
0 |
0 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
|
0 |
0 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
|
0 |
0 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
|
0 |
0 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
|
0 |
0 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
|
920 |
20 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
|
920 |
0 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
|
0 |
0 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
|
0 |
0 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
|
0 |
0 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
|
0 |
0 |
while (idx != SHM_LRU_NONE && lru_count < live) { |
|
1515
|
0 |
32 |
if (h->expires_at) { |
|
|
0 |
6 |
if (h->expires_at) { |
|
|
0 |
1 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
13 |
143 |
if (h->expires_at) { |
|
|
0 |
8 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
1517
|
0 |
0 |
if (!saved_exp) { |
|
|
0 |
0 |
if (!saved_exp) { |
|
|
0 |
0 |
if (!saved_exp) { |
|
|
0 |
0 |
if (!saved_exp) { |
|
|
0 |
0 |
if (!saved_exp) { |
|
|
0 |
0 |
if (!saved_exp) { |
|
|
0 |
0 |
if (!saved_exp) { |
|
|
0 |
13 |
if (!saved_exp) { |
|
|
0 |
0 |
if (!saved_exp) { |
|
|
0 |
0 |
if (!saved_exp) { |
|
1525
|
5752 |
19 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
|
5739 |
13 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
|
1006 |
3 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
|
1003 |
3 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
|
16 |
1 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
|
16 |
0 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
|
25382 |
140 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
|
25366 |
16 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
|
4080 |
8 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
|
4080 |
0 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < old_cap && j < live; i++) { |
|
1526
|
4352 |
1387 |
if (SHM_IS_LIVE(states[i])) { |
|
|
762 |
241 |
if (SHM_IS_LIVE(states[i])) { |
|
|
13 |
3 |
if (SHM_IS_LIVE(states[i])) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i])) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i])) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i])) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i])) { |
|
|
13380 |
11986 |
if (SHM_IS_LIVE(states[i])) { |
|
|
2042 |
2038 |
if (SHM_IS_LIVE(states[i])) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i])) { |
|
1528
|
184 |
4168 |
if (saved_indices) saved_indices[j] = i; |
|
|
0 |
762 |
if (saved_indices) saved_indices[j] = i; |
|
|
0 |
13 |
if (saved_indices) saved_indices[j] = i; |
|
|
0 |
0 |
if (saved_indices) saved_indices[j] = i; |
|
|
0 |
0 |
if (saved_indices) saved_indices[j] = i; |
|
|
0 |
0 |
if (saved_indices) saved_indices[j] = i; |
|
|
0 |
0 |
if (saved_indices) saved_indices[j] = i; |
|
|
1329 |
12051 |
if (saved_indices) saved_indices[j] = i; |
|
|
0 |
2042 |
if (saved_indices) saved_indices[j] = i; |
|
|
0 |
0 |
if (saved_indices) saved_indices[j] = i; |
|
1540
|
4 |
30 |
if (h->lru_prev) { |
|
|
0 |
6 |
if (h->lru_prev) { |
|
|
0 |
1 |
if (h->lru_prev) { |
|
|
0 |
0 |
if (h->lru_prev) { |
|
|
0 |
0 |
if (h->lru_prev) { |
|
|
0 |
0 |
if (h->lru_prev) { |
|
|
0 |
0 |
if (h->lru_prev) { |
|
|
20 |
149 |
if (h->lru_prev) { |
|
|
0 |
8 |
if (h->lru_prev) { |
|
|
0 |
0 |
if (h->lru_prev) { |
|
1543
|
4 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, new_cap); |
|
|
0 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, new_cap); |
|
|
0 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, new_cap); |
|
|
0 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, new_cap); |
|
|
0 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, new_cap); |
|
|
0 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, new_cap); |
|
|
0 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, new_cap); |
|
|
20 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, new_cap); |
|
|
0 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, new_cap); |
|
|
0 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, new_cap); |
|
1547
|
0 |
34 |
if (h->expires_at) { |
|
|
0 |
6 |
if (h->expires_at) { |
|
|
0 |
1 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
18 |
151 |
if (h->expires_at) { |
|
|
0 |
8 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
1551
|
4352 |
34 |
for (uint32_t k = 0; k < live; k++) { |
|
|
762 |
6 |
for (uint32_t k = 0; k < live; k++) { |
|
|
13 |
1 |
for (uint32_t k = 0; k < live; k++) { |
|
|
0 |
0 |
for (uint32_t k = 0; k < live; k++) { |
|
|
0 |
0 |
for (uint32_t k = 0; k < live; k++) { |
|
|
0 |
0 |
for (uint32_t k = 0; k < live; k++) { |
|
|
0 |
0 |
for (uint32_t k = 0; k < live; k++) { |
|
|
13380 |
169 |
for (uint32_t k = 0; k < live; k++) { |
|
|
2042 |
8 |
for (uint32_t k = 0; k < live; k++) { |
|
|
0 |
0 |
for (uint32_t k = 0; k < live; k++) { |
|
1553
|
184 |
4168 |
if (old_to_new) old_to_new[saved_indices[k]] = new_idx; |
|
|
0 |
762 |
if (old_to_new) old_to_new[saved_indices[k]] = new_idx; |
|
|
0 |
13 |
if (old_to_new) old_to_new[saved_indices[k]] = new_idx; |
|
|
0 |
0 |
if (old_to_new) old_to_new[saved_indices[k]] = new_idx; |
|
|
0 |
0 |
if (old_to_new) old_to_new[saved_indices[k]] = new_idx; |
|
|
0 |
0 |
if (old_to_new) old_to_new[saved_indices[k]] = new_idx; |
|
|
0 |
0 |
if (old_to_new) old_to_new[saved_indices[k]] = new_idx; |
|
|
1329 |
12051 |
if (old_to_new) old_to_new[saved_indices[k]] = new_idx; |
|
|
0 |
2042 |
if (old_to_new) old_to_new[saved_indices[k]] = new_idx; |
|
|
0 |
0 |
if (old_to_new) old_to_new[saved_indices[k]] = new_idx; |
|
1558
|
4 |
30 |
if (h->lru_prev && lru_order) { |
|
|
4 |
0 |
if (h->lru_prev && lru_order) { |
|
|
0 |
6 |
if (h->lru_prev && lru_order) { |
|
|
0 |
0 |
if (h->lru_prev && lru_order) { |
|
|
0 |
1 |
if (h->lru_prev && lru_order) { |
|
|
0 |
0 |
if (h->lru_prev && lru_order) { |
|
|
0 |
0 |
if (h->lru_prev && lru_order) { |
|
|
0 |
0 |
if (h->lru_prev && lru_order) { |
|
|
0 |
0 |
if (h->lru_prev && lru_order) { |
|
|
0 |
0 |
if (h->lru_prev && lru_order) { |
|
|
0 |
0 |
if (h->lru_prev && lru_order) { |
|
|
0 |
0 |
if (h->lru_prev && lru_order) { |
|
|
0 |
0 |
if (h->lru_prev && lru_order) { |
|
|
0 |
0 |
if (h->lru_prev && lru_order) { |
|
|
20 |
149 |
if (h->lru_prev && lru_order) { |
|
|
20 |
0 |
if (h->lru_prev && lru_order) { |
|
|
0 |
8 |
if (h->lru_prev && lru_order) { |
|
|
0 |
0 |
if (h->lru_prev && lru_order) { |
|
|
0 |
0 |
if (h->lru_prev && lru_order) { |
|
|
0 |
0 |
if (h->lru_prev && lru_order) { |
|
1559
|
184 |
4 |
for (uint32_t i = 0; i < lru_count; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < lru_count; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < lru_count; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < lru_count; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < lru_count; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < lru_count; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < lru_count; i++) { |
|
|
920 |
20 |
for (uint32_t i = 0; i < lru_count; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < lru_count; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < lru_count; i++) { |
|
1561
|
184 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
|
0 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
|
0 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
|
0 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
|
0 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
|
0 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
|
0 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
|
920 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
|
0 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
|
0 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
1567
|
0 |
34 |
if (h->expires_at && saved_exp) { |
|
|
0 |
0 |
if (h->expires_at && saved_exp) { |
|
|
0 |
6 |
if (h->expires_at && saved_exp) { |
|
|
0 |
0 |
if (h->expires_at && saved_exp) { |
|
|
0 |
1 |
if (h->expires_at && saved_exp) { |
|
|
0 |
0 |
if (h->expires_at && saved_exp) { |
|
|
0 |
0 |
if (h->expires_at && saved_exp) { |
|
|
0 |
0 |
if (h->expires_at && saved_exp) { |
|
|
0 |
0 |
if (h->expires_at && saved_exp) { |
|
|
0 |
0 |
if (h->expires_at && saved_exp) { |
|
|
0 |
0 |
if (h->expires_at && saved_exp) { |
|
|
0 |
0 |
if (h->expires_at && saved_exp) { |
|
|
0 |
0 |
if (h->expires_at && saved_exp) { |
|
|
0 |
0 |
if (h->expires_at && saved_exp) { |
|
|
18 |
151 |
if (h->expires_at && saved_exp) { |
|
|
13 |
5 |
if (h->expires_at && saved_exp) { |
|
|
0 |
8 |
if (h->expires_at && saved_exp) { |
|
|
0 |
0 |
if (h->expires_at && saved_exp) { |
|
|
0 |
0 |
if (h->expires_at && saved_exp) { |
|
|
0 |
0 |
if (h->expires_at && saved_exp) { |
|
1568
|
0 |
0 |
for (uint32_t k = 0; k < live; k++) { |
|
|
0 |
0 |
for (uint32_t k = 0; k < live; k++) { |
|
|
0 |
0 |
for (uint32_t k = 0; k < live; k++) { |
|
|
0 |
0 |
for (uint32_t k = 0; k < live; k++) { |
|
|
0 |
0 |
for (uint32_t k = 0; k < live; k++) { |
|
|
0 |
0 |
for (uint32_t k = 0; k < live; k++) { |
|
|
0 |
0 |
for (uint32_t k = 0; k < live; k++) { |
|
|
409 |
13 |
for (uint32_t k = 0; k < live; k++) { |
|
|
0 |
0 |
for (uint32_t k = 0; k < live; k++) { |
|
|
0 |
0 |
for (uint32_t k = 0; k < live; k++) { |
|
1570
|
0 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
|
0 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
|
0 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
|
0 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
|
0 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
|
0 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
|
0 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
|
409 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
|
0 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
|
0 |
0 |
if (new_idx != SHM_LRU_NONE) |
|
1575
|
0 |
34 |
if (new_cap < old_cap) { |
|
|
0 |
6 |
if (new_cap < old_cap) { |
|
|
0 |
1 |
if (new_cap < old_cap) { |
|
|
0 |
0 |
if (new_cap < old_cap) { |
|
|
0 |
0 |
if (new_cap < old_cap) { |
|
|
0 |
0 |
if (new_cap < old_cap) { |
|
|
0 |
0 |
if (new_cap < old_cap) { |
|
|
19 |
150 |
if (new_cap < old_cap) { |
|
|
1 |
7 |
if (new_cap < old_cap) { |
|
|
0 |
0 |
if (new_cap < old_cap) { |
|
1595
|
32 |
3071 |
if (__builtin_expect((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3, 0)) { |
|
|
6 |
518 |
if (__builtin_expect((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3, 0)) { |
|
|
1 |
17 |
if (__builtin_expect((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3, 0)) { |
|
|
0 |
13 |
if (__builtin_expect((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3, 0)) { |
|
|
0 |
13 |
if (__builtin_expect((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3, 0)) { |
|
|
0 |
17 |
if (__builtin_expect((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3, 0)) { |
|
|
0 |
9 |
if (__builtin_expect((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3, 0)) { |
|
|
220 |
8059 |
if (__builtin_expect((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3, 0)) { |
|
|
7 |
1013 |
if (__builtin_expect((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3, 0)) { |
|
|
0 |
19 |
if (__builtin_expect((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3, 0)) { |
|
1596
|
0 |
32 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
6 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
1 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
220 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
7 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
1598
|
32 |
0 |
if (new_cap <= hdr->max_table_cap) |
|
|
6 |
0 |
if (new_cap <= hdr->max_table_cap) |
|
|
1 |
0 |
if (new_cap <= hdr->max_table_cap) |
|
|
0 |
0 |
if (new_cap <= hdr->max_table_cap) |
|
|
0 |
0 |
if (new_cap <= hdr->max_table_cap) |
|
|
0 |
0 |
if (new_cap <= hdr->max_table_cap) |
|
|
0 |
0 |
if (new_cap <= hdr->max_table_cap) |
|
|
141 |
79 |
if (new_cap <= hdr->max_table_cap) |
|
|
7 |
0 |
if (new_cap <= hdr->max_table_cap) |
|
|
0 |
0 |
if (new_cap <= hdr->max_table_cap) |
|
1600
|
3070 |
1 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
|
0 |
3070 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
|
518 |
0 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
|
0 |
518 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
|
17 |
0 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
|
0 |
17 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
|
13 |
0 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
|
0 |
13 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
|
13 |
0 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
|
0 |
13 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
|
17 |
0 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
|
0 |
17 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
|
9 |
0 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
|
0 |
9 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
|
8057 |
2 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
|
0 |
8057 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
|
1013 |
0 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
|
0 |
1013 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
|
19 |
0 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
|
0 |
19 |
} else if (__builtin_expect(tomb > size || tomb > cap / 4, 0)) { |
|
1601
|
0 |
1 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
2 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
1608
|
11 |
6 |
if (hdr->table_cap <= SHM_INITIAL_CAP) return; |
|
|
3 |
0 |
if (hdr->table_cap <= SHM_INITIAL_CAP) return; |
|
|
0 |
0 |
if (hdr->table_cap <= SHM_INITIAL_CAP) return; |
|
|
1 |
0 |
if (hdr->table_cap <= SHM_INITIAL_CAP) return; |
|
|
1 |
0 |
if (hdr->table_cap <= SHM_INITIAL_CAP) return; |
|
|
0 |
0 |
if (hdr->table_cap <= SHM_INITIAL_CAP) return; |
|
|
1 |
0 |
if (hdr->table_cap <= SHM_INITIAL_CAP) return; |
|
|
36 |
2786 |
if (hdr->table_cap <= SHM_INITIAL_CAP) return; |
|
|
0 |
500 |
if (hdr->table_cap <= SHM_INITIAL_CAP) return; |
|
|
1 |
0 |
if (hdr->table_cap <= SHM_INITIAL_CAP) return; |
|
1609
|
0 |
6 |
if (__builtin_expect((uint64_t)hdr->size * 4 < hdr->table_cap, 0)) { |
|
|
0 |
0 |
if (__builtin_expect((uint64_t)hdr->size * 4 < hdr->table_cap, 0)) { |
|
|
0 |
0 |
if (__builtin_expect((uint64_t)hdr->size * 4 < hdr->table_cap, 0)) { |
|
|
0 |
0 |
if (__builtin_expect((uint64_t)hdr->size * 4 < hdr->table_cap, 0)) { |
|
|
0 |
0 |
if (__builtin_expect((uint64_t)hdr->size * 4 < hdr->table_cap, 0)) { |
|
|
0 |
0 |
if (__builtin_expect((uint64_t)hdr->size * 4 < hdr->table_cap, 0)) { |
|
|
0 |
0 |
if (__builtin_expect((uint64_t)hdr->size * 4 < hdr->table_cap, 0)) { |
|
|
165 |
2621 |
if (__builtin_expect((uint64_t)hdr->size * 4 < hdr->table_cap, 0)) { |
|
|
1 |
499 |
if (__builtin_expect((uint64_t)hdr->size * 4 < hdr->table_cap, 0)) { |
|
|
0 |
0 |
if (__builtin_expect((uint64_t)hdr->size * 4 < hdr->table_cap, 0)) { |
|
1610
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
149 |
16 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
1 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
|
0 |
0 |
if (h->iterating > 0) { h->deferred = 1; return; } |
|
1612
|
0 |
0 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
|
0 |
16 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
|
0 |
1 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
1618
|
0 |
10 |
if (!h->deferred || h->iterating > 0) return; |
|
|
0 |
0 |
if (!h->deferred || h->iterating > 0) return; |
|
|
0 |
2 |
if (!h->deferred || h->iterating > 0) return; |
|
|
0 |
0 |
if (!h->deferred || h->iterating > 0) return; |
|
|
0 |
0 |
if (!h->deferred || h->iterating > 0) return; |
|
|
0 |
0 |
if (!h->deferred || h->iterating > 0) return; |
|
|
0 |
0 |
if (!h->deferred || h->iterating > 0) return; |
|
|
0 |
0 |
if (!h->deferred || h->iterating > 0) return; |
|
|
0 |
0 |
if (!h->deferred || h->iterating > 0) return; |
|
|
0 |
0 |
if (!h->deferred || h->iterating > 0) return; |
|
|
0 |
0 |
if (!h->deferred || h->iterating > 0) return; |
|
|
0 |
0 |
if (!h->deferred || h->iterating > 0) return; |
|
|
0 |
2 |
if (!h->deferred || h->iterating > 0) return; |
|
|
0 |
0 |
if (!h->deferred || h->iterating > 0) return; |
|
|
3 |
76 |
if (!h->deferred || h->iterating > 0) return; |
|
|
0 |
3 |
if (!h->deferred || h->iterating > 0) return; |
|
|
0 |
0 |
if (!h->deferred || h->iterating > 0) return; |
|
|
0 |
0 |
if (!h->deferred || h->iterating > 0) return; |
|
|
0 |
0 |
if (!h->deferred || h->iterating > 0) return; |
|
|
0 |
0 |
if (!h->deferred || h->iterating > 0) return; |
|
1624
|
0 |
0 |
if ((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3) { |
|
|
0 |
0 |
if ((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3) { |
|
|
0 |
0 |
if ((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3) { |
|
|
0 |
0 |
if ((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3) { |
|
|
0 |
0 |
if ((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3) { |
|
|
0 |
0 |
if ((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3) { |
|
|
0 |
0 |
if ((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3) { |
|
|
0 |
3 |
if ((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3) { |
|
|
0 |
0 |
if ((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3) { |
|
|
0 |
0 |
if ((uint64_t)(size + tomb) * 4 > (uint64_t)cap * 3) { |
|
1626
|
0 |
0 |
if (new_cap <= hdr->max_table_cap) |
|
|
0 |
0 |
if (new_cap <= hdr->max_table_cap) |
|
|
0 |
0 |
if (new_cap <= hdr->max_table_cap) |
|
|
0 |
0 |
if (new_cap <= hdr->max_table_cap) |
|
|
0 |
0 |
if (new_cap <= hdr->max_table_cap) |
|
|
0 |
0 |
if (new_cap <= hdr->max_table_cap) |
|
|
0 |
0 |
if (new_cap <= hdr->max_table_cap) |
|
|
0 |
0 |
if (new_cap <= hdr->max_table_cap) |
|
|
0 |
0 |
if (new_cap <= hdr->max_table_cap) |
|
|
0 |
0 |
if (new_cap <= hdr->max_table_cap) |
|
1628
|
0 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
|
0 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
|
0 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
|
0 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
|
0 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
|
0 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
|
0 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
|
0 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
|
0 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
|
0 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
|
0 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
|
0 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
|
0 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
|
0 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
|
3 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
|
3 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
|
0 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
|
0 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
|
0 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
|
0 |
0 |
} else if (cap > SHM_INITIAL_CAP && (uint64_t)size * 4 < cap) { |
|
1630
|
0 |
0 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
|
0 |
3 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (new_cap < SHM_INITIAL_CAP) new_cap = SHM_INITIAL_CAP; |
|
1632
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
|
0 |
0 |
} else if (tomb > size || tomb > cap / 4) { |
|
1672
|
5 |
3086 |
if (h->expires_at) { |
|
|
2 |
519 |
if (h->expires_at) { |
|
|
1 |
13 |
if (h->expires_at) { |
|
|
2 |
5 |
if (h->expires_at) { |
|
|
2 |
7 |
if (h->expires_at) { |
|
|
1 |
13 |
if (h->expires_at) { |
|
|
0 |
4 |
if (h->expires_at) { |
|
|
363 |
7880 |
if (h->expires_at) { |
|
|
0 |
1014 |
if (h->expires_at) { |
|
|
2 |
10 |
if (h->expires_at) { |
|
1673
|
4 |
1 |
uint32_t ttl = (ttl_sec == SHM_TTL_USE_DEFAULT) ? hdr->default_ttl : ttl_sec; |
|
|
1 |
1 |
uint32_t ttl = (ttl_sec == SHM_TTL_USE_DEFAULT) ? hdr->default_ttl : ttl_sec; |
|
|
1 |
0 |
uint32_t ttl = (ttl_sec == SHM_TTL_USE_DEFAULT) ? hdr->default_ttl : ttl_sec; |
|
|
2 |
0 |
uint32_t ttl = (ttl_sec == SHM_TTL_USE_DEFAULT) ? hdr->default_ttl : ttl_sec; |
|
|
2 |
0 |
uint32_t ttl = (ttl_sec == SHM_TTL_USE_DEFAULT) ? hdr->default_ttl : ttl_sec; |
|
|
1 |
0 |
uint32_t ttl = (ttl_sec == SHM_TTL_USE_DEFAULT) ? hdr->default_ttl : ttl_sec; |
|
|
0 |
0 |
uint32_t ttl = (ttl_sec == SHM_TTL_USE_DEFAULT) ? hdr->default_ttl : ttl_sec; |
|
|
343 |
20 |
uint32_t ttl = (ttl_sec == SHM_TTL_USE_DEFAULT) ? hdr->default_ttl : ttl_sec; |
|
|
0 |
0 |
uint32_t ttl = (ttl_sec == SHM_TTL_USE_DEFAULT) ? hdr->default_ttl : ttl_sec; |
|
|
2 |
0 |
uint32_t ttl = (ttl_sec == SHM_TTL_USE_DEFAULT) ? hdr->default_ttl : ttl_sec; |
|
1674
|
5 |
0 |
if (ttl > 0) |
|
|
2 |
0 |
if (ttl > 0) |
|
|
1 |
0 |
if (ttl > 0) |
|
|
2 |
0 |
if (ttl > 0) |
|
|
2 |
0 |
if (ttl > 0) |
|
|
1 |
0 |
if (ttl > 0) |
|
|
0 |
0 |
if (ttl > 0) |
|
|
351 |
12 |
if (ttl > 0) |
|
|
0 |
0 |
if (ttl > 0) |
|
|
2 |
0 |
if (ttl > 0) |
|
1679
|
9457 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1566 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
22 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
11 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
9 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
22 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
4 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
29307 |
69 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
3366 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
14 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
1685
|
3084 |
6373 |
if (st == SHM_EMPTY) { |
|
|
521 |
1045 |
if (st == SHM_EMPTY) { |
|
|
14 |
8 |
if (st == SHM_EMPTY) { |
|
|
7 |
4 |
if (st == SHM_EMPTY) { |
|
|
9 |
0 |
if (st == SHM_EMPTY) { |
|
|
14 |
8 |
if (st == SHM_EMPTY) { |
|
|
4 |
0 |
if (st == SHM_EMPTY) { |
|
|
8170 |
21137 |
if (st == SHM_EMPTY) { |
|
|
1014 |
2352 |
if (st == SHM_EMPTY) { |
|
|
12 |
2 |
if (st == SHM_EMPTY) { |
|
1686
|
3071 |
13 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
521 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
14 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
6 |
1 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
9 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
14 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
4 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
8110 |
60 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
1014 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
12 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
1689
|
14 |
6359 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1045 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
8 |
if (st == SHM_TOMBSTONE) { |
|
|
1 |
3 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
0 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
8 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
0 |
if (st == SHM_TOMBSTONE) { |
|
|
85 |
21052 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
2352 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
2 |
if (st == SHM_TOMBSTONE) { |
|
1690
|
13 |
1 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
60 |
25 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
1694
|
6330 |
29 |
if (st != tag) continue; |
|
|
1042 |
3 |
if (st != tag) continue; |
|
|
8 |
0 |
if (st != tag) continue; |
|
|
3 |
0 |
if (st != tag) continue; |
|
|
0 |
0 |
if (st != tag) continue; |
|
|
8 |
0 |
if (st != tag) continue; |
|
|
0 |
0 |
if (st != tag) continue; |
|
|
20975 |
77 |
if (st != tag) continue; |
|
|
2345 |
7 |
if (st != tag) continue; |
|
|
2 |
0 |
if (st != tag) continue; |
|
1696
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
4 |
73 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
7 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
1698
|
7 |
22 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
0 |
3 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
1705
|
0 |
7 |
if (!shm_str_store(hdr, h->arena, &nodes[idx].val_off, &nodes[idx].val_len, val_str, val_len, val_utf8)) |
|
|
0 |
0 |
if (!shm_str_store(hdr, h->arena, &nodes[idx].val_off, &nodes[idx].val_len, val_str, val_len, val_utf8)) |
|
|
0 |
0 |
if (!shm_str_store(hdr, h->arena, &nodes[idx].val_off, &nodes[idx].val_len, val_str, val_len, val_utf8)) |
|
|
0 |
0 |
if (!shm_str_store(hdr, h->arena, &nodes[idx].val_off, &nodes[idx].val_len, val_str, val_len, val_utf8)) |
|
1712
|
0 |
7 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
4 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
1713
|
0 |
7 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
2 |
2 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
1714
|
0 |
0 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
|
1 |
1 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (ttl_sec != SHM_TTL_USE_DEFAULT || h->expires_at[idx] != 0) |
|
1721
|
0 |
3084 |
if (insert_pos == UINT32_MAX) return 0; |
|
|
0 |
521 |
if (insert_pos == UINT32_MAX) return 0; |
|
|
0 |
14 |
if (insert_pos == UINT32_MAX) return 0; |
|
|
0 |
7 |
if (insert_pos == UINT32_MAX) return 0; |
|
|
0 |
9 |
if (insert_pos == UINT32_MAX) return 0; |
|
|
0 |
14 |
if (insert_pos == UINT32_MAX) return 0; |
|
|
0 |
4 |
if (insert_pos == UINT32_MAX) return 0; |
|
|
69 |
8170 |
if (insert_pos == UINT32_MAX) return 0; |
|
|
0 |
1014 |
if (insert_pos == UINT32_MAX) return 0; |
|
|
0 |
12 |
if (insert_pos == UINT32_MAX) return 0; |
|
1724
|
156 |
2928 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
52 |
104 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
3 |
518 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
1 |
2 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
14 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
7 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
9 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
14 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
4 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
869 |
7301 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
264 |
605 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
1014 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
12 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
1733
|
0 |
3084 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].key_off, &nodes[insert_pos].key_len, key_str, key_len, key_utf8)) |
|
|
0 |
521 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].key_off, &nodes[insert_pos].key_len, key_str, key_len, key_utf8)) |
|
|
0 |
14 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].key_off, &nodes[insert_pos].key_len, key_str, key_len, key_utf8)) |
|
|
0 |
7 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].key_off, &nodes[insert_pos].key_len, key_str, key_len, key_utf8)) |
|
1738
|
2 |
3082 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].val_off, &nodes[insert_pos].val_len, val_str, val_len, val_utf8)) { |
|
|
0 |
9 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].val_off, &nodes[insert_pos].val_len, val_str, val_len, val_utf8)) { |
|
|
0 |
14 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].val_off, &nodes[insert_pos].val_len, val_str, val_len, val_utf8)) { |
|
|
0 |
4 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].val_off, &nodes[insert_pos].val_len, val_str, val_len, val_utf8)) { |
|
1750
|
13 |
3069 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
521 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
14 |
if (was_tombstone) hdr->tombstones--; |
|
|
1 |
6 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
9 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
14 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
4 |
if (was_tombstone) hdr->tombstones--; |
|
|
60 |
8110 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
1014 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
12 |
if (was_tombstone) hdr->tombstones--; |
|
1752
|
156 |
2926 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
3 |
518 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
14 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
7 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
9 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
14 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
4 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
869 |
7301 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
1014 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
12 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
1753
|
5 |
3077 |
if (h->expires_at) h->expires_at[insert_pos] = exp_ts; |
|
|
2 |
519 |
if (h->expires_at) h->expires_at[insert_pos] = exp_ts; |
|
|
1 |
13 |
if (h->expires_at) h->expires_at[insert_pos] = exp_ts; |
|
|
2 |
5 |
if (h->expires_at) h->expires_at[insert_pos] = exp_ts; |
|
|
2 |
7 |
if (h->expires_at) h->expires_at[insert_pos] = exp_ts; |
|
|
1 |
13 |
if (h->expires_at) h->expires_at[insert_pos] = exp_ts; |
|
|
0 |
4 |
if (h->expires_at) h->expires_at[insert_pos] = exp_ts; |
|
|
361 |
7809 |
if (h->expires_at) h->expires_at[insert_pos] = exp_ts; |
|
|
0 |
1014 |
if (h->expires_at) h->expires_at[insert_pos] = exp_ts; |
|
|
2 |
10 |
if (h->expires_at) h->expires_at[insert_pos] = exp_ts; |
|
1772
|
0 |
9 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
14 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
4 |
SHM_SHARD_DISPATCH(h, key); |
|
|
1518 |
5717 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
1014 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
12 |
SHM_SHARD_DISPATCH(h, key); |
|
1774
|
154 |
2931 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
521 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
14 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
7 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
1834
|
0 |
1 |
if (ttl_sec >= SHM_TTL_USE_DEFAULT - 1) ttl_sec = SHM_TTL_USE_DEFAULT - 2; |
|
|
0 |
1 |
if (ttl_sec >= SHM_TTL_USE_DEFAULT - 1) ttl_sec = SHM_TTL_USE_DEFAULT - 2; |
|
|
0 |
0 |
if (ttl_sec >= SHM_TTL_USE_DEFAULT - 1) ttl_sec = SHM_TTL_USE_DEFAULT - 2; |
|
|
0 |
0 |
if (ttl_sec >= SHM_TTL_USE_DEFAULT - 1) ttl_sec = SHM_TTL_USE_DEFAULT - 2; |
|
|
0 |
0 |
if (ttl_sec >= SHM_TTL_USE_DEFAULT - 1) ttl_sec = SHM_TTL_USE_DEFAULT - 2; |
|
|
0 |
0 |
if (ttl_sec >= SHM_TTL_USE_DEFAULT - 1) ttl_sec = SHM_TTL_USE_DEFAULT - 2; |
|
|
0 |
0 |
if (ttl_sec >= SHM_TTL_USE_DEFAULT - 1) ttl_sec = SHM_TTL_USE_DEFAULT - 2; |
|
|
0 |
20 |
if (ttl_sec >= SHM_TTL_USE_DEFAULT - 1) ttl_sec = SHM_TTL_USE_DEFAULT - 2; |
|
|
0 |
0 |
if (ttl_sec >= SHM_TTL_USE_DEFAULT - 1) ttl_sec = SHM_TTL_USE_DEFAULT - 2; |
|
|
0 |
0 |
if (ttl_sec >= SHM_TTL_USE_DEFAULT - 1) ttl_sec = SHM_TTL_USE_DEFAULT - 2; |
|
1864
|
0 |
6 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
3 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
5 |
SHM_SHARD_DISPATCH(h, key); |
|
|
509 |
389 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
7 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
9 |
SHM_SHARD_DISPATCH(h, key); |
|
1866
|
8 |
2542 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
512 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
4 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
7 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
1904
|
62 |
2488 |
if (pos + 16 <= hdr->table_cap) { |
|
|
17 |
495 |
if (pos + 16 <= hdr->table_cap) { |
|
|
3 |
1 |
if (pos + 16 <= hdr->table_cap) { |
|
|
7 |
0 |
if (pos + 16 <= hdr->table_cap) { |
|
|
6 |
0 |
if (pos + 16 <= hdr->table_cap) { |
|
|
3 |
0 |
if (pos + 16 <= hdr->table_cap) { |
|
|
5 |
0 |
if (pos + 16 <= hdr->table_cap) { |
|
|
322 |
576 |
if (pos + 16 <= hdr->table_cap) { |
|
|
6 |
1 |
if (pos + 16 <= hdr->table_cap) { |
|
|
6 |
3 |
if (pos + 16 <= hdr->table_cap) { |
|
1908
|
2466 |
22 |
uint16_t cutoff = emask ? (uint16_t)((1U << __builtin_ctz(emask)) - 1) : 0xFFFF; |
|
|
495 |
0 |
uint16_t cutoff = emask ? (uint16_t)((1U << __builtin_ctz(emask)) - 1) : 0xFFFF; |
|
|
1 |
0 |
uint16_t cutoff = emask ? (uint16_t)((1U << __builtin_ctz(emask)) - 1) : 0xFFFF; |
|
|
0 |
0 |
uint16_t cutoff = emask ? (uint16_t)((1U << __builtin_ctz(emask)) - 1) : 0xFFFF; |
|
|
0 |
0 |
uint16_t cutoff = emask ? (uint16_t)((1U << __builtin_ctz(emask)) - 1) : 0xFFFF; |
|
|
0 |
0 |
uint16_t cutoff = emask ? (uint16_t)((1U << __builtin_ctz(emask)) - 1) : 0xFFFF; |
|
|
0 |
0 |
uint16_t cutoff = emask ? (uint16_t)((1U << __builtin_ctz(emask)) - 1) : 0xFFFF; |
|
|
562 |
14 |
uint16_t cutoff = emask ? (uint16_t)((1U << __builtin_ctz(emask)) - 1) : 0xFFFF; |
|
|
1 |
0 |
uint16_t cutoff = emask ? (uint16_t)((1U << __builtin_ctz(emask)) - 1) : 0xFFFF; |
|
|
3 |
0 |
uint16_t cutoff = emask ? (uint16_t)((1U << __builtin_ctz(emask)) - 1) : 0xFFFF; |
|
1910
|
2493 |
1 |
while (relevant) { |
|
|
496 |
0 |
while (relevant) { |
|
|
1 |
0 |
while (relevant) { |
|
|
0 |
0 |
while (relevant) { |
|
|
0 |
0 |
while (relevant) { |
|
|
0 |
0 |
while (relevant) { |
|
|
0 |
0 |
while (relevant) { |
|
|
524 |
56 |
while (relevant) { |
|
|
1 |
0 |
while (relevant) { |
|
|
2 |
1 |
while (relevant) { |
|
1915
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
520 |
4 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
2 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
1919
|
2493 |
0 |
uint32_t kl = SHM_STR_LEN(kl_packed); |
|
|
496 |
0 |
uint32_t kl = SHM_STR_LEN(kl_packed); |
|
|
1 |
0 |
uint32_t kl = SHM_STR_LEN(kl_packed); |
|
|
0 |
0 |
uint32_t kl = SHM_STR_LEN(kl_packed); |
|
1921
|
4 |
2489 |
if (kl != key_len) goto simd_next; |
|
|
1 |
495 |
if (kl != key_len) goto simd_next; |
|
|
0 |
1 |
if (kl != key_len) goto simd_next; |
|
|
0 |
0 |
if (kl != key_len) goto simd_next; |
|
1922
|
2489 |
0 |
if (SHM_IS_INLINE(kl_packed)) { |
|
|
495 |
0 |
if (SHM_IS_INLINE(kl_packed)) { |
|
|
1 |
0 |
if (SHM_IS_INLINE(kl_packed)) { |
|
|
0 |
0 |
if (SHM_IS_INLINE(kl_packed)) { |
|
1925
|
2 |
2487 |
if (memcmp(ibuf, key_str, kl) != 0) goto simd_next; |
|
|
0 |
495 |
if (memcmp(ibuf, key_str, kl) != 0) goto simd_next; |
|
|
0 |
1 |
if (memcmp(ibuf, key_str, kl) != 0) goto simd_next; |
|
|
0 |
0 |
if (memcmp(ibuf, key_str, kl) != 0) goto simd_next; |
|
1928
|
0 |
0 |
if ((uint64_t)koff + kl > arena_cap) goto simd_done; |
|
|
0 |
0 |
if ((uint64_t)koff + kl > arena_cap) goto simd_done; |
|
|
0 |
0 |
if ((uint64_t)koff + kl > arena_cap) goto simd_done; |
|
|
0 |
0 |
if ((uint64_t)koff + kl > arena_cap) goto simd_done; |
|
1929
|
0 |
0 |
if (memcmp(h->arena + koff, key_str, kl) != 0) goto simd_next; |
|
|
0 |
0 |
if (memcmp(h->arena + koff, key_str, kl) != 0) goto simd_next; |
|
|
0 |
0 |
if (memcmp(h->arena + koff, key_str, kl) != 0) goto simd_next; |
|
|
0 |
0 |
if (memcmp(h->arena + koff, key_str, kl) != 0) goto simd_next; |
|
1936
|
2486 |
1 |
local_vl = SHM_STR_LEN(local_vlen_packed); |
|
|
0 |
0 |
local_vl = SHM_STR_LEN(local_vlen_packed); |
|
|
0 |
0 |
local_vl = SHM_STR_LEN(local_vlen_packed); |
|
|
0 |
0 |
local_vl = SHM_STR_LEN(local_vlen_packed); |
|
1948
|
0 |
1 |
if (emask) goto simd_done; /* hit empty — key absent */ |
|
|
0 |
0 |
if (emask) goto simd_done; /* hit empty — key absent */ |
|
|
0 |
0 |
if (emask) goto simd_done; /* hit empty — key absent */ |
|
|
0 |
0 |
if (emask) goto simd_done; /* hit empty — key absent */ |
|
|
0 |
0 |
if (emask) goto simd_done; /* hit empty — key absent */ |
|
|
0 |
0 |
if (emask) goto simd_done; /* hit empty — key absent */ |
|
|
0 |
0 |
if (emask) goto simd_done; /* hit empty — key absent */ |
|
|
56 |
0 |
if (emask) goto simd_done; /* hit empty — key absent */ |
|
|
0 |
0 |
if (emask) goto simd_done; /* hit empty — key absent */ |
|
|
1 |
0 |
if (emask) goto simd_done; /* hit empty — key absent */ |
|
1953
|
63 |
2487 |
if (!found) { |
|
|
17 |
495 |
if (!found) { |
|
|
3 |
1 |
if (!found) { |
|
|
7 |
0 |
if (!found) { |
|
|
6 |
0 |
if (!found) { |
|
|
3 |
0 |
if (!found) { |
|
|
5 |
0 |
if (!found) { |
|
|
378 |
520 |
if (!found) { |
|
|
6 |
1 |
if (!found) { |
|
|
7 |
2 |
if (!found) { |
|
1954
|
99 |
0 |
for (uint32_t i = probe_start; i <= mask; i++) { |
|
|
19 |
0 |
for (uint32_t i = probe_start; i <= mask; i++) { |
|
|
3 |
0 |
for (uint32_t i = probe_start; i <= mask; i++) { |
|
|
8 |
0 |
for (uint32_t i = probe_start; i <= mask; i++) { |
|
|
6 |
0 |
for (uint32_t i = probe_start; i <= mask; i++) { |
|
|
4 |
0 |
for (uint32_t i = probe_start; i <= mask; i++) { |
|
|
6 |
0 |
for (uint32_t i = probe_start; i <= mask; i++) { |
|
|
1501 |
0 |
for (uint32_t i = probe_start; i <= mask; i++) { |
|
|
7 |
0 |
for (uint32_t i = probe_start; i <= mask; i++) { |
|
|
10 |
0 |
for (uint32_t i = probe_start; i <= mask; i++) { |
|
1960
|
5 |
94 |
if (st == SHM_EMPTY) break; |
|
|
2 |
17 |
if (st == SHM_EMPTY) break; |
|
|
0 |
3 |
if (st == SHM_EMPTY) break; |
|
|
0 |
8 |
if (st == SHM_EMPTY) break; |
|
|
0 |
6 |
if (st == SHM_EMPTY) break; |
|
|
0 |
4 |
if (st == SHM_EMPTY) break; |
|
|
1 |
5 |
if (st == SHM_EMPTY) break; |
|
|
78 |
1423 |
if (st == SHM_EMPTY) break; |
|
|
0 |
7 |
if (st == SHM_EMPTY) break; |
|
|
1 |
9 |
if (st == SHM_EMPTY) break; |
|
1961
|
36 |
58 |
if (st != tag) continue; |
|
|
2 |
15 |
if (st != tag) continue; |
|
|
0 |
3 |
if (st != tag) continue; |
|
|
1 |
7 |
if (st != tag) continue; |
|
|
0 |
6 |
if (st != tag) continue; |
|
|
1 |
3 |
if (st != tag) continue; |
|
|
1 |
4 |
if (st != tag) continue; |
|
|
1121 |
302 |
if (st != tag) continue; |
|
|
1 |
6 |
if (st != tag) continue; |
|
|
3 |
6 |
if (st != tag) continue; |
|
1964
|
6 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
3 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
4 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
300 |
2 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
6 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
6 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
1969
|
55 |
3 |
uint32_t kl = SHM_STR_LEN(kl_packed); |
|
|
15 |
0 |
uint32_t kl = SHM_STR_LEN(kl_packed); |
|
|
3 |
0 |
uint32_t kl = SHM_STR_LEN(kl_packed); |
|
|
7 |
0 |
uint32_t kl = SHM_STR_LEN(kl_packed); |
|
1970
|
0 |
58 |
if (kl != key_len) continue; |
|
|
0 |
15 |
if (kl != key_len) continue; |
|
|
0 |
3 |
if (kl != key_len) continue; |
|
|
0 |
7 |
if (kl != key_len) continue; |
|
1972
|
55 |
3 |
if (SHM_IS_INLINE(kl_packed)) { |
|
|
15 |
0 |
if (SHM_IS_INLINE(kl_packed)) { |
|
|
3 |
0 |
if (SHM_IS_INLINE(kl_packed)) { |
|
|
7 |
0 |
if (SHM_IS_INLINE(kl_packed)) { |
|
1975
|
0 |
55 |
if (memcmp(ibuf, key_str, kl) != 0) continue; |
|
|
0 |
15 |
if (memcmp(ibuf, key_str, kl) != 0) continue; |
|
|
0 |
3 |
if (memcmp(ibuf, key_str, kl) != 0) continue; |
|
|
0 |
7 |
if (memcmp(ibuf, key_str, kl) != 0) continue; |
|
1977
|
0 |
3 |
if ((uint64_t)koff + kl > arena_cap) break; |
|
|
0 |
0 |
if ((uint64_t)koff + kl > arena_cap) break; |
|
|
0 |
0 |
if ((uint64_t)koff + kl > arena_cap) break; |
|
|
0 |
0 |
if ((uint64_t)koff + kl > arena_cap) break; |
|
1978
|
0 |
3 |
if (memcmp(h->arena + koff, key_str, kl) != 0) continue; |
|
|
0 |
0 |
if (memcmp(h->arena + koff, key_str, kl) != 0) continue; |
|
|
0 |
0 |
if (memcmp(h->arena + koff, key_str, kl) != 0) continue; |
|
|
0 |
0 |
if (memcmp(h->arena + koff, key_str, kl) != 0) continue; |
|
1985
|
50 |
8 |
local_vl = SHM_STR_LEN(local_vlen_packed); |
|
|
6 |
0 |
local_vl = SHM_STR_LEN(local_vlen_packed); |
|
|
0 |
3 |
local_vl = SHM_STR_LEN(local_vlen_packed); |
|
|
4 |
0 |
local_vl = SHM_STR_LEN(local_vlen_packed); |
|
1997
|
2545 |
5 |
if (found) { |
|
|
510 |
2 |
if (found) { |
|
|
4 |
0 |
if (found) { |
|
|
7 |
0 |
if (found) { |
|
|
6 |
0 |
if (found) { |
|
|
3 |
0 |
if (found) { |
|
|
4 |
1 |
if (found) { |
|
|
820 |
78 |
if (found) { |
|
|
7 |
0 |
if (found) { |
|
|
8 |
1 |
if (found) { |
|
1999
|
2 |
2543 |
if (h->expires_at) { |
|
|
1 |
509 |
if (h->expires_at) { |
|
|
0 |
4 |
if (h->expires_at) { |
|
|
0 |
7 |
if (h->expires_at) { |
|
|
0 |
6 |
if (h->expires_at) { |
|
|
0 |
3 |
if (h->expires_at) { |
|
|
0 |
4 |
if (h->expires_at) { |
|
|
36 |
784 |
if (h->expires_at) { |
|
|
0 |
7 |
if (h->expires_at) { |
|
|
0 |
8 |
if (h->expires_at) { |
|
2001
|
2 |
0 |
if (exp != 0 && shm_now() >= exp) { |
|
|
1 |
1 |
if (exp != 0 && shm_now() >= exp) { |
|
|
1 |
0 |
if (exp != 0 && shm_now() >= exp) { |
|
|
0 |
1 |
if (exp != 0 && shm_now() >= exp) { |
|
|
0 |
0 |
if (exp != 0 && shm_now() >= exp) { |
|
|
0 |
0 |
if (exp != 0 && shm_now() >= exp) { |
|
|
0 |
0 |
if (exp != 0 && shm_now() >= exp) { |
|
|
0 |
0 |
if (exp != 0 && shm_now() >= exp) { |
|
|
0 |
0 |
if (exp != 0 && shm_now() >= exp) { |
|
|
0 |
0 |
if (exp != 0 && shm_now() >= exp) { |
|
|
0 |
0 |
if (exp != 0 && shm_now() >= exp) { |
|
|
0 |
0 |
if (exp != 0 && shm_now() >= exp) { |
|
|
0 |
0 |
if (exp != 0 && shm_now() >= exp) { |
|
|
0 |
0 |
if (exp != 0 && shm_now() >= exp) { |
|
|
26 |
10 |
if (exp != 0 && shm_now() >= exp) { |
|
|
9 |
17 |
if (exp != 0 && shm_now() >= exp) { |
|
|
0 |
0 |
if (exp != 0 && shm_now() >= exp) { |
|
|
0 |
0 |
if (exp != 0 && shm_now() >= exp) { |
|
|
0 |
0 |
if (exp != 0 && shm_now() >= exp) { |
|
|
0 |
0 |
if (exp != 0 && shm_now() >= exp) { |
|
2007
|
2544 |
6 |
if (found) { |
|
|
510 |
2 |
if (found) { |
|
|
4 |
0 |
if (found) { |
|
|
7 |
0 |
if (found) { |
|
|
6 |
0 |
if (found) { |
|
|
3 |
0 |
if (found) { |
|
|
4 |
1 |
if (found) { |
|
|
811 |
87 |
if (found) { |
|
|
7 |
0 |
if (found) { |
|
|
8 |
1 |
if (found) { |
|
2009
|
2535 |
9 |
if (SHM_IS_INLINE(local_vlen_packed)) { |
|
|
6 |
0 |
if (SHM_IS_INLINE(local_vlen_packed)) { |
|
|
0 |
3 |
if (SHM_IS_INLINE(local_vlen_packed)) { |
|
|
4 |
0 |
if (SHM_IS_INLINE(local_vlen_packed)) { |
|
2011
|
2535 |
0 |
if (local_vl > h->copy_buf_size || !h->copy_buf) { |
|
|
0 |
2535 |
if (local_vl > h->copy_buf_size || !h->copy_buf) { |
|
|
6 |
0 |
if (local_vl > h->copy_buf_size || !h->copy_buf) { |
|
|
0 |
6 |
if (local_vl > h->copy_buf_size || !h->copy_buf) { |
|
|
0 |
0 |
if (local_vl > h->copy_buf_size || !h->copy_buf) { |
|
|
0 |
0 |
if (local_vl > h->copy_buf_size || !h->copy_buf) { |
|
|
4 |
0 |
if (local_vl > h->copy_buf_size || !h->copy_buf) { |
|
|
0 |
4 |
if (local_vl > h->copy_buf_size || !h->copy_buf) { |
|
2012
|
0 |
0 |
if (!shm_ensure_copy_buf(h, local_vl > 0 ? local_vl : 1)) return 0; |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, local_vl > 0 ? local_vl : 1)) return 0; |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, local_vl > 0 ? local_vl : 1)) return 0; |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, local_vl > 0 ? local_vl : 1)) return 0; |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, local_vl > 0 ? local_vl : 1)) return 0; |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, local_vl > 0 ? local_vl : 1)) return 0; |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, local_vl > 0 ? local_vl : 1)) return 0; |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, local_vl > 0 ? local_vl : 1)) return 0; |
|
2018
|
0 |
9 |
if ((uint64_t)local_voff + local_vl > arena_cap) continue; |
|
|
0 |
0 |
if ((uint64_t)local_voff + local_vl > arena_cap) continue; |
|
|
0 |
3 |
if ((uint64_t)local_voff + local_vl > arena_cap) continue; |
|
|
0 |
0 |
if ((uint64_t)local_voff + local_vl > arena_cap) continue; |
|
2019
|
9 |
0 |
if (local_vl > h->copy_buf_size || !h->copy_buf) { |
|
|
0 |
9 |
if (local_vl > h->copy_buf_size || !h->copy_buf) { |
|
|
0 |
0 |
if (local_vl > h->copy_buf_size || !h->copy_buf) { |
|
|
0 |
0 |
if (local_vl > h->copy_buf_size || !h->copy_buf) { |
|
|
3 |
0 |
if (local_vl > h->copy_buf_size || !h->copy_buf) { |
|
|
0 |
3 |
if (local_vl > h->copy_buf_size || !h->copy_buf) { |
|
|
0 |
0 |
if (local_vl > h->copy_buf_size || !h->copy_buf) { |
|
|
0 |
0 |
if (local_vl > h->copy_buf_size || !h->copy_buf) { |
|
2020
|
0 |
0 |
if (!shm_ensure_copy_buf(h, local_vl > 0 ? local_vl : 1)) return 0; |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, local_vl > 0 ? local_vl : 1)) return 0; |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, local_vl > 0 ? local_vl : 1)) return 0; |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, local_vl > 0 ? local_vl : 1)) return 0; |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, local_vl > 0 ? local_vl : 1)) return 0; |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, local_vl > 0 ? local_vl : 1)) return 0; |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, local_vl > 0 ? local_vl : 1)) return 0; |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, local_vl > 0 ? local_vl : 1)) return 0; |
|
2026
|
0 |
2544 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
510 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
4 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
7 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
6 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
3 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
4 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
811 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
7 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
8 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
2029
|
2 |
2542 |
if (h->lru_accessed) |
|
|
1 |
509 |
if (h->lru_accessed) |
|
|
0 |
4 |
if (h->lru_accessed) |
|
|
0 |
7 |
if (h->lru_accessed) |
|
|
0 |
6 |
if (h->lru_accessed) |
|
|
0 |
3 |
if (h->lru_accessed) |
|
|
0 |
4 |
if (h->lru_accessed) |
|
|
41 |
770 |
if (h->lru_accessed) |
|
|
0 |
7 |
if (h->lru_accessed) |
|
|
0 |
8 |
if (h->lru_accessed) |
|
2041
|
0 |
6 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
2 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
0 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
0 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
0 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
0 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
1 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
87 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
0 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
1 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
2056
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
2058
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
2076
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
2081
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
2 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
2082
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
2 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
2084
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
2 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
2086
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
2088
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
2 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
2 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
1 |
1 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
|
0 |
0 |
int found = !SHM_IS_EXPIRED(h, idx, now); |
|
2108
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key); |
|
|
2 |
54 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key); |
|
2110
|
0 |
5 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
2113
|
0 |
5 |
if (h->expires_at) { |
|
|
0 |
2 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
1 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
1 |
if (h->expires_at) { |
|
|
2 |
54 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
2 |
if (h->expires_at) { |
|
2139
|
5 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
3 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
110 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
2144
|
0 |
5 |
if (st == SHM_EMPTY) break; |
|
|
1 |
2 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
27 |
83 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
1 |
1 |
if (st == SHM_EMPTY) break; |
|
2145
|
0 |
5 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
1 |
1 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
1 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
1 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
55 |
28 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
1 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
2147
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
27 |
1 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
2149
|
0 |
5 |
if (!SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) continue; |
|
|
0 |
1 |
if (!SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) continue; |
|
|
0 |
0 |
if (!SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) continue; |
|
|
0 |
1 |
if (!SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) continue; |
|
2157
|
0 |
5 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
2 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
0 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
1 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
0 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
0 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
1 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
54 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
0 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
|
0 |
2 |
if (shm_seqlock_read_retry(&hdr->seq, seq)) continue; |
|
2172
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key); |
|
|
1 |
2784 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
500 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key); |
|
2174
|
1 |
4 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
2192
|
5 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
3595 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
590 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
2197
|
0 |
5 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
3595 |
if (st == SHM_EMPTY) break; |
|
|
0 |
590 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
2198
|
0 |
5 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
1 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
1 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
1 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
806 |
2789 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
90 |
500 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
1 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
2201
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
2785 |
4 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
500 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
2203
|
5 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
2205
|
0 |
5 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
1 |
2784 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
500 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
2206
|
0 |
5 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
1 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
1 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
1 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
2785 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
500 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
1 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
2236
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key); |
|
|
2 |
9 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key); |
|
2238
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
2243
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
2 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
2 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
2 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
2 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
2 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
3 |
8 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
2 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
2 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
2259
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
12 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
2264
|
0 |
0 |
if (st == SHM_EMPTY) { |
|
|
0 |
1 |
if (st == SHM_EMPTY) { |
|
|
1 |
1 |
if (st == SHM_EMPTY) { |
|
|
1 |
1 |
if (st == SHM_EMPTY) { |
|
|
1 |
1 |
if (st == SHM_EMPTY) { |
|
|
1 |
1 |
if (st == SHM_EMPTY) { |
|
|
1 |
1 |
if (st == SHM_EMPTY) { |
|
|
7 |
5 |
if (st == SHM_EMPTY) { |
|
|
1 |
1 |
if (st == SHM_EMPTY) { |
|
|
1 |
1 |
if (st == SHM_EMPTY) { |
|
2265
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
7 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
2268
|
0 |
0 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
5 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
2269
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
2272
|
0 |
0 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
1 |
4 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
2274
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
4 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
2276
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
2279
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
2 |
2 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
2 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
2281
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
2291
|
0 |
0 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
1 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
1 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
1 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
1 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
1 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
8 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
1 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
1 |
if (insert_pos == UINT32_MAX) { |
|
2298
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
1 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
1 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
1 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
1 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
1 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
1 |
7 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
1 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
1 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
1 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
2306
|
0 |
0 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].key_off, &nodes[insert_pos].key_len, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].key_off, &nodes[insert_pos].key_len, key_str, key_len, key_utf8)) { |
|
|
0 |
1 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].key_off, &nodes[insert_pos].key_len, key_str, key_len, key_utf8)) { |
|
|
0 |
1 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].key_off, &nodes[insert_pos].key_len, key_str, key_len, key_utf8)) { |
|
2313
|
0 |
0 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].val_off, &nodes[insert_pos].val_len, val_str, val_len, val_utf8)) { |
|
|
0 |
1 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].val_off, &nodes[insert_pos].val_len, val_str, val_len, val_utf8)) { |
|
|
0 |
1 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].val_off, &nodes[insert_pos].val_len, val_str, val_len, val_utf8)) { |
|
|
0 |
1 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].val_off, &nodes[insert_pos].val_len, val_str, val_len, val_utf8)) { |
|
2326
|
0 |
0 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
0 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
1 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
1 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
1 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
1 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
1 |
if (was_tombstone) hdr->tombstones--; |
|
|
1 |
7 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
1 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
1 |
if (was_tombstone) hdr->tombstones--; |
|
2328
|
0 |
0 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
1 |
7 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
2329
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
1 |
if (h->expires_at) { |
|
|
0 |
1 |
if (h->expires_at) { |
|
|
0 |
1 |
if (h->expires_at) { |
|
|
0 |
1 |
if (h->expires_at) { |
|
|
0 |
1 |
if (h->expires_at) { |
|
|
2 |
6 |
if (h->expires_at) { |
|
|
0 |
1 |
if (h->expires_at) { |
|
|
0 |
1 |
if (h->expires_at) { |
|
2331
|
0 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
|
0 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
|
0 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
|
0 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
|
0 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
|
0 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
|
0 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
|
2 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
|
0 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
|
0 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
2354
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key); |
|
|
1 |
5 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key); |
|
2356
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
2361
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
1 |
5 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
2 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
2375
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
7 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
2380
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
2 |
5 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
1 |
1 |
if (st == SHM_EMPTY) break; |
|
2381
|
0 |
0 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
1 |
4 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
2383
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
4 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
2385
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
2387
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
3 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
2399
|
0 |
0 |
if (!shm_str_store(hdr, h->arena, &nodes[idx].val_off, &nodes[idx].val_len, val_str, val_len, val_utf8)) { |
|
|
0 |
1 |
if (!shm_str_store(hdr, h->arena, &nodes[idx].val_off, &nodes[idx].val_len, val_str, val_len, val_utf8)) { |
|
|
0 |
1 |
if (!shm_str_store(hdr, h->arena, &nodes[idx].val_off, &nodes[idx].val_len, val_str, val_len, val_utf8)) { |
|
|
0 |
1 |
if (!shm_str_store(hdr, h->arena, &nodes[idx].val_off, &nodes[idx].val_len, val_str, val_len, val_utf8)) { |
|
2409
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
4 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
2410
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
1 |
3 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
1 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
1 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
2441
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key); |
|
|
1 |
7 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key); |
|
2443
|
0 |
4 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
2448
|
0 |
4 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
2 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
1 |
7 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
2 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
2464
|
4 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
9 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
2469
|
2 |
2 |
if (st == SHM_EMPTY) { |
|
|
0 |
1 |
if (st == SHM_EMPTY) { |
|
|
0 |
1 |
if (st == SHM_EMPTY) { |
|
|
0 |
1 |
if (st == SHM_EMPTY) { |
|
|
1 |
1 |
if (st == SHM_EMPTY) { |
|
|
0 |
1 |
if (st == SHM_EMPTY) { |
|
|
0 |
1 |
if (st == SHM_EMPTY) { |
|
|
3 |
6 |
if (st == SHM_EMPTY) { |
|
|
0 |
1 |
if (st == SHM_EMPTY) { |
|
|
1 |
1 |
if (st == SHM_EMPTY) { |
|
2470
|
2 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
3 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
2473
|
0 |
2 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
6 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
2474
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
2477
|
0 |
2 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
1 |
5 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
2479
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
5 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
2481
|
2 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
2483
|
0 |
2 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
4 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
2485
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
2491
|
2 |
0 |
uint32_t old_vl = SHM_STR_LEN(nodes[idx].val_len); |
|
|
1 |
0 |
uint32_t old_vl = SHM_STR_LEN(nodes[idx].val_len); |
|
|
1 |
0 |
uint32_t old_vl = SHM_STR_LEN(nodes[idx].val_len); |
|
|
1 |
0 |
uint32_t old_vl = SHM_STR_LEN(nodes[idx].val_len); |
|
2492
|
0 |
2 |
if (!shm_ensure_copy_buf(h, old_vl)) { |
|
|
0 |
1 |
if (!shm_ensure_copy_buf(h, old_vl)) { |
|
|
0 |
1 |
if (!shm_ensure_copy_buf(h, old_vl)) { |
|
|
0 |
1 |
if (!shm_ensure_copy_buf(h, old_vl)) { |
|
2505
|
0 |
2 |
if (!shm_str_store(hdr, h->arena, &nodes[idx].val_off, &nodes[idx].val_len, val_str, val_len, val_utf8)) { |
|
|
0 |
1 |
if (!shm_str_store(hdr, h->arena, &nodes[idx].val_off, &nodes[idx].val_len, val_str, val_len, val_utf8)) { |
|
|
0 |
1 |
if (!shm_str_store(hdr, h->arena, &nodes[idx].val_off, &nodes[idx].val_len, val_str, val_len, val_utf8)) { |
|
|
0 |
1 |
if (!shm_str_store(hdr, h->arena, &nodes[idx].val_off, &nodes[idx].val_len, val_str, val_len, val_utf8)) { |
|
2517
|
0 |
2 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
5 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
2518
|
0 |
2 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
1 |
4 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
1 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
1 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
2528
|
0 |
2 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
1 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
3 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
1 |
if (insert_pos == UINT32_MAX) { |
|
2535
|
0 |
2 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
1 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
1 |
2 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
1 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
1 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
2542
|
0 |
2 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].key_off, &nodes[insert_pos].key_len, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].key_off, &nodes[insert_pos].key_len, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].key_off, &nodes[insert_pos].key_len, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].key_off, &nodes[insert_pos].key_len, key_str, key_len, key_utf8)) { |
|
2549
|
0 |
2 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].val_off, &nodes[insert_pos].val_len, val_str, val_len, val_utf8)) { |
|
|
0 |
1 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].val_off, &nodes[insert_pos].val_len, val_str, val_len, val_utf8)) { |
|
|
0 |
0 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].val_off, &nodes[insert_pos].val_len, val_str, val_len, val_utf8)) { |
|
|
0 |
0 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].val_off, &nodes[insert_pos].val_len, val_str, val_len, val_utf8)) { |
|
2562
|
0 |
2 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
0 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
0 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
0 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
1 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
0 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
0 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
3 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
0 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
1 |
if (was_tombstone) hdr->tombstones--; |
|
2564
|
0 |
2 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
1 |
2 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
2565
|
0 |
2 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
1 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
3 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
1 |
if (h->expires_at) { |
|
2567
|
0 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
|
0 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
|
0 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
|
0 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
|
0 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
|
0 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
|
0 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
|
0 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
|
0 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
|
0 |
0 |
h->expires_at[insert_pos] = ttl > 0 ? shm_expiry_ts(ttl) : 0; |
|
2590
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
1 |
4 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
2592
|
1 |
5 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
2597
|
0 |
6 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
2 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
1 |
4 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
2611
|
7 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
5 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
2616
|
1 |
6 |
if (st == SHM_EMPTY) break; |
|
|
0 |
2 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
1 |
4 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
2617
|
1 |
5 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
2 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
1 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
4 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
2620
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
4 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
2622
|
5 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
2 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
2625
|
0 |
5 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
2 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
3 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
2636
|
5 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
|
1 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
|
0 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
|
0 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
2637
|
0 |
5 |
if (!shm_ensure_copy_buf(h, vl)) { |
|
|
0 |
1 |
if (!shm_ensure_copy_buf(h, vl)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, vl)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, vl)) { |
|
2650
|
0 |
5 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
2 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
3 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
2651
|
0 |
5 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
2 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
1 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
3 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
2680
|
0 |
2 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
1 |
12 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
2681
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
2695
|
0 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
|
0 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
|
0 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
|
0 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
|
0 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
|
0 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
|
0 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
|
1 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
|
0 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
|
0 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
2702
|
0 |
2 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
2 |
10 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
2709
|
0 |
2 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
5 |
7 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
5 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
2712
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
5 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
2713
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
5 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
2720
|
2 |
0 |
for (uint32_t i = 0; i < hdr->table_cap; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < hdr->table_cap; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < hdr->table_cap; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < hdr->table_cap; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < hdr->table_cap; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < hdr->table_cap; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < hdr->table_cap; i++) { |
|
|
79 |
2 |
for (uint32_t i = 0; i < hdr->table_cap; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < hdr->table_cap; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < hdr->table_cap; i++) { |
|
2721
|
0 |
2 |
if (!SHM_IS_LIVE(states[i])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[i])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[i])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[i])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[i])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[i])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[i])) continue; |
|
|
69 |
10 |
if (!SHM_IS_LIVE(states[i])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[i])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[i])) continue; |
|
2722
|
0 |
2 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
6 |
4 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
5 |
1 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
5 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i, now)) { |
|
2730
|
0 |
2 |
if (idx == UINT32_MAX) { |
|
|
0 |
0 |
if (idx == UINT32_MAX) { |
|
|
0 |
0 |
if (idx == UINT32_MAX) { |
|
|
0 |
0 |
if (idx == UINT32_MAX) { |
|
|
0 |
0 |
if (idx == UINT32_MAX) { |
|
|
0 |
0 |
if (idx == UINT32_MAX) { |
|
|
0 |
0 |
if (idx == UINT32_MAX) { |
|
|
2 |
10 |
if (idx == UINT32_MAX) { |
|
|
0 |
0 |
if (idx == UINT32_MAX) { |
|
|
0 |
0 |
if (idx == UINT32_MAX) { |
|
2741
|
2 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[idx].key_len); |
|
|
0 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[idx].key_len); |
|
|
0 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[idx].key_len); |
|
|
0 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[idx].key_len); |
|
2742
|
0 |
2 |
if (!shm_ensure_copy_buf(h, kl + 1)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, kl + 1)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, kl + 1)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, kl + 1)) { |
|
2755
|
2 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
|
0 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
|
0 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
|
0 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
2757
|
2 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[idx].key_len); |
|
2760
|
0 |
2 |
if (!shm_ensure_copy_buf(h, kl + vl + 1)) { |
|
2769
|
0 |
0 |
if (!shm_ensure_copy_buf(h, vl + 1)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, vl + 1)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, vl + 1)) { |
|
2784
|
0 |
2 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
5 |
5 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
2785
|
0 |
2 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
1 |
9 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
2808
|
0 |
1 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
1 |
8 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
2809
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
2823
|
0 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
|
0 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
|
0 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
|
0 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
|
0 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
|
0 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
|
0 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
|
1 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
|
0 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
|
0 |
0 |
if (rc) { h->shard_iter = (si + 1) % h->num_shards; return 1; } |
|
2830
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
8 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
2837
|
0 |
1 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
|
3 |
5 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
|
3 |
0 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_head != SHM_LRU_NONE) { |
|
2840
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
3 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
2841
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
3 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
2848
|
3 |
0 |
for (uint32_t i = hdr->table_cap; i > 0; i--) { |
|
|
0 |
0 |
for (uint32_t i = hdr->table_cap; i > 0; i--) { |
|
|
0 |
0 |
for (uint32_t i = hdr->table_cap; i > 0; i--) { |
|
|
0 |
0 |
for (uint32_t i = hdr->table_cap; i > 0; i--) { |
|
|
0 |
0 |
for (uint32_t i = hdr->table_cap; i > 0; i--) { |
|
|
0 |
0 |
for (uint32_t i = hdr->table_cap; i > 0; i--) { |
|
|
0 |
0 |
for (uint32_t i = hdr->table_cap; i > 0; i--) { |
|
|
37 |
1 |
for (uint32_t i = hdr->table_cap; i > 0; i--) { |
|
|
0 |
0 |
for (uint32_t i = hdr->table_cap; i > 0; i--) { |
|
|
0 |
0 |
for (uint32_t i = hdr->table_cap; i > 0; i--) { |
|
2849
|
2 |
1 |
if (!SHM_IS_LIVE(states[i - 1])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[i - 1])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[i - 1])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[i - 1])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[i - 1])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[i - 1])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[i - 1])) continue; |
|
|
33 |
4 |
if (!SHM_IS_LIVE(states[i - 1])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[i - 1])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[i - 1])) continue; |
|
2850
|
0 |
1 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
4 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, i - 1, now)) { |
|
2858
|
0 |
1 |
if (idx == UINT32_MAX) { |
|
|
0 |
0 |
if (idx == UINT32_MAX) { |
|
|
0 |
0 |
if (idx == UINT32_MAX) { |
|
|
0 |
0 |
if (idx == UINT32_MAX) { |
|
|
0 |
0 |
if (idx == UINT32_MAX) { |
|
|
0 |
0 |
if (idx == UINT32_MAX) { |
|
|
0 |
0 |
if (idx == UINT32_MAX) { |
|
|
1 |
7 |
if (idx == UINT32_MAX) { |
|
|
0 |
0 |
if (idx == UINT32_MAX) { |
|
|
0 |
0 |
if (idx == UINT32_MAX) { |
|
2869
|
1 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[idx].key_len); |
|
|
0 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[idx].key_len); |
|
|
0 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[idx].key_len); |
|
|
0 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[idx].key_len); |
|
2870
|
0 |
1 |
if (!shm_ensure_copy_buf(h, kl + 1)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, kl + 1)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, kl + 1)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, kl + 1)) { |
|
2883
|
1 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
|
0 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
|
0 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
|
0 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
2885
|
1 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[idx].key_len); |
|
2887
|
0 |
1 |
if (!shm_ensure_copy_buf(h, kl + vl + 1)) { |
|
2896
|
0 |
0 |
if (!shm_ensure_copy_buf(h, vl + 1)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, vl + 1)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, vl + 1)) { |
|
2911
|
0 |
1 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
3 |
4 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
2912
|
0 |
1 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
7 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
2946
|
0 |
3 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
1 |
5 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
2950
|
0 |
3 |
if (limit == 0) return 0; |
|
|
0 |
0 |
if (limit == 0) return 0; |
|
|
0 |
0 |
if (limit == 0) return 0; |
|
|
0 |
0 |
if (limit == 0) return 0; |
|
|
0 |
0 |
if (limit == 0) return 0; |
|
|
0 |
0 |
if (limit == 0) return 0; |
|
|
0 |
0 |
if (limit == 0) return 0; |
|
|
0 |
6 |
if (limit == 0) return 0; |
|
|
0 |
0 |
if (limit == 0) return 0; |
|
|
0 |
0 |
if (limit == 0) return 0; |
|
2956
|
10 |
2 |
while (count < limit) { |
|
|
0 |
0 |
while (count < limit) { |
|
|
0 |
0 |
while (count < limit) { |
|
|
0 |
0 |
while (count < limit) { |
|
|
0 |
0 |
while (count < limit) { |
|
|
0 |
0 |
while (count < limit) { |
|
|
0 |
0 |
while (count < limit) { |
|
|
18 |
3 |
while (count < limit) { |
|
|
0 |
0 |
while (count < limit) { |
|
|
0 |
0 |
while (count < limit) { |
|
2959
|
0 |
10 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
4 |
14 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
4 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
|
0 |
0 |
if (h->lru_prev && hdr->lru_tail != SHM_LRU_NONE) { |
|
2961
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
4 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
|
0 |
0 |
while (pos != SHM_LRU_NONE) { |
|
2962
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
4 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
|
0 |
0 |
if (!SHM_IS_EXPIRED(h, pos, now)) { idx = pos; break; } |
|
2968
|
25 |
1 |
for (; scan_pos < hdr->table_cap; scan_pos++) { |
|
|
0 |
0 |
for (; scan_pos < hdr->table_cap; scan_pos++) { |
|
|
0 |
0 |
for (; scan_pos < hdr->table_cap; scan_pos++) { |
|
|
0 |
0 |
for (; scan_pos < hdr->table_cap; scan_pos++) { |
|
|
0 |
0 |
for (; scan_pos < hdr->table_cap; scan_pos++) { |
|
|
0 |
0 |
for (; scan_pos < hdr->table_cap; scan_pos++) { |
|
|
0 |
0 |
for (; scan_pos < hdr->table_cap; scan_pos++) { |
|
|
72 |
3 |
for (; scan_pos < hdr->table_cap; scan_pos++) { |
|
|
0 |
0 |
for (; scan_pos < hdr->table_cap; scan_pos++) { |
|
|
0 |
0 |
for (; scan_pos < hdr->table_cap; scan_pos++) { |
|
2969
|
16 |
9 |
if (!SHM_IS_LIVE(states[scan_pos])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[scan_pos])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[scan_pos])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[scan_pos])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[scan_pos])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[scan_pos])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[scan_pos])) continue; |
|
|
58 |
14 |
if (!SHM_IS_LIVE(states[scan_pos])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[scan_pos])) continue; |
|
|
0 |
0 |
if (!SHM_IS_LIVE(states[scan_pos])) continue; |
|
2970
|
0 |
9 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
4 |
10 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
3 |
1 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
3 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, scan_pos, now)) { |
|
2979
|
1 |
9 |
if (idx == UINT32_MAX) break; |
|
|
0 |
0 |
if (idx == UINT32_MAX) break; |
|
|
0 |
0 |
if (idx == UINT32_MAX) break; |
|
|
0 |
0 |
if (idx == UINT32_MAX) break; |
|
|
0 |
0 |
if (idx == UINT32_MAX) break; |
|
|
0 |
0 |
if (idx == UINT32_MAX) break; |
|
|
0 |
0 |
if (idx == UINT32_MAX) break; |
|
|
3 |
15 |
if (idx == UINT32_MAX) break; |
|
|
0 |
0 |
if (idx == UINT32_MAX) break; |
|
|
0 |
0 |
if (idx == UINT32_MAX) break; |
|
2986
|
9 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[idx].key_len); |
|
|
0 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[idx].key_len); |
|
|
0 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[idx].key_len); |
|
|
0 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[idx].key_len); |
|
2988
|
3 |
6 |
if (need > *buf_cap) { |
|
|
0 |
0 |
if (need > *buf_cap) { |
|
|
0 |
0 |
if (need > *buf_cap) { |
|
|
0 |
0 |
if (need > *buf_cap) { |
|
2989
|
0 |
3 |
uint32_t ns = *buf_cap ? *buf_cap * 2 : 4096; |
|
|
0 |
0 |
uint32_t ns = *buf_cap ? *buf_cap * 2 : 4096; |
|
|
0 |
0 |
uint32_t ns = *buf_cap ? *buf_cap * 2 : 4096; |
|
|
0 |
0 |
uint32_t ns = *buf_cap ? *buf_cap * 2 : 4096; |
|
2990
|
0 |
3 |
while (ns < need) ns *= 2; |
|
|
0 |
0 |
while (ns < need) ns *= 2; |
|
|
0 |
0 |
while (ns < need) ns *= 2; |
|
|
0 |
0 |
while (ns < need) ns *= 2; |
|
2992
|
0 |
3 |
if (!nb) break; |
|
|
0 |
0 |
if (!nb) break; |
|
|
0 |
0 |
if (!nb) break; |
|
|
0 |
0 |
if (!nb) break; |
|
3005
|
9 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
|
0 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
|
0 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
|
0 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
3007
|
0 |
9 |
if (need > *buf_cap) { |
|
|
0 |
0 |
if (need > *buf_cap) { |
|
|
0 |
0 |
if (need > *buf_cap) { |
|
|
0 |
0 |
if (need > *buf_cap) { |
|
3008
|
0 |
0 |
uint32_t ns = *buf_cap ? *buf_cap * 2 : 4096; |
|
|
0 |
0 |
uint32_t ns = *buf_cap ? *buf_cap * 2 : 4096; |
|
|
0 |
0 |
uint32_t ns = *buf_cap ? *buf_cap * 2 : 4096; |
|
|
0 |
0 |
uint32_t ns = *buf_cap ? *buf_cap * 2 : 4096; |
|
3009
|
0 |
0 |
while (ns < need) ns *= 2; |
|
|
0 |
0 |
while (ns < need) ns *= 2; |
|
|
0 |
0 |
while (ns < need) ns *= 2; |
|
|
0 |
0 |
while (ns < need) ns *= 2; |
|
3011
|
0 |
0 |
if (!nb) break; |
|
|
0 |
0 |
if (!nb) break; |
|
|
0 |
0 |
if (!nb) break; |
|
|
0 |
0 |
if (!nb) break; |
|
3024
|
0 |
9 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
4 |
11 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_unlink(h, idx); |
|
3025
|
0 |
9 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
1 |
14 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
|
0 |
0 |
if (h->expires_at) h->expires_at[idx] = 0; |
|
3030
|
3 |
0 |
if (count > 0) SHM_FN(maybe_shrink)(h); |
|
|
0 |
0 |
if (count > 0) SHM_FN(maybe_shrink)(h); |
|
|
0 |
0 |
if (count > 0) SHM_FN(maybe_shrink)(h); |
|
|
0 |
0 |
if (count > 0) SHM_FN(maybe_shrink)(h); |
|
|
0 |
0 |
if (count > 0) SHM_FN(maybe_shrink)(h); |
|
|
0 |
0 |
if (count > 0) SHM_FN(maybe_shrink)(h); |
|
|
0 |
0 |
if (count > 0) SHM_FN(maybe_shrink)(h); |
|
|
5 |
1 |
if (count > 0) SHM_FN(maybe_shrink)(h); |
|
|
0 |
0 |
if (count > 0) SHM_FN(maybe_shrink)(h); |
|
|
0 |
0 |
if (count > 0) SHM_FN(maybe_shrink)(h); |
|
3041
|
1 |
2 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
1 |
5 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
3043
|
2 |
0 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
|
1 |
1 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
|
1 |
1 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards && total < limit; i++) { |
|
3049
|
1 |
0 |
if (total > 0) h->shard_iter = (h->shard_iter + 1) % h->num_shards; |
|
|
0 |
0 |
if (total > 0) h->shard_iter = (h->shard_iter + 1) % h->num_shards; |
|
|
0 |
0 |
if (total > 0) h->shard_iter = (h->shard_iter + 1) % h->num_shards; |
|
|
0 |
0 |
if (total > 0) h->shard_iter = (h->shard_iter + 1) % h->num_shards; |
|
|
0 |
0 |
if (total > 0) h->shard_iter = (h->shard_iter + 1) % h->num_shards; |
|
|
0 |
0 |
if (total > 0) h->shard_iter = (h->shard_iter + 1) % h->num_shards; |
|
|
0 |
0 |
if (total > 0) h->shard_iter = (h->shard_iter + 1) % h->num_shards; |
|
|
1 |
0 |
if (total > 0) h->shard_iter = (h->shard_iter + 1) % h->num_shards; |
|
|
0 |
0 |
if (total > 0) h->shard_iter = (h->shard_iter + 1) % h->num_shards; |
|
|
0 |
0 |
if (total > 0) h->shard_iter = (h->shard_iter + 1) % h->num_shards; |
|
3080
|
4 |
0 |
if (pos + 16 <= hdr->table_cap) { |
|
|
0 |
2 |
if (pos + 16 <= hdr->table_cap) { |
|
|
0 |
3 |
if (pos + 16 <= hdr->table_cap) { |
|
|
0 |
8 |
if (pos + 16 <= hdr->table_cap) { |
|
|
0 |
2 |
if (pos + 16 <= hdr->table_cap) { |
|
|
0 |
4 |
if (pos + 16 <= hdr->table_cap) { |
|
3083
|
4 |
0 |
uint16_t cutoff = emask ? (uint16_t)((1U << __builtin_ctz(emask)) - 1) : 0xFFFF; |
|
|
0 |
0 |
uint16_t cutoff = emask ? (uint16_t)((1U << __builtin_ctz(emask)) - 1) : 0xFFFF; |
|
|
0 |
0 |
uint16_t cutoff = emask ? (uint16_t)((1U << __builtin_ctz(emask)) - 1) : 0xFFFF; |
|
|
0 |
0 |
uint16_t cutoff = emask ? (uint16_t)((1U << __builtin_ctz(emask)) - 1) : 0xFFFF; |
|
|
0 |
0 |
uint16_t cutoff = emask ? (uint16_t)((1U << __builtin_ctz(emask)) - 1) : 0xFFFF; |
|
|
0 |
0 |
uint16_t cutoff = emask ? (uint16_t)((1U << __builtin_ctz(emask)) - 1) : 0xFFFF; |
|
3085
|
3 |
1 |
while (relevant) { |
|
|
0 |
0 |
while (relevant) { |
|
|
0 |
0 |
while (relevant) { |
|
|
0 |
0 |
while (relevant) { |
|
|
0 |
0 |
while (relevant) { |
|
|
0 |
0 |
while (relevant) { |
|
3089
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { *out_idx = idx; return 1; } |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { *out_idx = idx; return 1; } |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { *out_idx = idx; return 1; } |
|
3091
|
3 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { *out_idx = idx; return 1; } |
|
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { *out_idx = idx; return 1; } |
|
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { *out_idx = idx; return 1; } |
|
3095
|
1 |
0 |
if (emask) return 0; |
|
|
0 |
0 |
if (emask) return 0; |
|
|
0 |
0 |
if (emask) return 0; |
|
|
0 |
0 |
if (emask) return 0; |
|
|
0 |
0 |
if (emask) return 0; |
|
|
0 |
0 |
if (emask) return 0; |
|
3100
|
0 |
0 |
for (uint32_t i = probe_start; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = probe_start; i <= mask; i++) { |
|
|
3 |
0 |
for (uint32_t i = probe_start; i <= mask; i++) { |
|
|
8 |
0 |
for (uint32_t i = probe_start; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = probe_start; i <= mask; i++) { |
|
|
4 |
0 |
for (uint32_t i = probe_start; i <= mask; i++) { |
|
3105
|
0 |
0 |
if (st == SHM_EMPTY) return 0; |
|
|
1 |
1 |
if (st == SHM_EMPTY) return 0; |
|
|
1 |
2 |
if (st == SHM_EMPTY) return 0; |
|
|
1 |
7 |
if (st == SHM_EMPTY) return 0; |
|
|
1 |
1 |
if (st == SHM_EMPTY) return 0; |
|
|
1 |
3 |
if (st == SHM_EMPTY) return 0; |
|
3106
|
0 |
0 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
2 |
if (st != tag) continue; |
|
|
0 |
7 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
3 |
if (st != tag) continue; |
|
3108
|
7 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
3 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
3110
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
2 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
3127
|
4 |
13 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
4 |
SHM_SHARD_DISPATCH(h, key); |
|
3129
|
0 |
4 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
3 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
3133
|
0 |
4 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
2 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
3 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
5 |
12 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
2 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
4 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
3136
|
4 |
0 |
if (!h->lru_prev && !h->expires_at) { |
|
|
4 |
0 |
if (!h->lru_prev && !h->expires_at) { |
|
|
2 |
0 |
if (!h->lru_prev && !h->expires_at) { |
|
|
2 |
0 |
if (!h->lru_prev && !h->expires_at) { |
|
|
3 |
0 |
if (!h->lru_prev && !h->expires_at) { |
|
|
3 |
0 |
if (!h->lru_prev && !h->expires_at) { |
|
|
13 |
4 |
if (!h->lru_prev && !h->expires_at) { |
|
|
8 |
5 |
if (!h->lru_prev && !h->expires_at) { |
|
|
2 |
0 |
if (!h->lru_prev && !h->expires_at) { |
|
|
2 |
0 |
if (!h->lru_prev && !h->expires_at) { |
|
|
4 |
0 |
if (!h->lru_prev && !h->expires_at) { |
|
|
4 |
0 |
if (!h->lru_prev && !h->expires_at) { |
|
3140
|
7 |
1 |
if (SHM_FN(find_slot)(h, key, &idx)) { |
|
|
1 |
1 |
if (SHM_FN(find_slot)(h, key, &idx)) { |
|
|
3 |
1 |
if (SHM_FN(find_slot)(h, key, &idx)) { |
|
3142
|
3 |
1 |
if (SHM_FN(find_slot)(h, key_str, key_len, key_utf8, &idx)) { |
|
|
1 |
1 |
if (SHM_FN(find_slot)(h, key_str, key_len, key_utf8, &idx)) { |
|
|
2 |
1 |
if (SHM_FN(find_slot)(h, key_str, key_len, key_utf8, &idx)) { |
|
3168
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
10 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
3173
|
1 |
0 |
if (st == SHM_EMPTY) { |
|
|
1 |
0 |
if (st == SHM_EMPTY) { |
|
|
1 |
0 |
if (st == SHM_EMPTY) { |
|
|
4 |
6 |
if (st == SHM_EMPTY) { |
|
|
1 |
0 |
if (st == SHM_EMPTY) { |
|
|
1 |
0 |
if (st == SHM_EMPTY) { |
|
3174
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = slot; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = slot; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = slot; |
|
|
4 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = slot; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = slot; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = slot; |
|
3177
|
0 |
0 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
0 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
0 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
6 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
0 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
0 |
if (st == SHM_TOMBSTONE) { |
|
3178
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = slot; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = slot; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = slot; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = slot; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = slot; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = slot; |
|
3181
|
0 |
0 |
if (st != tag) continue; |
|
|
0 |
0 |
if (st != tag) continue; |
|
|
0 |
0 |
if (st != tag) continue; |
|
|
0 |
6 |
if (st != tag) continue; |
|
|
0 |
0 |
if (st != tag) continue; |
|
|
0 |
0 |
if (st != tag) continue; |
|
3183
|
6 |
0 |
if (SHM_KEY_EQ(&nodes[slot], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[slot], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[slot], key)) { |
|
3185
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[slot], h->arena, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[slot], h->arena, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[slot], h->arena, key_str, key_len, key_utf8)) { |
|
3188
|
0 |
0 |
if (SHM_IS_EXPIRED(h, slot, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, slot, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, slot, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, slot, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, slot, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, slot, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, slot, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, slot, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, slot, now)) { |
|
|
3 |
3 |
if (SHM_IS_EXPIRED(h, slot, now)) { |
|
|
2 |
1 |
if (SHM_IS_EXPIRED(h, slot, now)) { |
|
|
2 |
0 |
if (SHM_IS_EXPIRED(h, slot, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, slot, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, slot, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, slot, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, slot, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, slot, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, slot, now)) { |
|
3191
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = slot; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = slot; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = slot; |
|
|
2 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = slot; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = slot; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = slot; |
|
3197
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, slot); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, slot); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, slot); |
|
|
3 |
1 |
if (h->lru_prev) shm_lru_promote(h, slot); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, slot); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, slot); |
|
3198
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[slot] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[slot] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[slot] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[slot] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[slot] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[slot] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[slot] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[slot] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[slot] != 0) |
|
|
1 |
3 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[slot] != 0) |
|
|
1 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[slot] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[slot] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[slot] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[slot] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[slot] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[slot] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[slot] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[slot] != 0) |
|
3207
|
0 |
1 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
1 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
1 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
6 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
1 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
1 |
if (insert_pos == UINT32_MAX) { |
|
3215
|
0 |
1 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
1 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
1 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
1 |
5 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
1 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
1 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
1 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
3222
|
0 |
1 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].key_off, &nodes[insert_pos].key_len, key_str, key_len, key_utf8)) { |
|
|
0 |
1 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].key_off, &nodes[insert_pos].key_len, key_str, key_len, key_utf8)) { |
|
|
0 |
1 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].key_off, &nodes[insert_pos].key_len, key_str, key_len, key_utf8)) { |
|
3232
|
0 |
1 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
1 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
1 |
if (was_tombstone) hdr->tombstones--; |
|
|
2 |
4 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
1 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
1 |
if (was_tombstone) hdr->tombstones--; |
|
3234
|
0 |
1 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
1 |
5 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
3235
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
4 |
2 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
4 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
3255
|
1 |
5 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key); |
|
3257
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
3262
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
2 |
4 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
2 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
3276
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
6 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
3281
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
1 |
5 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
2 |
if (st == SHM_EMPTY) break; |
|
3282
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
5 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
2 |
if (st != tag) continue; |
|
3284
|
5 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
2 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
3286
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
3288
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
2 |
3 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
2 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
2 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
3295
|
1 |
0 |
if (nodes[idx].value == expected) { |
|
|
1 |
0 |
if (nodes[idx].value == expected) { |
|
|
1 |
0 |
if (nodes[idx].value == expected) { |
|
|
3 |
1 |
if (nodes[idx].value == expected) { |
|
|
1 |
0 |
if (nodes[idx].value == expected) { |
|
|
1 |
1 |
if (nodes[idx].value == expected) { |
|
3297
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
3 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
3298
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
1 |
2 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
1 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
1 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
3320
|
2 |
22 |
if (h->shard_handles) { |
|
|
0 |
3 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
2 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
1 |
if (h->shard_handles) { |
|
|
13 |
135 |
if (h->shard_handles) { |
|
|
0 |
2 |
if (h->shard_handles) { |
|
|
0 |
1 |
if (h->shard_handles) { |
|
3322
|
8 |
2 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
76 |
13 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
3324
|
2 |
0 |
return (uint32_t)(total > UINT32_MAX ? UINT32_MAX : total); |
|
|
0 |
0 |
return (uint32_t)(total > UINT32_MAX ? UINT32_MAX : total); |
|
|
0 |
0 |
return (uint32_t)(total > UINT32_MAX ? UINT32_MAX : total); |
|
|
0 |
0 |
return (uint32_t)(total > UINT32_MAX ? UINT32_MAX : total); |
|
|
0 |
0 |
return (uint32_t)(total > UINT32_MAX ? UINT32_MAX : total); |
|
|
0 |
0 |
return (uint32_t)(total > UINT32_MAX ? UINT32_MAX : total); |
|
|
0 |
0 |
return (uint32_t)(total > UINT32_MAX ? UINT32_MAX : total); |
|
|
13 |
0 |
return (uint32_t)(total > UINT32_MAX ? UINT32_MAX : total); |
|
|
0 |
0 |
return (uint32_t)(total > UINT32_MAX ? UINT32_MAX : total); |
|
|
0 |
0 |
return (uint32_t)(total > UINT32_MAX ? UINT32_MAX : total); |
|
3332
|
0 |
1 |
if (h->shard_handles) return SHM_FN(max_entries)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(max_entries)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(max_entries)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(max_entries)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(max_entries)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(max_entries)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(max_entries)(h->shard_handles[0]); |
|
|
2 |
5 |
if (h->shard_handles) return SHM_FN(max_entries)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(max_entries)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(max_entries)(h->shard_handles[0]); |
|
3339
|
0 |
1 |
if (h->shard_handles) return SHM_FN(max_size)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(max_size)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(max_size)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(max_size)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(max_size)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(max_size)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(max_size)(h->shard_handles[0]); |
|
|
2 |
7 |
if (h->shard_handles) return SHM_FN(max_size)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(max_size)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(max_size)(h->shard_handles[0]); |
|
3344
|
0 |
1 |
if (h->shard_handles) return SHM_FN(ttl)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(ttl)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(ttl)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(ttl)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(ttl)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(ttl)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(ttl)(h->shard_handles[0]); |
|
|
2 |
7 |
if (h->shard_handles) return SHM_FN(ttl)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(ttl)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(ttl)(h->shard_handles[0]); |
|
3358
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
3 |
30 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
3 |
SHM_SHARD_DISPATCH(h, key); |
|
3360
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
3362
|
0 |
2 |
if (!h->expires_at) return -1; /* TTL not enabled */ |
|
|
0 |
0 |
if (!h->expires_at) return -1; /* TTL not enabled */ |
|
|
0 |
2 |
if (!h->expires_at) return -1; /* TTL not enabled */ |
|
|
0 |
1 |
if (!h->expires_at) return -1; /* TTL not enabled */ |
|
|
0 |
1 |
if (!h->expires_at) return -1; /* TTL not enabled */ |
|
|
0 |
1 |
if (!h->expires_at) return -1; /* TTL not enabled */ |
|
|
0 |
0 |
if (!h->expires_at) return -1; /* TTL not enabled */ |
|
|
1 |
32 |
if (!h->expires_at) return -1; /* TTL not enabled */ |
|
|
0 |
0 |
if (!h->expires_at) return -1; /* TTL not enabled */ |
|
|
0 |
3 |
if (!h->expires_at) return -1; /* TTL not enabled */ |
|
3379
|
3 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
34 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
3 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
3384
|
1 |
2 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
2 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
1 |
33 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
3 |
if (st == SHM_EMPTY) break; |
|
3385
|
1 |
1 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
2 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
1 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
1 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
1 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
2 |
31 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
3 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
3387
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
31 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
3 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
3389
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
2 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
3392
|
0 |
1 |
if (exp == 0) { |
|
|
0 |
0 |
if (exp == 0) { |
|
|
1 |
1 |
if (exp == 0) { |
|
|
1 |
0 |
if (exp == 0) { |
|
|
1 |
0 |
if (exp == 0) { |
|
|
1 |
0 |
if (exp == 0) { |
|
|
0 |
0 |
if (exp == 0) { |
|
|
10 |
21 |
if (exp == 0) { |
|
|
0 |
0 |
if (exp == 0) { |
|
|
1 |
2 |
if (exp == 0) { |
|
3397
|
0 |
1 |
if (now >= exp) { |
|
|
0 |
0 |
if (now >= exp) { |
|
|
0 |
1 |
if (now >= exp) { |
|
|
0 |
0 |
if (now >= exp) { |
|
|
0 |
0 |
if (now >= exp) { |
|
|
0 |
0 |
if (now >= exp) { |
|
|
0 |
0 |
if (now >= exp) { |
|
|
0 |
21 |
if (now >= exp) { |
|
|
0 |
0 |
if (now >= exp) { |
|
|
0 |
2 |
if (now >= exp) { |
|
3422
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
1 |
3 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key); |
|
3424
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
3426
|
0 |
0 |
if (!h->expires_at) return 0; |
|
|
0 |
0 |
if (!h->expires_at) return 0; |
|
|
0 |
1 |
if (!h->expires_at) return 0; |
|
|
0 |
1 |
if (!h->expires_at) return 0; |
|
|
0 |
1 |
if (!h->expires_at) return 0; |
|
|
0 |
1 |
if (!h->expires_at) return 0; |
|
|
0 |
0 |
if (!h->expires_at) return 0; |
|
|
0 |
4 |
if (!h->expires_at) return 0; |
|
|
0 |
0 |
if (!h->expires_at) return 0; |
|
|
0 |
1 |
if (!h->expires_at) return 0; |
|
3444
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
4 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
3449
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
1 |
3 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
3450
|
0 |
0 |
if (st != tag) continue; |
|
|
0 |
0 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
0 |
if (st != tag) continue; |
|
|
0 |
3 |
if (st != tag) continue; |
|
|
0 |
0 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
3452
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
3 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
3454
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
3456
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
3 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
3 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
3 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
3487
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
1 |
4 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key); |
|
3489
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
3491
|
0 |
0 |
if (!h->expires_at) return 0; |
|
|
0 |
1 |
if (!h->expires_at) return 0; |
|
|
0 |
1 |
if (!h->expires_at) return 0; |
|
|
0 |
1 |
if (!h->expires_at) return 0; |
|
|
0 |
1 |
if (!h->expires_at) return 0; |
|
|
0 |
0 |
if (!h->expires_at) return 0; |
|
|
0 |
0 |
if (!h->expires_at) return 0; |
|
|
0 |
5 |
if (!h->expires_at) return 0; |
|
|
0 |
0 |
if (!h->expires_at) return 0; |
|
|
0 |
1 |
if (!h->expires_at) return 0; |
|
3509
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
5 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
3514
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
1 |
4 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
3515
|
0 |
0 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
0 |
if (st != tag) continue; |
|
|
0 |
0 |
if (st != tag) continue; |
|
|
0 |
4 |
if (st != tag) continue; |
|
|
0 |
0 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
3517
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
4 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
3519
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
3521
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
4 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
3 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
3 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
3530
|
0 |
0 |
if (ttl_sec == 0) |
|
|
0 |
1 |
if (ttl_sec == 0) |
|
|
0 |
1 |
if (ttl_sec == 0) |
|
|
0 |
1 |
if (ttl_sec == 0) |
|
|
0 |
1 |
if (ttl_sec == 0) |
|
|
0 |
0 |
if (ttl_sec == 0) |
|
|
0 |
0 |
if (ttl_sec == 0) |
|
|
1 |
3 |
if (ttl_sec == 0) |
|
|
0 |
0 |
if (ttl_sec == 0) |
|
|
0 |
1 |
if (ttl_sec == 0) |
|
3547
|
0 |
3 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
3 |
26 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
3549
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
12 |
3 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
3557
|
0 |
1 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
2 |
15 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
3559
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
8 |
2 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
3567
|
0 |
2 |
if (h->shard_handles) return SHM_FN(mmap_size)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(mmap_size)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(mmap_size)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(mmap_size)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(mmap_size)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(mmap_size)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(mmap_size)(h->shard_handles[0]); |
|
|
2 |
6 |
if (h->shard_handles) return SHM_FN(mmap_size)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(mmap_size)(h->shard_handles[0]); |
|
|
0 |
0 |
if (h->shard_handles) return SHM_FN(mmap_size)(h->shard_handles[0]); |
|
3578
|
0 |
1 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
1 |
40 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
3581
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
4 |
1 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) { |
|
3584
|
0 |
0 |
if (!done) all_done = 0; |
|
|
0 |
0 |
if (!done) all_done = 0; |
|
|
0 |
0 |
if (!done) all_done = 0; |
|
|
0 |
0 |
if (!done) all_done = 0; |
|
|
0 |
0 |
if (!done) all_done = 0; |
|
|
0 |
0 |
if (!done) all_done = 0; |
|
|
0 |
0 |
if (!done) all_done = 0; |
|
|
0 |
4 |
if (!done) all_done = 0; |
|
|
0 |
0 |
if (!done) all_done = 0; |
|
|
0 |
0 |
if (!done) all_done = 0; |
|
3586
|
0 |
0 |
if (done_out) *done_out = all_done; |
|
|
0 |
0 |
if (done_out) *done_out = all_done; |
|
|
0 |
0 |
if (done_out) *done_out = all_done; |
|
|
0 |
0 |
if (done_out) *done_out = all_done; |
|
|
0 |
0 |
if (done_out) *done_out = all_done; |
|
|
0 |
0 |
if (done_out) *done_out = all_done; |
|
|
0 |
0 |
if (done_out) *done_out = all_done; |
|
|
1 |
0 |
if (done_out) *done_out = all_done; |
|
|
0 |
0 |
if (done_out) *done_out = all_done; |
|
|
0 |
0 |
if (done_out) *done_out = all_done; |
|
3589
|
0 |
1 |
if (!h->expires_at) { |
|
|
0 |
0 |
if (!h->expires_at) { |
|
|
0 |
0 |
if (!h->expires_at) { |
|
|
0 |
0 |
if (!h->expires_at) { |
|
|
0 |
0 |
if (!h->expires_at) { |
|
|
0 |
0 |
if (!h->expires_at) { |
|
|
0 |
0 |
if (!h->expires_at) { |
|
|
1 |
39 |
if (!h->expires_at) { |
|
|
0 |
0 |
if (!h->expires_at) { |
|
|
0 |
0 |
if (!h->expires_at) { |
|
3590
|
0 |
0 |
if (done_out) *done_out = 1; /* trivially complete */ |
|
|
0 |
0 |
if (done_out) *done_out = 1; /* trivially complete */ |
|
|
0 |
0 |
if (done_out) *done_out = 1; /* trivially complete */ |
|
|
0 |
0 |
if (done_out) *done_out = 1; /* trivially complete */ |
|
|
0 |
0 |
if (done_out) *done_out = 1; /* trivially complete */ |
|
|
0 |
0 |
if (done_out) *done_out = 1; /* trivially complete */ |
|
|
0 |
0 |
if (done_out) *done_out = 1; /* trivially complete */ |
|
|
1 |
0 |
if (done_out) *done_out = 1; /* trivially complete */ |
|
|
0 |
0 |
if (done_out) *done_out = 1; /* trivially complete */ |
|
|
0 |
0 |
if (done_out) *done_out = 1; /* trivially complete */ |
|
3593
|
1 |
0 |
if (done_out) *done_out = 0; |
|
|
0 |
0 |
if (done_out) *done_out = 0; |
|
|
0 |
0 |
if (done_out) *done_out = 0; |
|
|
0 |
0 |
if (done_out) *done_out = 0; |
|
|
0 |
0 |
if (done_out) *done_out = 0; |
|
|
0 |
0 |
if (done_out) *done_out = 0; |
|
|
0 |
0 |
if (done_out) *done_out = 0; |
|
|
39 |
0 |
if (done_out) *done_out = 0; |
|
|
0 |
0 |
if (done_out) *done_out = 0; |
|
|
0 |
0 |
if (done_out) *done_out = 0; |
|
3605
|
0 |
1 |
if (start >= cap) start = 0; /* clamp after shrink */ |
|
|
0 |
0 |
if (start >= cap) start = 0; /* clamp after shrink */ |
|
|
0 |
0 |
if (start >= cap) start = 0; /* clamp after shrink */ |
|
|
0 |
0 |
if (start >= cap) start = 0; /* clamp after shrink */ |
|
|
0 |
0 |
if (start >= cap) start = 0; /* clamp after shrink */ |
|
|
0 |
0 |
if (start >= cap) start = 0; /* clamp after shrink */ |
|
|
0 |
0 |
if (start >= cap) start = 0; /* clamp after shrink */ |
|
|
0 |
39 |
if (start >= cap) start = 0; /* clamp after shrink */ |
|
|
0 |
0 |
if (start >= cap) start = 0; /* clamp after shrink */ |
|
|
0 |
0 |
if (start >= cap) start = 0; /* clamp after shrink */ |
|
3606
|
0 |
1 |
if (limit == 0) limit = 1; /* scan at least one slot */ |
|
|
0 |
0 |
if (limit == 0) limit = 1; /* scan at least one slot */ |
|
|
0 |
0 |
if (limit == 0) limit = 1; /* scan at least one slot */ |
|
|
0 |
0 |
if (limit == 0) limit = 1; /* scan at least one slot */ |
|
|
0 |
0 |
if (limit == 0) limit = 1; /* scan at least one slot */ |
|
|
0 |
0 |
if (limit == 0) limit = 1; /* scan at least one slot */ |
|
|
0 |
0 |
if (limit == 0) limit = 1; /* scan at least one slot */ |
|
|
0 |
39 |
if (limit == 0) limit = 1; /* scan at least one slot */ |
|
|
0 |
0 |
if (limit == 0) limit = 1; /* scan at least one slot */ |
|
|
0 |
0 |
if (limit == 0) limit = 1; /* scan at least one slot */ |
|
3607
|
1 |
0 |
if (limit > cap) limit = cap; /* can't scan more than exists */ |
|
|
0 |
0 |
if (limit > cap) limit = cap; /* can't scan more than exists */ |
|
|
0 |
0 |
if (limit > cap) limit = cap; /* can't scan more than exists */ |
|
|
0 |
0 |
if (limit > cap) limit = cap; /* can't scan more than exists */ |
|
|
0 |
0 |
if (limit > cap) limit = cap; /* can't scan more than exists */ |
|
|
0 |
0 |
if (limit > cap) limit = cap; /* can't scan more than exists */ |
|
|
0 |
0 |
if (limit > cap) limit = cap; /* can't scan more than exists */ |
|
|
17 |
22 |
if (limit > cap) limit = cap; /* can't scan more than exists */ |
|
|
0 |
0 |
if (limit > cap) limit = cap; /* can't scan more than exists */ |
|
|
0 |
0 |
if (limit > cap) limit = cap; /* can't scan more than exists */ |
|
3609
|
16 |
1 |
for (uint32_t n = 0; n < limit; n++) { |
|
|
0 |
0 |
for (uint32_t n = 0; n < limit; n++) { |
|
|
0 |
0 |
for (uint32_t n = 0; n < limit; n++) { |
|
|
0 |
0 |
for (uint32_t n = 0; n < limit; n++) { |
|
|
0 |
0 |
for (uint32_t n = 0; n < limit; n++) { |
|
|
0 |
0 |
for (uint32_t n = 0; n < limit; n++) { |
|
|
0 |
0 |
for (uint32_t n = 0; n < limit; n++) { |
|
|
900 |
39 |
for (uint32_t n = 0; n < limit; n++) { |
|
|
0 |
0 |
for (uint32_t n = 0; n < limit; n++) { |
|
|
0 |
0 |
for (uint32_t n = 0; n < limit; n++) { |
|
3611
|
2 |
14 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
2 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
2 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
319 |
581 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
316 |
3 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
245 |
71 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
|
0 |
0 |
if (SHM_IS_LIVE(states[i]) && h->expires_at[i] != 0 && now >= h->expires_at[i]) { |
|
3619
|
0 |
1 |
int done = (limit >= cap || start + limit >= cap); |
|
|
0 |
0 |
int done = (limit >= cap || start + limit >= cap); |
|
|
0 |
0 |
int done = (limit >= cap || start + limit >= cap); |
|
|
0 |
0 |
int done = (limit >= cap || start + limit >= cap); |
|
|
0 |
0 |
int done = (limit >= cap || start + limit >= cap); |
|
|
0 |
0 |
int done = (limit >= cap || start + limit >= cap); |
|
|
0 |
0 |
int done = (limit >= cap || start + limit >= cap); |
|
|
0 |
0 |
int done = (limit >= cap || start + limit >= cap); |
|
|
0 |
0 |
int done = (limit >= cap || start + limit >= cap); |
|
|
0 |
0 |
int done = (limit >= cap || start + limit >= cap); |
|
|
0 |
0 |
int done = (limit >= cap || start + limit >= cap); |
|
|
0 |
0 |
int done = (limit >= cap || start + limit >= cap); |
|
|
0 |
0 |
int done = (limit >= cap || start + limit >= cap); |
|
|
0 |
0 |
int done = (limit >= cap || start + limit >= cap); |
|
|
22 |
17 |
int done = (limit >= cap || start + limit >= cap); |
|
|
2 |
20 |
int done = (limit >= cap || start + limit >= cap); |
|
|
0 |
0 |
int done = (limit >= cap || start + limit >= cap); |
|
|
0 |
0 |
int done = (limit >= cap || start + limit >= cap); |
|
|
0 |
0 |
int done = (limit >= cap || start + limit >= cap); |
|
|
0 |
0 |
int done = (limit >= cap || start + limit >= cap); |
|
3620
|
0 |
1 |
hdr->flush_cursor = done ? 0 : next; |
|
|
0 |
0 |
hdr->flush_cursor = done ? 0 : next; |
|
|
0 |
0 |
hdr->flush_cursor = done ? 0 : next; |
|
|
0 |
0 |
hdr->flush_cursor = done ? 0 : next; |
|
|
0 |
0 |
hdr->flush_cursor = done ? 0 : next; |
|
|
0 |
0 |
hdr->flush_cursor = done ? 0 : next; |
|
|
0 |
0 |
hdr->flush_cursor = done ? 0 : next; |
|
|
20 |
19 |
hdr->flush_cursor = done ? 0 : next; |
|
|
0 |
0 |
hdr->flush_cursor = done ? 0 : next; |
|
|
0 |
0 |
hdr->flush_cursor = done ? 0 : next; |
|
3622
|
1 |
0 |
if (done_out) *done_out = done; |
|
|
0 |
0 |
if (done_out) *done_out = done; |
|
|
0 |
0 |
if (done_out) *done_out = done; |
|
|
0 |
0 |
if (done_out) *done_out = done; |
|
|
0 |
0 |
if (done_out) *done_out = done; |
|
|
0 |
0 |
if (done_out) *done_out = done; |
|
|
0 |
0 |
if (done_out) *done_out = done; |
|
|
39 |
0 |
if (done_out) *done_out = done; |
|
|
0 |
0 |
if (done_out) *done_out = done; |
|
|
0 |
0 |
if (done_out) *done_out = done; |
|
3626
|
1 |
0 |
if (done && flushed > 0) |
|
|
1 |
0 |
if (done && flushed > 0) |
|
|
0 |
0 |
if (done && flushed > 0) |
|
|
0 |
0 |
if (done && flushed > 0) |
|
|
0 |
0 |
if (done && flushed > 0) |
|
|
0 |
0 |
if (done && flushed > 0) |
|
|
0 |
0 |
if (done && flushed > 0) |
|
|
0 |
0 |
if (done && flushed > 0) |
|
|
0 |
0 |
if (done && flushed > 0) |
|
|
0 |
0 |
if (done && flushed > 0) |
|
|
0 |
0 |
if (done && flushed > 0) |
|
|
0 |
0 |
if (done && flushed > 0) |
|
|
0 |
0 |
if (done && flushed > 0) |
|
|
0 |
0 |
if (done && flushed > 0) |
|
|
19 |
20 |
if (done && flushed > 0) |
|
|
9 |
10 |
if (done && flushed > 0) |
|
|
0 |
0 |
if (done && flushed > 0) |
|
|
0 |
0 |
if (done && flushed > 0) |
|
|
0 |
0 |
if (done && flushed > 0) |
|
|
0 |
0 |
if (done && flushed > 0) |
|
3636
|
0 |
1 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
1 |
11 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
3638
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
4 |
1 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
3642
|
0 |
1 |
if (!h->expires_at) return 0; |
|
|
0 |
0 |
if (!h->expires_at) return 0; |
|
|
0 |
0 |
if (!h->expires_at) return 0; |
|
|
0 |
0 |
if (!h->expires_at) return 0; |
|
|
0 |
0 |
if (!h->expires_at) return 0; |
|
|
0 |
0 |
if (!h->expires_at) return 0; |
|
|
0 |
0 |
if (!h->expires_at) return 0; |
|
|
1 |
10 |
if (!h->expires_at) return 0; |
|
|
0 |
0 |
if (!h->expires_at) return 0; |
|
|
0 |
0 |
if (!h->expires_at) return 0; |
|
3657
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
1 |
8 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
3659
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
1 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
3661
|
2 |
0 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
|
0 |
2 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
|
1 |
0 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
|
0 |
1 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
|
0 |
0 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
|
0 |
0 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
|
0 |
0 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
|
0 |
0 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
|
0 |
0 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
|
0 |
0 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
|
0 |
0 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
|
0 |
0 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
|
0 |
0 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
|
0 |
0 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
|
8 |
1 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
|
1 |
7 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
|
0 |
0 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
|
0 |
0 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
|
0 |
0 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
|
0 |
0 |
if (!h->lru_prev && !h->expires_at) return 0; /* nothing to do */ |
|
3666
|
2 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
1 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
7 |
1 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
3679
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
1 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
8 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
3684
|
1 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
1 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
1 |
7 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
|
0 |
0 |
if (st == SHM_EMPTY) break; |
|
3685
|
0 |
1 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
1 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
7 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
|
0 |
0 |
if (st != tag) continue; /* tombstone or tag mismatch */ |
|
3687
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
7 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
3689
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
3691
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
6 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
5 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
4 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
3700
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
1 |
5 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
3701
|
1 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
1 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
1 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
1 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
1 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
1 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
5 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
5 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
4 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) { |
|
3717
|
0 |
1 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
1 |
11 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
3719
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
4 |
1 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
3724
|
0 |
1 |
if (target > hdr->max_table_cap) return 0; |
|
|
0 |
0 |
if (target > hdr->max_table_cap) return 0; |
|
|
0 |
0 |
if (target > hdr->max_table_cap) return 0; |
|
|
0 |
0 |
if (target > hdr->max_table_cap) return 0; |
|
|
0 |
0 |
if (target > hdr->max_table_cap) return 0; |
|
|
0 |
0 |
if (target > hdr->max_table_cap) return 0; |
|
|
0 |
0 |
if (target > hdr->max_table_cap) return 0; |
|
|
2 |
9 |
if (target > hdr->max_table_cap) return 0; |
|
|
0 |
0 |
if (target > hdr->max_table_cap) return 0; |
|
|
0 |
0 |
if (target > hdr->max_table_cap) return 0; |
|
3727
|
0 |
1 |
if (needed < SHM_INITIAL_CAP) needed = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (needed < SHM_INITIAL_CAP) needed = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (needed < SHM_INITIAL_CAP) needed = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (needed < SHM_INITIAL_CAP) needed = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (needed < SHM_INITIAL_CAP) needed = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (needed < SHM_INITIAL_CAP) needed = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (needed < SHM_INITIAL_CAP) needed = SHM_INITIAL_CAP; |
|
|
0 |
9 |
if (needed < SHM_INITIAL_CAP) needed = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (needed < SHM_INITIAL_CAP) needed = SHM_INITIAL_CAP; |
|
|
0 |
0 |
if (needed < SHM_INITIAL_CAP) needed = SHM_INITIAL_CAP; |
|
3728
|
0 |
1 |
if (needed <= hdr->table_cap) return 1; /* already big enough */ |
|
|
0 |
0 |
if (needed <= hdr->table_cap) return 1; /* already big enough */ |
|
|
0 |
0 |
if (needed <= hdr->table_cap) return 1; /* already big enough */ |
|
|
0 |
0 |
if (needed <= hdr->table_cap) return 1; /* already big enough */ |
|
|
0 |
0 |
if (needed <= hdr->table_cap) return 1; /* already big enough */ |
|
|
0 |
0 |
if (needed <= hdr->table_cap) return 1; /* already big enough */ |
|
|
0 |
0 |
if (needed <= hdr->table_cap) return 1; /* already big enough */ |
|
|
1 |
8 |
if (needed <= hdr->table_cap) return 1; /* already big enough */ |
|
|
0 |
0 |
if (needed <= hdr->table_cap) return 1; /* already big enough */ |
|
|
0 |
0 |
if (needed <= hdr->table_cap) return 1; /* already big enough */ |
|
3729
|
0 |
1 |
if (needed > hdr->max_table_cap) return 0; /* exceeds max */ |
|
|
0 |
0 |
if (needed > hdr->max_table_cap) return 0; /* exceeds max */ |
|
|
0 |
0 |
if (needed > hdr->max_table_cap) return 0; /* exceeds max */ |
|
|
0 |
0 |
if (needed > hdr->max_table_cap) return 0; /* exceeds max */ |
|
|
0 |
0 |
if (needed > hdr->max_table_cap) return 0; /* exceeds max */ |
|
|
0 |
0 |
if (needed > hdr->max_table_cap) return 0; /* exceeds max */ |
|
|
0 |
0 |
if (needed > hdr->max_table_cap) return 0; /* exceeds max */ |
|
|
1 |
7 |
if (needed > hdr->max_table_cap) return 0; /* exceeds max */ |
|
|
0 |
0 |
if (needed > hdr->max_table_cap) return 0; /* exceeds max */ |
|
|
0 |
0 |
if (needed > hdr->max_table_cap) return 0; /* exceeds max */ |
|
3734
|
1 |
0 |
if (needed > hdr->table_cap) |
|
|
0 |
0 |
if (needed > hdr->table_cap) |
|
|
0 |
0 |
if (needed > hdr->table_cap) |
|
|
0 |
0 |
if (needed > hdr->table_cap) |
|
|
0 |
0 |
if (needed > hdr->table_cap) |
|
|
0 |
0 |
if (needed > hdr->table_cap) |
|
|
0 |
0 |
if (needed > hdr->table_cap) |
|
|
7 |
0 |
if (needed > hdr->table_cap) |
|
|
0 |
0 |
if (needed > hdr->table_cap) |
|
|
0 |
0 |
if (needed > hdr->table_cap) |
|
3744
|
0 |
3 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
3 |
22 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
3746
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
12 |
3 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
3754
|
0 |
1 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
2 |
14 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
3756
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
8 |
2 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
3764
|
0 |
1 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
2 |
10 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
3766
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
8 |
2 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
3774
|
0 |
3 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
2 |
10 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
3776
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
8 |
2 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
3780
|
3 |
0 |
return h->arena ? __atomic_load_n(&h->hdr->arena_bump, __ATOMIC_RELAXED) : 0; |
|
|
0 |
0 |
return h->arena ? __atomic_load_n(&h->hdr->arena_bump, __ATOMIC_RELAXED) : 0; |
|
|
0 |
0 |
return h->arena ? __atomic_load_n(&h->hdr->arena_bump, __ATOMIC_RELAXED) : 0; |
|
|
0 |
0 |
return h->arena ? __atomic_load_n(&h->hdr->arena_bump, __ATOMIC_RELAXED) : 0; |
|
|
0 |
0 |
return h->arena ? __atomic_load_n(&h->hdr->arena_bump, __ATOMIC_RELAXED) : 0; |
|
|
0 |
0 |
return h->arena ? __atomic_load_n(&h->hdr->arena_bump, __ATOMIC_RELAXED) : 0; |
|
|
0 |
0 |
return h->arena ? __atomic_load_n(&h->hdr->arena_bump, __ATOMIC_RELAXED) : 0; |
|
|
0 |
10 |
return h->arena ? __atomic_load_n(&h->hdr->arena_bump, __ATOMIC_RELAXED) : 0; |
|
|
0 |
0 |
return h->arena ? __atomic_load_n(&h->hdr->arena_bump, __ATOMIC_RELAXED) : 0; |
|
|
0 |
0 |
return h->arena ? __atomic_load_n(&h->hdr->arena_bump, __ATOMIC_RELAXED) : 0; |
|
3784
|
0 |
2 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
2 |
10 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
3786
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
8 |
2 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
3790
|
2 |
0 |
return h->arena ? h->hdr->arena_cap : 0; |
|
|
0 |
0 |
return h->arena ? h->hdr->arena_cap : 0; |
|
|
0 |
0 |
return h->arena ? h->hdr->arena_cap : 0; |
|
|
0 |
0 |
return h->arena ? h->hdr->arena_cap : 0; |
|
|
0 |
0 |
return h->arena ? h->hdr->arena_cap : 0; |
|
|
0 |
0 |
return h->arena ? h->hdr->arena_cap : 0; |
|
|
0 |
0 |
return h->arena ? h->hdr->arena_cap : 0; |
|
|
0 |
10 |
return h->arena ? h->hdr->arena_cap : 0; |
|
|
0 |
0 |
return h->arena ? h->hdr->arena_cap : 0; |
|
|
0 |
0 |
return h->arena ? h->hdr->arena_cap : 0; |
|
3796
|
0 |
1 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
2 |
25 |
if (h->shard_handles) { |
|
|
0 |
1 |
if (h->shard_handles) { |
|
|
0 |
1 |
if (h->shard_handles) { |
|
3797
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
20 |
2 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
3811
|
0 |
1 |
if (hdr->table_cap > SHM_INITIAL_CAP) { |
|
|
0 |
0 |
if (hdr->table_cap > SHM_INITIAL_CAP) { |
|
|
0 |
0 |
if (hdr->table_cap > SHM_INITIAL_CAP) { |
|
|
0 |
0 |
if (hdr->table_cap > SHM_INITIAL_CAP) { |
|
|
0 |
0 |
if (hdr->table_cap > SHM_INITIAL_CAP) { |
|
|
0 |
0 |
if (hdr->table_cap > SHM_INITIAL_CAP) { |
|
|
0 |
0 |
if (hdr->table_cap > SHM_INITIAL_CAP) { |
|
|
20 |
5 |
if (hdr->table_cap > SHM_INITIAL_CAP) { |
|
|
0 |
1 |
if (hdr->table_cap > SHM_INITIAL_CAP) { |
|
|
0 |
1 |
if (hdr->table_cap > SHM_INITIAL_CAP) { |
|
3821
|
1 |
0 |
if (h->arena) { |
|
|
0 |
0 |
if (h->arena) { |
|
|
0 |
0 |
if (h->arena) { |
|
|
0 |
0 |
if (h->arena) { |
|
|
0 |
0 |
if (h->arena) { |
|
|
0 |
0 |
if (h->arena) { |
|
|
0 |
0 |
if (h->arena) { |
|
|
0 |
25 |
if (h->arena) { |
|
|
0 |
1 |
if (h->arena) { |
|
|
0 |
1 |
if (h->arena) { |
|
3828
|
0 |
1 |
if (h->lru_prev) { |
|
|
0 |
0 |
if (h->lru_prev) { |
|
|
0 |
0 |
if (h->lru_prev) { |
|
|
0 |
0 |
if (h->lru_prev) { |
|
|
0 |
0 |
if (h->lru_prev) { |
|
|
0 |
0 |
if (h->lru_prev) { |
|
|
0 |
0 |
if (h->lru_prev) { |
|
|
2 |
23 |
if (h->lru_prev) { |
|
|
0 |
1 |
if (h->lru_prev) { |
|
|
0 |
1 |
if (h->lru_prev) { |
|
3831
|
0 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, hdr->max_table_cap); |
|
|
0 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, hdr->max_table_cap); |
|
|
0 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, hdr->max_table_cap); |
|
|
0 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, hdr->max_table_cap); |
|
|
0 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, hdr->max_table_cap); |
|
|
0 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, hdr->max_table_cap); |
|
|
0 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, hdr->max_table_cap); |
|
|
2 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, hdr->max_table_cap); |
|
|
0 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, hdr->max_table_cap); |
|
|
0 |
0 |
if (h->lru_accessed) memset(h->lru_accessed, 0, hdr->max_table_cap); |
|
3837
|
0 |
1 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
0 |
if (h->expires_at) { |
|
|
0 |
25 |
if (h->expires_at) { |
|
|
0 |
1 |
if (h->expires_at) { |
|
|
0 |
1 |
if (h->expires_at) { |
|
3848
|
0 |
1 |
if (h->iter_active) { |
|
|
0 |
0 |
if (h->iter_active) { |
|
|
0 |
0 |
if (h->iter_active) { |
|
|
0 |
0 |
if (h->iter_active) { |
|
|
0 |
0 |
if (h->iter_active) { |
|
|
0 |
0 |
if (h->iter_active) { |
|
|
0 |
0 |
if (h->iter_active) { |
|
|
1 |
24 |
if (h->iter_active) { |
|
|
0 |
1 |
if (h->iter_active) { |
|
|
0 |
1 |
if (h->iter_active) { |
|
3850
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
1 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
3858
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
1 |
5 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
3859
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
4 |
1 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
|
0 |
0 |
for (uint32_t i = 0; i < h->num_shards; i++) |
|
3864
|
0 |
0 |
if (h->iter_active) { |
|
|
0 |
0 |
if (h->iter_active) { |
|
|
0 |
0 |
if (h->iter_active) { |
|
|
0 |
0 |
if (h->iter_active) { |
|
|
0 |
0 |
if (h->iter_active) { |
|
|
0 |
0 |
if (h->iter_active) { |
|
|
0 |
0 |
if (h->iter_active) { |
|
|
1 |
4 |
if (h->iter_active) { |
|
|
0 |
0 |
if (h->iter_active) { |
|
|
0 |
0 |
if (h->iter_active) { |
|
3866
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
1 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
3888
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key); |
|
|
2 |
5 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key); |
|
3890
|
0 |
8 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
0 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
|
0 |
2 |
SHM_SHARD_DISPATCH(h, key_str, key_len); |
|
3895
|
0 |
8 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
2 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
2 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
3 |
4 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
2 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
2 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
3911
|
8 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
0 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
7 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
|
2 |
0 |
for (uint32_t i = 0; i <= mask; i++) { |
|
3917
|
5 |
3 |
if (st == SHM_EMPTY) { |
|
|
0 |
0 |
if (st == SHM_EMPTY) { |
|
|
0 |
0 |
if (st == SHM_EMPTY) { |
|
|
1 |
1 |
if (st == SHM_EMPTY) { |
|
|
0 |
0 |
if (st == SHM_EMPTY) { |
|
|
0 |
0 |
if (st == SHM_EMPTY) { |
|
|
1 |
1 |
if (st == SHM_EMPTY) { |
|
|
2 |
5 |
if (st == SHM_EMPTY) { |
|
|
1 |
1 |
if (st == SHM_EMPTY) { |
|
|
1 |
1 |
if (st == SHM_EMPTY) { |
|
3918
|
5 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
2 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
3921
|
0 |
3 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
0 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
0 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
0 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
0 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
5 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
|
0 |
1 |
if (st == SHM_TOMBSTONE) { |
|
3922
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
3925
|
0 |
3 |
if (st != tag) continue; |
|
|
0 |
0 |
if (st != tag) continue; |
|
|
0 |
0 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
0 |
if (st != tag) continue; |
|
|
0 |
0 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
5 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
|
0 |
1 |
if (st != tag) continue; |
|
3927
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
5 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ(&nodes[idx], key)) { |
|
3929
|
3 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
|
1 |
0 |
if (SHM_KEY_EQ_STR(&nodes[idx], h->arena, key_str, key_len, key_utf8)) { |
|
3932
|
0 |
3 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
3 |
2 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
2 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
1 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
1 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, idx, now)) { |
|
3934
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
1 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) insert_pos = idx; |
|
3940
|
3 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
|
0 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
|
0 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
|
1 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[idx].val_len); |
|
3941
|
0 |
3 |
if (!shm_ensure_copy_buf(h, vl)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, vl)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, vl)) { |
|
|
0 |
1 |
if (!shm_ensure_copy_buf(h, vl)) { |
|
3954
|
0 |
3 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
4 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_promote(h, idx); |
|
3955
|
0 |
3 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
2 |
2 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
2 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
1 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0 && h->expires_at[idx] != 0) |
|
3964
|
0 |
5 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
1 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
0 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
1 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
3 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
1 |
if (insert_pos == UINT32_MAX) { |
|
|
0 |
1 |
if (insert_pos == UINT32_MAX) { |
|
3971
|
0 |
5 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
1 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
1 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
3 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
1 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
1 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
|
0 |
0 |
if (hdr->max_size > 0 && hdr->size >= hdr->max_size) |
|
3979
|
0 |
5 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].key_off, &nodes[insert_pos].key_len, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].key_off, &nodes[insert_pos].key_len, key_str, key_len, key_utf8)) { |
|
|
0 |
0 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].key_off, &nodes[insert_pos].key_len, key_str, key_len, key_utf8)) { |
|
|
0 |
1 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].key_off, &nodes[insert_pos].key_len, key_str, key_len, key_utf8)) { |
|
3987
|
5 |
0 |
if (!shm_ensure_copy_buf(h, def_len > 0 ? def_len : 1)) { |
|
|
0 |
5 |
if (!shm_ensure_copy_buf(h, def_len > 0 ? def_len : 1)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, def_len > 0 ? def_len : 1)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, def_len > 0 ? def_len : 1)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, def_len > 0 ? def_len : 1)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, def_len > 0 ? def_len : 1)) { |
|
|
1 |
0 |
if (!shm_ensure_copy_buf(h, def_len > 0 ? def_len : 1)) { |
|
|
0 |
1 |
if (!shm_ensure_copy_buf(h, def_len > 0 ? def_len : 1)) { |
|
3995
|
0 |
5 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].val_off, &nodes[insert_pos].val_len, def_str, def_len, def_utf8)) { |
|
|
0 |
0 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].val_off, &nodes[insert_pos].val_len, def_str, def_len, def_utf8)) { |
|
|
0 |
0 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].val_off, &nodes[insert_pos].val_len, def_str, def_len, def_utf8)) { |
|
|
0 |
1 |
if (!shm_str_store(hdr, h->arena, &nodes[insert_pos].val_off, &nodes[insert_pos].val_len, def_str, def_len, def_utf8)) { |
|
4009
|
0 |
5 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
0 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
0 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
1 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
0 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
0 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
1 |
if (was_tombstone) hdr->tombstones--; |
|
|
1 |
2 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
1 |
if (was_tombstone) hdr->tombstones--; |
|
|
0 |
1 |
if (was_tombstone) hdr->tombstones--; |
|
4011
|
0 |
5 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
0 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
3 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
|
0 |
1 |
if (h->lru_prev) shm_lru_push_front(h, insert_pos); |
|
4012
|
0 |
5 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
1 |
2 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
1 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
1 |
if (h->expires_at && hdr->default_ttl > 0) |
|
|
0 |
0 |
if (h->expires_at && hdr->default_ttl > 0) |
|
4043
|
0 |
3 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
62 |
668 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
|
0 |
0 |
if (h->shard_handles) { |
|
4044
|
0 |
0 |
while (h->shard_iter < h->num_shards) { |
|
|
0 |
0 |
while (h->shard_iter < h->num_shards) { |
|
|
0 |
0 |
while (h->shard_iter < h->num_shards) { |
|
|
0 |
0 |
while (h->shard_iter < h->num_shards) { |
|
|
0 |
0 |
while (h->shard_iter < h->num_shards) { |
|
|
0 |
0 |
while (h->shard_iter < h->num_shards) { |
|
|
0 |
0 |
while (h->shard_iter < h->num_shards) { |
|
|
68 |
2 |
while (h->shard_iter < h->num_shards) { |
|
|
0 |
0 |
while (h->shard_iter < h->num_shards) { |
|
|
0 |
0 |
while (h->shard_iter < h->num_shards) { |
|
4057
|
0 |
0 |
if (rc) return 1; |
|
|
0 |
0 |
if (rc) return 1; |
|
|
0 |
0 |
if (rc) return 1; |
|
|
0 |
0 |
if (rc) return 1; |
|
|
0 |
0 |
if (rc) return 1; |
|
|
0 |
0 |
if (rc) return 1; |
|
|
0 |
0 |
if (rc) return 1; |
|
|
60 |
8 |
if (rc) return 1; |
|
|
0 |
0 |
if (rc) return 1; |
|
|
0 |
0 |
if (rc) return 1; |
|
4067
|
0 |
3 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
668 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
4071
|
1 |
2 |
if (!h->iter_active) { |
|
|
0 |
0 |
if (!h->iter_active) { |
|
|
0 |
0 |
if (!h->iter_active) { |
|
|
0 |
0 |
if (!h->iter_active) { |
|
|
0 |
0 |
if (!h->iter_active) { |
|
|
0 |
0 |
if (!h->iter_active) { |
|
|
0 |
0 |
if (!h->iter_active) { |
|
|
22 |
646 |
if (!h->iter_active) { |
|
|
0 |
0 |
if (!h->iter_active) { |
|
|
0 |
0 |
if (!h->iter_active) { |
|
4078
|
0 |
3 |
if (h->iter_gen != hdr->table_gen) { |
|
|
0 |
0 |
if (h->iter_gen != hdr->table_gen) { |
|
|
0 |
0 |
if (h->iter_gen != hdr->table_gen) { |
|
|
0 |
0 |
if (h->iter_gen != hdr->table_gen) { |
|
|
0 |
0 |
if (h->iter_gen != hdr->table_gen) { |
|
|
0 |
0 |
if (h->iter_gen != hdr->table_gen) { |
|
|
0 |
0 |
if (h->iter_gen != hdr->table_gen) { |
|
|
0 |
668 |
if (h->iter_gen != hdr->table_gen) { |
|
|
0 |
0 |
if (h->iter_gen != hdr->table_gen) { |
|
|
0 |
0 |
if (h->iter_gen != hdr->table_gen) { |
|
4083
|
2 |
1 |
while (shm_find_next_live(states, hdr->table_cap, &h->iter_pos)) { |
|
|
0 |
0 |
while (shm_find_next_live(states, hdr->table_cap, &h->iter_pos)) { |
|
|
0 |
0 |
while (shm_find_next_live(states, hdr->table_cap, &h->iter_pos)) { |
|
|
0 |
0 |
while (shm_find_next_live(states, hdr->table_cap, &h->iter_pos)) { |
|
|
0 |
0 |
while (shm_find_next_live(states, hdr->table_cap, &h->iter_pos)) { |
|
|
0 |
0 |
while (shm_find_next_live(states, hdr->table_cap, &h->iter_pos)) { |
|
|
0 |
0 |
while (shm_find_next_live(states, hdr->table_cap, &h->iter_pos)) { |
|
|
649 |
19 |
while (shm_find_next_live(states, hdr->table_cap, &h->iter_pos)) { |
|
|
0 |
0 |
while (shm_find_next_live(states, hdr->table_cap, &h->iter_pos)) { |
|
|
0 |
0 |
while (shm_find_next_live(states, hdr->table_cap, &h->iter_pos)) { |
|
4087
|
0 |
2 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
649 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
4094
|
2 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[pos].key_len); |
|
|
0 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[pos].key_len); |
|
|
0 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[pos].key_len); |
|
|
0 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[pos].key_len); |
|
4096
|
2 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[pos].val_len); |
|
4098
|
0 |
2 |
if (total64 > UINT32_MAX) { |
|
4101
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
4109
|
0 |
2 |
if (!shm_ensure_copy_buf(h, total)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, total)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, total)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, total)) { |
|
4112
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
4124
|
2 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[pos].val_len); |
|
|
0 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[pos].val_len); |
|
|
0 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[pos].val_len); |
|
|
0 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[pos].val_len); |
|
4126
|
2 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[pos].key_len); |
|
4130
|
0 |
0 |
if (!shm_ensure_copy_buf(h, vl)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, vl)) { |
|
|
0 |
0 |
if (!shm_ensure_copy_buf(h, vl)) { |
|
4133
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
4153
|
1 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
19 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
4173
|
32 |
2 |
while (c->shard_idx < c->shard_count) { |
|
|
6 |
1 |
while (c->shard_idx < c->shard_count) { |
|
|
0 |
0 |
while (c->shard_idx < c->shard_count) { |
|
|
0 |
0 |
while (c->shard_idx < c->shard_count) { |
|
|
0 |
0 |
while (c->shard_idx < c->shard_count) { |
|
|
0 |
0 |
while (c->shard_idx < c->shard_count) { |
|
|
3 |
1 |
while (c->shard_idx < c->shard_count) { |
|
|
766 |
14 |
while (c->shard_idx < c->shard_count) { |
|
|
0 |
0 |
while (c->shard_idx < c->shard_count) { |
|
|
0 |
0 |
while (c->shard_idx < c->shard_count) { |
|
4178
|
0 |
32 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
6 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
3 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
766 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
|
0 |
0 |
uint32_t now = h->expires_at ? shm_now() : 0; |
|
4183
|
0 |
32 |
if (c->gen != hdr->table_gen) { |
|
|
0 |
6 |
if (c->gen != hdr->table_gen) { |
|
|
0 |
0 |
if (c->gen != hdr->table_gen) { |
|
|
0 |
0 |
if (c->gen != hdr->table_gen) { |
|
|
0 |
0 |
if (c->gen != hdr->table_gen) { |
|
|
0 |
0 |
if (c->gen != hdr->table_gen) { |
|
|
0 |
3 |
if (c->gen != hdr->table_gen) { |
|
|
0 |
766 |
if (c->gen != hdr->table_gen) { |
|
|
0 |
0 |
if (c->gen != hdr->table_gen) { |
|
|
0 |
0 |
if (c->gen != hdr->table_gen) { |
|
4188
|
27 |
5 |
while (shm_find_next_live(states, hdr->table_cap, &c->iter_pos)) { |
|
|
5 |
1 |
while (shm_find_next_live(states, hdr->table_cap, &c->iter_pos)) { |
|
|
0 |
0 |
while (shm_find_next_live(states, hdr->table_cap, &c->iter_pos)) { |
|
|
0 |
0 |
while (shm_find_next_live(states, hdr->table_cap, &c->iter_pos)) { |
|
|
0 |
0 |
while (shm_find_next_live(states, hdr->table_cap, &c->iter_pos)) { |
|
|
0 |
0 |
while (shm_find_next_live(states, hdr->table_cap, &c->iter_pos)) { |
|
|
2 |
1 |
while (shm_find_next_live(states, hdr->table_cap, &c->iter_pos)) { |
|
|
731 |
35 |
while (shm_find_next_live(states, hdr->table_cap, &c->iter_pos)) { |
|
|
0 |
0 |
while (shm_find_next_live(states, hdr->table_cap, &c->iter_pos)) { |
|
|
0 |
0 |
while (shm_find_next_live(states, hdr->table_cap, &c->iter_pos)) { |
|
4191
|
0 |
27 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
5 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
2 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
731 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
|
0 |
0 |
if (SHM_IS_EXPIRED(h, pos, now)) |
|
4198
|
27 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[pos].key_len); |
|
|
5 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[pos].key_len); |
|
|
0 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[pos].key_len); |
|
|
0 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[pos].key_len); |
|
4200
|
27 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[pos].val_len); |
|
4202
|
0 |
27 |
if (total64 > UINT32_MAX) { |
|
4210
|
0 |
27 |
if (!shm_cursor_ensure_copy_buf(c, total)) { |
|
|
0 |
5 |
if (!shm_cursor_ensure_copy_buf(c, total)) { |
|
|
0 |
0 |
if (!shm_cursor_ensure_copy_buf(c, total)) { |
|
|
0 |
0 |
if (!shm_cursor_ensure_copy_buf(c, total)) { |
|
4222
|
27 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[pos].val_len); |
|
|
0 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[pos].val_len); |
|
|
0 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[pos].val_len); |
|
|
2 |
0 |
uint32_t vl = SHM_STR_LEN(nodes[pos].val_len); |
|
4224
|
27 |
0 |
uint32_t kl = SHM_STR_LEN(nodes[pos].key_len); |
|
4228
|
0 |
0 |
if (!shm_cursor_ensure_copy_buf(c, vl)) { |
|
|
0 |
0 |
if (!shm_cursor_ensure_copy_buf(c, vl)) { |
|
|
0 |
2 |
if (!shm_cursor_ensure_copy_buf(c, vl)) { |
|
4249
|
5 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
1 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
1 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
35 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
|
0 |
0 |
if (h->iterating > 0) h->iterating--; |
|
4252
|
2 |
3 |
if (c->shard_idx < c->shard_count) { |
|
|
1 |
0 |
if (c->shard_idx < c->shard_count) { |
|
|
0 |
0 |
if (c->shard_idx < c->shard_count) { |
|
|
0 |
0 |
if (c->shard_idx < c->shard_count) { |
|
|
0 |
0 |
if (c->shard_idx < c->shard_count) { |
|
|
0 |
0 |
if (c->shard_idx < c->shard_count) { |
|
|
1 |
0 |
if (c->shard_idx < c->shard_count) { |
|
|
14 |
21 |
if (c->shard_idx < c->shard_count) { |
|
|
0 |
0 |
if (c->shard_idx < c->shard_count) { |
|
|
0 |
0 |
if (c->shard_idx < c->shard_count) { |
|
4266
|
0 |
0 |
if (c->current && c->current->iterating > 0) |
|
|
0 |
0 |
if (c->current && c->current->iterating > 0) |
|
|
0 |
0 |
if (c->current && c->current->iterating > 0) |
|
|
0 |
0 |
if (c->current && c->current->iterating > 0) |
|
|
0 |
0 |
if (c->current && c->current->iterating > 0) |
|
|
0 |
0 |
if (c->current && c->current->iterating > 0) |
|
|
0 |
0 |
if (c->current && c->current->iterating > 0) |
|
|
0 |
0 |
if (c->current && c->current->iterating > 0) |
|
|
0 |
0 |
if (c->current && c->current->iterating > 0) |
|
|
0 |
0 |
if (c->current && c->current->iterating > 0) |
|
|
0 |
0 |
if (c->current && c->current->iterating > 0) |
|
|
0 |
0 |
if (c->current && c->current->iterating > 0) |
|
|
0 |
0 |
if (c->current && c->current->iterating > 0) |
|
|
0 |
0 |
if (c->current && c->current->iterating > 0) |
|
|
2 |
0 |
if (c->current && c->current->iterating > 0) |
|
|
0 |
2 |
if (c->current && c->current->iterating > 0) |
|
|
0 |
0 |
if (c->current && c->current->iterating > 0) |
|
|
0 |
0 |
if (c->current && c->current->iterating > 0) |
|
|
0 |
0 |
if (c->current && c->current->iterating > 0) |
|
|
0 |
0 |
if (c->current && c->current->iterating > 0) |
|
4271
|
0 |
0 |
if (c->handle->shard_handles) { |
|
|
0 |
0 |
if (c->handle->shard_handles) { |
|
|
0 |
0 |
if (c->handle->shard_handles) { |
|
|
0 |
0 |
if (c->handle->shard_handles) { |
|
|
0 |
0 |
if (c->handle->shard_handles) { |
|
|
0 |
0 |
if (c->handle->shard_handles) { |
|
|
0 |
0 |
if (c->handle->shard_handles) { |
|
|
1 |
1 |
if (c->handle->shard_handles) { |
|
|
0 |
0 |
if (c->handle->shard_handles) { |
|
|
0 |
0 |
if (c->handle->shard_handles) { |