Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
--TEST-- Random, Remember failed, default strategy (= disabled) --SKIPIF-- <?php require_o..
Decoded Output download
--TEST--
Random, Remember failed, default strategy (= disabled)
--SKIPIF--
<?php
require_once('skipif.inc');
require_once("connect.inc");
_skipif_check_extensions(array("mysqli"));
_skipif_connect($master_host_only, $user, $passwd, $db, $master_port, $master_socket);
if (($master_host == $slave_host)) {
die("SKIP master and slave seem to the the same, see tests/README");
}
$settings = array(
"myapp" => array(
'master' => array($master_host),
'slave' => array("unreachable:6033"),
'pick' => array('random'),
'lazy_connections' => 1,
'failover' => array("remember_failed" => true),
),
);
if ($error = mst_create_config("test_mysqlnd_ms_settings_lazy_failure_failover_remember_random_default_strategy.ini", $settings))
die(sprintf("SKIP %s
", $error));
?>
--INI--
mysqlnd_ms.enable=1
mysqlnd_ms.config_file=test_mysqlnd_ms_settings_lazy_failure_failover_remember_random_default_strategy.ini
--FILE--
<?php
require_once("connect.inc");
require_once("util.inc");
if (!($link = mst_mysqli_connect("myapp", $user, $passwd, $db, $port, $socket)))
printf("[001] [%d] %s
", mysqli_connect_errno(), mysqli_connect_error());
mst_mysqli_query(1, $link, "SET @myrole='master'", MYSQLND_MS_MASTER_SWITCH);
$failed = 0 ;
for ($i = 0; $i < 100; $i++) {
if (!@$link->query("SELECT 1 FROM DUAL")) {
/* failed slave ? */
$failed++;
} else {
if (!($res = $link->query(sprintf("/*%s*/SELECT @myrole AS _role", MYSQLND_MS_LAST_USED_SWITCH)))) {
printf("[002] Failed to check role [%d] %s
", $link->errno, $link->error);
break;
}
$row = $res->fetch_assoc();
if ($row['_role'] == 'master') {
printf("[003] Master has been used.
");
break;
}
}
}
if (0 == $failed) {
printf("[004] No failed slaves, verify whether its a bug or a false positive
");
}
printf("Failed: %d
", $failed);
print "done!";
?>
--CLEAN--
<?php
if (!unlink("test_mysqlnd_ms_settings_lazy_failure_failover_remember_random_default_strategy.ini"))
printf("[clean] Cannot unlink ini file 'test_mysqlnd_ms_settings_lazy_failure_failover_remember_random_default_strategy.ini'.
");
?>
--EXPECTF--
Failed: 100
done!
Did this file decode correctly?
Original Code
--TEST--
Random, Remember failed, default strategy (= disabled)
--SKIPIF--
<?php
require_once('skipif.inc');
require_once("connect.inc");
_skipif_check_extensions(array("mysqli"));
_skipif_connect($master_host_only, $user, $passwd, $db, $master_port, $master_socket);
if (($master_host == $slave_host)) {
die("SKIP master and slave seem to the the same, see tests/README");
}
$settings = array(
"myapp" => array(
'master' => array($master_host),
'slave' => array("unreachable:6033"),
'pick' => array('random'),
'lazy_connections' => 1,
'failover' => array("remember_failed" => true),
),
);
if ($error = mst_create_config("test_mysqlnd_ms_settings_lazy_failure_failover_remember_random_default_strategy.ini", $settings))
die(sprintf("SKIP %s\n", $error));
?>
--INI--
mysqlnd_ms.enable=1
mysqlnd_ms.config_file=test_mysqlnd_ms_settings_lazy_failure_failover_remember_random_default_strategy.ini
--FILE--
<?php
require_once("connect.inc");
require_once("util.inc");
if (!($link = mst_mysqli_connect("myapp", $user, $passwd, $db, $port, $socket)))
printf("[001] [%d] %s\n", mysqli_connect_errno(), mysqli_connect_error());
mst_mysqli_query(1, $link, "SET @myrole='master'", MYSQLND_MS_MASTER_SWITCH);
$failed = 0 ;
for ($i = 0; $i < 100; $i++) {
if (!@$link->query("SELECT 1 FROM DUAL")) {
/* failed slave ? */
$failed++;
} else {
if (!($res = $link->query(sprintf("/*%s*/SELECT @myrole AS _role", MYSQLND_MS_LAST_USED_SWITCH)))) {
printf("[002] Failed to check role [%d] %s\n", $link->errno, $link->error);
break;
}
$row = $res->fetch_assoc();
if ($row['_role'] == 'master') {
printf("[003] Master has been used.\n");
break;
}
}
}
if (0 == $failed) {
printf("[004] No failed slaves, verify whether its a bug or a false positive\n");
}
printf("Failed: %d\n", $failed);
print "done!";
?>
--CLEAN--
<?php
if (!unlink("test_mysqlnd_ms_settings_lazy_failure_failover_remember_random_default_strategy.ini"))
printf("[clean] Cannot unlink ini file 'test_mysqlnd_ms_settings_lazy_failure_failover_remember_random_default_strategy.ini'.\n");
?>
--EXPECTF--
Failed: 100
done!
Function Calls
None |
Stats
MD5 | 510b3ff6b5ef2c91b7faa34437e3ec54 |
Eval Count | 0 |
Decode Time | 84 ms |