File inc/cache.inc.php changed (mode: 100644) (index 5e8197d..33c3944) |
... |
... |
function rg_cache_core_adump($ns_var) |
343 |
343 |
/********************************* Client side functions */ |
/********************************* Client side functions */ |
344 |
344 |
|
|
345 |
345 |
/* |
/* |
346 |
|
* Prepares a string to be send to the wire |
|
|
346 |
|
* Prepares a string to be send to the wire (key part) |
|
347 |
|
*/ |
|
348 |
|
function rg_cache_prepare_key($s) |
|
349 |
|
{ |
|
350 |
|
return addcslashes($s, "\n\r\\"); |
|
351 |
|
} |
|
352 |
|
|
|
353 |
|
/* |
|
354 |
|
* Prepares a string to be send to the wire (value part) |
347 |
355 |
*/ |
*/ |
348 |
356 |
function rg_cache_prepare($s) |
function rg_cache_prepare($s) |
349 |
357 |
{ |
{ |
|
... |
... |
function rg_cache_send($cmd, $para, $flags) |
419 |
427 |
|
|
420 |
428 |
/* |
/* |
421 |
429 |
* Returns a variable from the cache daemon |
* Returns a variable from the cache daemon |
422 |
|
* @timeout_in_ms is the connection timeout not variable timeout. |
|
423 |
430 |
*/ |
*/ |
424 |
431 |
function rg_cache_get($ns_var) |
function rg_cache_get($ns_var) |
425 |
432 |
{ |
{ |
|
433 |
|
global $rg_cache_debug; |
|
434 |
|
|
426 |
435 |
rg_prof_start('cache_get'); |
rg_prof_start('cache_get'); |
427 |
436 |
|
|
428 |
437 |
$ret = FALSE; |
$ret = FALSE; |
429 |
438 |
while (1) { |
while (1) { |
430 |
|
$ret = rg_cache_core_get($ns_var); |
|
|
439 |
|
$k = rg_cache_prepare_key($ns_var); |
|
440 |
|
$ret = rg_cache_core_get($k); |
431 |
441 |
if ($ret !== FALSE) |
if ($ret !== FALSE) |
432 |
442 |
break; |
break; |
433 |
443 |
|
|
434 |
444 |
$flags = 0; |
$flags = 0; |
435 |
|
$r = rg_cache_send('GET', $ns_var, $flags); |
|
|
445 |
|
$r = rg_cache_send('GET', $k, $flags); |
436 |
446 |
if ($r === FALSE) |
if ($r === FALSE) |
437 |
447 |
break; |
break; |
438 |
448 |
|
|
|
... |
... |
function rg_cache_get($ns_var) |
446 |
456 |
break; |
break; |
447 |
457 |
} |
} |
448 |
458 |
|
|
|
459 |
|
if ($rg_cache_debug) |
|
460 |
|
rg_log_ml('cache_get returns: ' . print_r($ret, TRUE)); |
|
461 |
|
|
449 |
462 |
rg_prof_end('cache_get'); |
rg_prof_end('cache_get'); |
450 |
463 |
return $ret; |
return $ret; |
451 |
464 |
} |
} |
|
... |
... |
function rg_cache_set($ns_var, $value, $flags) |
458 |
471 |
rg_prof_start('cache_set'); |
rg_prof_start('cache_set'); |
459 |
472 |
|
|
460 |
473 |
while (1) { |
while (1) { |
461 |
|
rg_cache_core_set($ns_var, $value); |
|
|
474 |
|
$k = rg_cache_prepare_key($ns_var); |
|
475 |
|
rg_cache_core_set($k, $value); |
462 |
476 |
|
|
463 |
|
$para = $ns_var . '=' . rg_cache_prepare($value); |
|
|
477 |
|
$para = $k . '=' . rg_cache_prepare($value); |
464 |
478 |
$ret = rg_cache_send('SET', $para, $flags); |
$ret = rg_cache_send('SET', $para, $flags); |
465 |
479 |
if ($ret === FALSE) |
if ($ret === FALSE) |
466 |
480 |
break; |
break; |
|
... |
... |
function rg_cache_inc($ns_var) |
483 |
497 |
rg_cache_core_inc($vs_var); |
rg_cache_core_inc($vs_var); |
484 |
498 |
|
|
485 |
499 |
while (1) { |
while (1) { |
486 |
|
$ret = rg_cache_send('INC', $ns_var, $flags); |
|
|
500 |
|
$k = rg_cache_prepare_key($ns_var); |
|
501 |
|
$ret = rg_cache_send('INC', $k, $flags); |
487 |
502 |
if ($ret === FALSE) |
if ($ret === FALSE) |
488 |
503 |
break; |
break; |
489 |
504 |
if ($ret === TRUE) |
if ($ret === TRUE) |
|
... |
... |
function rg_cache_unset($ns_var, $flags) |
506 |
521 |
|
|
507 |
522 |
rg_prof_start('cache_unset'); |
rg_prof_start('cache_unset'); |
508 |
523 |
|
|
509 |
|
rg_cache_core_unset($ns_var); |
|
510 |
|
$ret = rg_cache_send('UNSET', $ns_var, $flags); |
|
|
524 |
|
$k = rg_cache_prepare_key($ns_var); |
|
525 |
|
rg_cache_core_unset($k); |
|
526 |
|
$ret = rg_cache_send('UNSET', $k, $flags); |
511 |
527 |
|
|
512 |
528 |
if ($rg_cache_debug) |
if ($rg_cache_debug) |
513 |
|
rg_log('cache_unset(' . $ns_var . ')'); |
|
|
529 |
|
rg_log('cache_unset(' . $k . ')'); |
514 |
530 |
|
|
515 |
531 |
rg_prof_end('cache_unset'); |
rg_prof_end('cache_unset'); |
516 |
532 |
return $ret; |
return $ret; |
|
... |
... |
function rg_cache_merge($ns_var, $list, $flags) |
523 |
539 |
{ |
{ |
524 |
540 |
rg_prof_start('cache_merge'); |
rg_prof_start('cache_merge'); |
525 |
541 |
|
|
526 |
|
rg_cache_core_merge($ns_var, $list); |
|
|
542 |
|
$k = rg_cache_prepare_key($ns_var); |
|
543 |
|
rg_cache_core_merge($k, $list); |
527 |
544 |
|
|
528 |
|
$para = $ns_var . '=' . rg_cache_prepare($list); |
|
|
545 |
|
$para = $k . '=' . rg_cache_prepare($list); |
529 |
546 |
$ret = rg_cache_send('MERGE', $para, $flags); |
$ret = rg_cache_send('MERGE', $para, $flags); |
530 |
547 |
|
|
531 |
548 |
rg_prof_end('cache_merge'); |
rg_prof_end('cache_merge'); |
|
... |
... |
function rg_cache_apush($ns_var, $value, $flags) |
539 |
556 |
{ |
{ |
540 |
557 |
rg_prof_start('cache_apush'); |
rg_prof_start('cache_apush'); |
541 |
558 |
|
|
542 |
|
rg_cache_core_apush($ns_var, $value); |
|
|
559 |
|
$k = rg_cache_prepare_key($ns_var); |
|
560 |
|
rg_cache_core_apush($k, $value); |
543 |
561 |
|
|
544 |
|
$para = $ns_var . '=' . rg_cache_prepare($value); |
|
|
562 |
|
$para = $k . '=' . rg_cache_prepare($value); |
545 |
563 |
$ret = rg_cache_send('APUSH', $para, $flags); |
$ret = rg_cache_send('APUSH', $para, $flags); |
546 |
564 |
|
|
547 |
565 |
rg_prof_end('cache_apush'); |
rg_prof_end('cache_apush'); |