menu
#70 Cannot assign non-thread-safe value of type pocketmine\snooze\SleeperNotifier to thread-safe class property pmexporter\MetricsServer::$notifier

Submitted by PocketMine-MP 5.9.1+dev

General information

Version: 5.9.1+dev
Git commit: 23edde27
Plugin involvement: Direct
Report date: 2024-01-12 21:58:32 +0000 UTC
Server uptime: 0 days 0 hours 0 minutes 5 seconds

System Information

PHP version: 8.2.9
JIT status: Not available
Operating system: linux
System banner: Linux anmine.ru 5.10.0-26-amd64 #1 SMP Debian 5.10.197-1 (2023-09-29) x86_64

Error information

Warning: the prometheus plugin was directly involved in this crash. Please contact the plugin author.
Thread: Main
Message: Cannot assign non-thread-safe value of type pocketmine\snooze\SleeperNotifier to thread-safe class property pmexporter\MetricsServer::$notifier
File: plugins/pm5-prometheus/src/pmexporter/MetricsServer
Line: #26
Type: pmmp\thread\NonThreadSafeValueError
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
use function socket_set_option;

class MetricsServer extends Thread
{
private Socket $socket;

public string $response = "";
public bool $stop = false;

public function __construct(
private int $port,
private AttachableThreadSafeLogger $logger,
private SleeperNotifier $notifier
)
{
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if (!$socket) {
throw new Exception("Cannot create socket.");
}
$this->socket = $socket;
#0 plugins/pm5-prometheus/src/pmexporter/MetricsLoader(21): pmexporter\MetricsServer->__construct(int 40032, object pocketmine\utils\MainLogger#6, object pocketmine\snooze\SleeperNotifier#436013)
#1 pmsrc/src/plugin/PluginBase(119): pmexporter\MetricsLoader->onEnable()
#2 pmsrc/src/plugin/PluginManager(456): pocketmine\plugin\PluginBase->onEnableStateChange(true)
#3 pmsrc/src/Server(1440): pocketmine\plugin\PluginManager->enablePlugin(object pmexporter\MetricsLoader#43875)
#4 pmsrc/src/Server(1065): pocketmine\Server->enablePlugins(object pocketmine\plugin\PluginEnableOrder#51527)
#5 pmsrc/src/PocketMine(341): pocketmine\Server->__construct(object pocketmine\thread\ThreadSafeClassLoader#3, object pocketmine\utils\MainLogger#6, string[25] /home/anmine/servers/s99/, string[33] /home/anmine/servers/s99/plugins/)
#6 pmsrc/src/PocketMine(364): pocketmine\server()
#7 pmsrc(11): require(string[62] phar:///home/anmine/servers/s99/InCore.phar/src/PocketMine.php)

Loaded Plugins

  • Show

Server Settings

  • Show

Installed Composer Dependencies

Installed PHP Extensions

  • Show