Home
last modified time | relevance | path

Searched refs:a (Results 1 – 25 of 45) sorted by relevance

12

/memcached-1.6.32/
Djenkins_hash.c81 a -= c; a ^= rot(c, 4); c += b; \
82 b -= a; b ^= rot(a, 6); a += c; \
84 a -= c; a ^= rot(c,16); c += b; \
85 b -= a; b ^= rot(a,19); a += c; \
117 a ^= c; a -= rot(c,11); \
118 b ^= a; b -= rot(a,25); \
120 a ^= c; a -= rot(c,4); \
121 b ^= a; b -= rot(a,14); \
146 a += k[0]; in jenkins_hash()
295 final(a,b,c); in jenkins_hash()
[all …]
Dslab_automove_extstore.c45 if (a == NULL) in slab_automove_extstore_init()
57 free(a); in slab_automove_extstore_init()
65 return (void *)a; in slab_automove_extstore_init()
71 free(a); in slab_automove_extstore_free()
122 a->global_pool_watermark = total_pages * a->free_ratio; in memcheck()
130 return &a->window_data[w_offset + (a->window_cur % a->window_size)]; in get_window_data()
149 memcheck(a); in slab_automove_extstore_run()
153 bool small_slab = a->sam_before[n].chunk_size < a->item_size in slab_automove_extstore_run()
215 memcpy(a->iam_before, a->iam_after, in slab_automove_extstore_run()
217 memcpy(a->sam_before, a->sam_after, in slab_automove_extstore_run()
[all …]
Dslab_automove.c38 if (a == NULL) in slab_automove_init()
44 free(a); in slab_automove_init()
52 return (void *)a; in slab_automove_init()
58 free(a); in slab_automove_free()
92 evicted_total += a->iam_after[n].evicted - a->iam_before[n].evicted; in slab_automove_run()
94 a->window_cur++; in slab_automove_run()
99 struct window_data *wd = &a->window_data[w_offset + (a->window_cur % a->window_size)]; in slab_automove_run()
124 window_sum(&a->window_data[w_offset], &w_sum, a->window_size); in slab_automove_run()
156 memcpy(a->iam_before, a->iam_after, in slab_automove_run()
158 memcpy(a->sam_before, a->sam_after, in slab_automove_run()
[all …]
Dmd5.c204 t = a + F(b,c,d) + X[k] + Ti;\ in md5_process()
205 a = ROTATE_LEFT(t, s) + b in md5_process()
207 SET(a, b, c, d, 0, 7, T1); in md5_process()
208 SET(d, a, b, c, 1, 12, T2); in md5_process()
230 t = a + G(b,c,d) + X[k] + Ti;\ in md5_process()
231 a = ROTATE_LEFT(t, s) + b in md5_process()
256 t = a + H(b,c,d) + X[k] + Ti;\ in md5_process()
257 a = ROTATE_LEFT(t, s) + b in md5_process()
282 t = a + I(b,c,d) + X[k] + Ti;\ in md5_process()
283 a = ROTATE_LEFT(t, s) + b in md5_process()
[all …]
Dsasl_defs.h20 #define sasl_server_new(a, b, c, d, e, f, g, h) 1 argument
21 #define sasl_listmech(a, b, c, d, e, f, g, h) 1 argument
22 #define sasl_server_start(a, b, c, d, e, f) 1 argument
23 #define sasl_server_step(a, b, c, d, e) 1 argument
24 #define sasl_getprop(a, b, c) {} argument
DDoxyfile6 # All text after a hash (#) is considered a comment and will be ignored
25 # The PROJECT_NAME tag is a single word (or a sequence of words surrounded
92 # Doxygen will generate a detailed section even if there is only a brief
151 # treat a multi-line C++ special comment block (i.e. a block of //! or ///
153 # The new default is to treat a multi-line C++ comment block as a detailed
258 # the same type (for instance a group of public functions) to be put as a
614 # output. The symbol name can be a fully qualified name, a word, or if the
746 # In case all classes in a project start with a common prefix, all
812 # To create a documentation set, doxygen will generate a Makefile in the
869 # controls whether a binary table of contents is generated (YES) or a
[all …]
DREADME.md3 Memcached is a high performance multithreaded event-based key/value cache
4 store intended to be used in a distributed system.
15 https://memcached.org/ is a good resource in general. Please use the mailing
29 dangerous when using a large cache. Just make sure the memcached machines
41 **If you are reporting a security bug** please contact a maintainer privately.
42 We follow responsible disclosure: we handle reports privately, prepare a
43 patch, allow notifications to vendor lists. Then we push a fix release and your
DHACKING12 After checking out a git repository, you must first run autogen.sh
22 Though not required, there are a couple of things you can add to git
28 before allowing a commit. To do so, add the following to
36 Because the version number changes on each commit, it's good to use a
46 By default `make test` will spawn a memcached daemon for each test.
70 and the process will crash with a coredump on all policy violations.
Dproxy_mutator.c234 memcpy(a, cmd, len); in mut_step_i()
362 memcpy(a, str, len); in mut_step_i()
402 memcpy(a, str, len); in mut_step_i()
517 char *a = mut->arena + mut->aused; in mut_step_i() local
532 memcpy(a, code, clen); in mut_step_i()
533 a += clen; in mut_step_i()
534 *a = ' '; in mut_step_i()
535 a++; in mut_step_i()
546 memcpy(a, str, len); in mut_step_i()
602 memcpy(a, str, len); in mut_step_i()
[all …]
DChangeLog79 * Use a dedicated socket accept thread (Facebook)
113 * Optimize item_alloc() a little (dormando)
172 a new option "-a" which takes an octal permission mask
300 * Use a single printf() in usage()
302 * Add a failing test for conforming with maximum connections.
464 the correct location. Trying to install the man page from a
490 other info on the same line going into a 256 byte char[].
494 * immediate deletes weren't being unlinked a few seconds,
522 allocator. really shouldn't make a difference.
582 be larger than a month)
[all …]
Dconfigure.ac297 if test "$GCC" = "yes" -a "$ICC" != "yes" -a "$CLANG" != "yes"
355 # with a static version of libevent
611 dnl check if we can use a uint64_t
665 dnl Check if we're a little-endian or a big-endian system, needed by hash code
768 unsigned short a;
770 b = __sync_add_and_fetch(&a, 1);
771 b = __sync_sub_and_fetch(&a, 2);
782 uint64_t a;
784 b = __sync_add_and_fetch(&a, 1);
785 b = __sync_sub_and_fetch(&a, 2);
[all …]
/memcached-1.6.32/t/
Dproxyunits.lua45 fgen:ready({ f = func, a = o})
53 map.b = new_basic(zones, function(rctx, a)
55 return rctx:enqueue_and_wait(r, a.t.z1)
59 map.errcheck = new_basic(zones, function(rctx, a)
78 map.getkey = new_basic(zones, function(rctx, a)
87 return rctx:enqueue_and_wait(r, a.t.z1)
94 return rctx:enqueue_and_wait(r, a.t.z1)
98 map.nolabel = new_basic(zones, function(rctx, a)
104 map.ntokens = new_basic(zones, function(rctx, a)
423 local z = {a.t.z1, a.t.z2, a.t.z3}
[all …]
Dclient_crt.pem18 76:26:b8:06:65:f5:0e:b6:6f:22:66:b7:4b:7a:8c:
19 4f:3a:fb:0e:ac:c1:0e:6e:76:db:b5:95:83:d4:a2:
21 b6:af:cd:01:2c:a0:c0:bb:58:eb:23:6a:aa:09:e3:
23 a5:44:19:47:b2:3b:1c:7a:f1:f2:24:75:51:6f:13:
24 7e:9a:24:2c:42:e3:23:31:b6:dd:fa:50:36:92:ef:
39 47:6a:90:28:93:f3:31:ad:8d:70:59:1b:1d:c2:9a:63:b1:40:
41 6a:cc:38:8b:ee:67:f4:43:7a:63:7e:b7:84:64:23:de:98:eb:
42 a3:5f:5a:ca:da:bc:37:16:76:dc:55:5b:eb:71:ef:f5:f9:f9:
43 db:77:34:1c:8e:b5:fe:9a:00:9d:bf:9f:5a:1a:51:68:54:47:
44 ef:0c:fb:cd:7f:08:81:01:bd:6e:6a:05:27:1d:66:38:75:7b:
[all …]
Dserver_crt.pem16 00:c8:9f:ff:4d:a0:6e:9e:ab:6f:0f:5b:7a:67:b7:
17 2d:0b:eb:69:6b:9f:19:7a:6e:f5:b2:91:50:71:d4:
24 99:01:06:5e:93:77:8b:6a:c3:3f:ce:9f:e0:44:3c:
39 0f:ac:cb:a5:b2:13:63:3a:e7:f4:59:a6:ec:ad:ef:2e:61:5d:
40 16:23:df:fb:a4:24:75:60:d4:fe:5a:d6:ed:f9:a7:a4:9d:49:
43 02:76:3f:1f:d5:3a:0b:ac:9e:b7:13:14:6f:b6:27:ad:34:d5:
44 fa:82:5c:c6:1a:b4:4f:36:7b:e6:03:6d:4f:85:ce:43:42:d3:
45 d3:7d:b4:7e:d1:dc:3b:27:31:94:d4:0a:08:ba:67:ec:e0:75:
46 63:4a:48:b0:01:c7:90:2d:da:2e:c9:ef:c7:8a:20:76:75:89:
48 5b:5a:d9:2a:0c:d5:96:61:9e:dd:b5:db:88:61:45:df:29:c1:
[all …]
Dproxyrouter.t146 my $a = shift;
148 for my $key (keys %$a) {
154 if ($a->{$key} != $b->{$key}) {
155 cmp_ok($b->{$key}, '==', $a->{$key}, "func stat for $key");
Dproxyfuncgen.lua73 fgen:ready({ f = func, a = o, n = arg.name})
90 fgen:ready({ f = prefix_factory_gen, a = o, n = arg.name })
115 fgen:ready({ f = direct_factory_gen, a = h, n = arg.name })
131 fgen:ready({ f = locality_factory_gen, a = h, n = arg.name })
312 fgen:ready({ f = blocker_factory_gen, a = o, n = arg.name })
546 o.a = fgen:new_handle(arg.a)
548 fgen:ready({ f = split_factory_gen, a = o, n = name })
559 local a = arg.a
568 return rctx:enqueue_and_wait(r, a)
643 local split = new_split_factory({ a = single, b = singletwo, name = "split" })
[all …]
/memcached-1.6.32/doc/
Dnapi_ids.txt4 By default memcached assigns connections to worker threads in a round-robin
10 in linux kernels 4.12 or higher. This socket option returns a system level
11 unique ID called NAPI ID that is associated with a RX queue on which the
16 with a NIC HW receive queue and services all the connection requests
17 received on a specific RX queue. This mapping between a memcached thread
18 and a HW NIC queue streamlines the flow of data from the NIC to the
23 This feature is enabled via a new command line parameter -N <num> or
31 During a normal run, each worker thread gets associated with a napi_id and
32 this will establish a 1:1 mapping between the thread and queues. If a new
35 number of RX queues OR if the NIC driver goes through a reload), a stats
[all …]
Dprotocol.txt15 with a very large number (many hundreds, more than a thousand if
29 of such data (either a client or a server) will always know, from a
58 key. The client sends a command line, and then a data block; after
85 well as a flag system to make the commands flexible rather than having a
128 proxy or router inbetween a client and a memcached daemon. For example, a
179 case in which the server closes a connection to a client.
299 which is received as a text line followed by a data block. After all
439 which is received as a text line followed by a data block. After all
650 a miss.
792 a new item on a miss. If N is supplied, and append reaches a miss, it will
[all …]
Dstorage.txt6 extstore_write() is a synchronous call which memcpy's the input buffer into a
7 write buffer for an active page. A failure is not usually a hard failure, but
14 extstore_read() is an asynchronous call which takes a stack of IO objects and
15 adds it to the end of a queue. It then signals the IO thread to run. Once an
19 extstore_delete() is a synchronous call which informs the storage engine an
38 During extstore_init(), a number of active buckets is specified. Pages are
39 handled overall as a global pool, but writes can be redirected to specific
42 This allows a lot of flexibility, ie:
60 will only be a single active page with write buffers.
83 time, it will have a chance of getting recached. "recache_rate" is a simple
[all …]
Dtls.txt14 Following are a few additional features.
15 # Certificate refresh: when the server gets a new certificate, new connections
16 will use new certificates without a need of re-starting the server process.
19 the server to secure a specific TCP port.
35 a socket-based bufferevent that tells OpenSSL to communicate with the network directly over.
36 Unlike a worker thread sets callback on the socket, this uses a “bufferevent” object for
39 we noticed a higher memory usage as we don’t have much control over allocating evbuffer
45 holds certificates, a private key, and options regarding the TLS protocol and algorithms.
70 Memcached uses non blocking sockets and implements a rather complex state machine for
118 and issues a SSL_read/ SSL_write. Note that we implement a SSL_sendmsg wrapper on top of
[all …]
Dprotocol-binary-range.txt17 in a UDP environment.
19 Memcache is a high performance key-value cache. It is intentionally
20 a dumb cache, optimized for speed only. Applications using memcache
21 do not rely on it for data -- a persistent database with guaranteed
35 Internet-Drafts are draft documents valid for a maximum of six months
93 the memcache protocol [MEMCACHE] in a UDP environment.
127 0x0004 Value is larger than a single response packet
179 The Get Range request is primarily intended for use over a UDP
180 transport to request byte ranges of the value for a key. In the
203 The Get Range request is primarily intended for use over a UDP
[all …]
DDoxyfile6 # All text after a hash (#) is considered a comment and will be ignored
25 # The PROJECT_NAME tag is a single word (or a sequence of words surrounded
91 # Doxygen will generate a detailed section even if there is only a brief
142 # treat a multi-line C++ special comment block (i.e. a block of //! or ///
144 # The new default is to treat a multi-line C++ comment block as a detailed
163 # a new page for each member. If set to NO, the documentation of a member will
218 # the same type (for instance a group of public functions) to be put as a
555 # filter if there is a match. The filters are a list of the form:
639 # In case all classes in a project start with a common prefix, all
722 # controls whether a binary table of contents is generated (YES) or a
[all …]
Dthreads.txt19 thread may read or write against a particular hash table bucket.
24 system must attempt to lock the item's bucket, which is done with a trylock
25 to avoid deadlocks. If a bucket is in use (and not by that thread) it will
26 walk up the LRU a little in an attempt to fetch a non-busy item.
30 - Raw accesses to the slab class are protected by a global slabs_lock. This
31 is a short lock which covers pushing and popping free memory.
35 - ITEM_LINKED must not be set before an item has a key copied into it.
54 - If you remove the per-thread stats lock, CPU usage goes down by less than a
55 point of a percent, and it does not improve scalability.
Dprotocol-binary.txt20 Memcache is a high performance key-value cache. It is intentionally
21 a dumb cache, optimized for speed only. Applications using memcache
22 do not rely on it for data -- a persistent database with guaranteed
108 should not rely on it for data -- a persistent database with
131 General format of a packet:
245 on a host that also runs an application server. Such a host will
477 You're not guaranteed a response to a getq/getkq cache hit until you
1283 Used as a keep alive. Flushes outstanding getq/getkq's.
1528 with a packet that contains no key and no value.
1671 protected, back-end networks within a single data center, within a
[all …]
/memcached-1.6.32/vendor/mcmc/
DREADME.md5 MCMC is a minimalistic allocation-free modern client for memcached. It uses a
6 generic response parser, allowing a single code path regardless of the command
8 integrate as a building block into full clients.
10 MCMC does not (yet) include a typical memcached "selector". Meaning the
11 ability to add many servers to a hash table of some kind and routing keys to
15 Allocation-free (aside from a call to `getaddrinfo()`) means it does not
17 malloc a small structure and some buffers, but you are then free to manage
19 memory overhead to a handful of bytes plus the TCP socket.
21 MCMC is designed to be a building block for users designing full clients.
25 * They write a function in their native language's wrapper which accepts the
[all …]

12