Lines Matching refs:rc
122 static apr_status_t make_server_dead(apr_redis_t *rc,
136 static apr_status_t make_server_live(apr_redis_t *rc,
143 APU_DECLARE(apr_status_t) apr_redis_add_server(apr_redis_t *rc,
148 if (rc->ntotal >= rc->nalloc) {
151 rc->live_servers[rc->ntotal] = rs;
152 rc->ntotal++;
153 make_server_live(rc, rs);
158 apr_redis_find_server_hash(apr_redis_t *rc, const apr_uint32_t hash)
160 if (rc->server_func) {
161 return rc->server_func(rc->server_baton, rc, hash);
164 return apr_redis_find_server_hash_default(NULL, rc, hash);
169 apr_redis_find_server_hash_default(void *baton, apr_redis_t *rc,
177 if (rc->ntotal == 0) {
182 rs = rc->live_servers[h % rc->ntotal];
197 make_server_live(rc, rs);
210 } while (i < rc->ntotal);
212 if (i == rc->ntotal) {
219 APU_DECLARE(apr_redis_server_t *) apr_redis_find_server(apr_redis_t *rc,
225 for (i = 0; i < rc->ntotal; i++) {
226 if (strcmp(rc->live_servers[i]->host, host) == 0
227 && rc->live_servers[i]->port == port) {
229 return rc->live_servers[i];
285 APU_DECLARE(apr_status_t) apr_redis_enable_server(apr_redis_t *rc,
293 rv = make_server_live(rc, rs);
297 APU_DECLARE(apr_status_t) apr_redis_disable_server(apr_redis_t *rc,
300 return make_server_dead(rc, rs);
489 apr_redis_t *rc;
491 rc = apr_palloc(p, sizeof(apr_redis_t));
492 rc->p = p;
493 rc->nalloc = max_servers;
494 rc->ntotal = 0;
495 rc->live_servers =
496 apr_palloc(p, rc->nalloc * sizeof(struct apr_redis_server_t *));
497 rc->hash_func = NULL;
498 rc->hash_baton = NULL;
499 rc->server_func = NULL;
500 rc->server_baton = NULL;
501 *redis = rc;
603 APU_DECLARE(apr_uint32_t) apr_redis_hash(apr_redis_t *rc,
607 if (rc->hash_func) {
608 return rc->hash_func(rc->hash_baton, data, data_len);
639 APU_DECLARE(apr_status_t) apr_redis_set(apr_redis_t *rc,
656 hash = apr_redis_hash(rc, key, klen);
658 rs = apr_redis_find_server_hash(rc, hash);
666 apr_redis_disable_server(rc, rs);
715 apr_redis_disable_server(rc, rs);
722 apr_redis_disable_server(rc, rs);
740 APU_DECLARE(apr_status_t) apr_redis_setex(apr_redis_t *rc,
761 hash = apr_redis_hash(rc, key, klen);
763 rs = apr_redis_find_server_hash(rc, hash);
771 apr_redis_disable_server(rc, rs);
831 apr_redis_disable_server(rc, rs);
838 apr_redis_disable_server(rc, rs);
856 static apr_status_t grab_bulk_resp(apr_redis_server_t *rs, apr_redis_t *rc,
884 if (rc)
885 apr_redis_disable_server(rc, rs);
895 if (rc)
896 apr_redis_disable_server(rc, rs);
903 if (rc)
904 apr_redis_disable_server(rc, rs);
917 APU_DECLARE(apr_status_t) apr_redis_getp(apr_redis_t *rc,
934 hash = apr_redis_hash(rc, key, klen);
935 rs = apr_redis_find_server_hash(rc, hash);
943 apr_redis_disable_server(rc, rs);
980 apr_redis_disable_server(rc, rs);
987 apr_redis_disable_server(rc, rs);
994 rv = grab_bulk_resp(rs, rc, conn, p, baton, new_length);
1005 apr_redis_delete(apr_redis_t *rc, const char *key, apr_uint32_t timeout)
1017 hash = apr_redis_hash(rc, key, klen);
1018 rs = apr_redis_find_server_hash(rc, hash);
1025 apr_redis_disable_server(rc, rs);
1061 apr_redis_disable_server(rc, rs);
1068 apr_redis_disable_server(rc, rs);
1233 static apr_status_t plus_minus(apr_redis_t *rc,
1252 hash = apr_redis_hash(rc, key, klen);
1253 rs = apr_redis_find_server_hash(rc, hash);
1260 apr_redis_disable_server(rc, rs);
1340 apr_redis_disable_server(rc, rs);
1347 apr_redis_disable_server(rc, rs);
1365 apr_redis_incr(apr_redis_t *rc, const char *key, apr_int32_t inc, apr_uint32_t *new_value)
1367 return plus_minus(rc, 1, key, inc, new_value);
1371 apr_redis_decr(apr_redis_t *rc, const char *key, apr_int32_t inc, apr_uint32_t *new_value)
1373 return plus_minus(rc, 0, key, inc, new_value);
1377 apr_redis_multgetp(apr_redis_t *rc,