Установка BOINC-клиента под Linux (apt)
Цитата: demis от 02.10.2024, 10:17Цитата: SerVal от 02.10.2024, 06:00https://github.com/BOINC/boinc/blob/master/db/schema.sql
Как можно видеть, в table user, name это varchar(191)
И никаких nvarchar нетути.
Всё это наводит мысль, что кодировка по умолчанию - ANSI.
На самом деле, в документации на Боинс нигде не утверждается,
что RPC выдаёт и принимает правильную XML строку, да ещё и с xml-декларацией.Насчет varchar:
Тут момент такой Вы сами спросили про nvarchar (это не претензия).
nvarchar - это тип поля в БД MSSQL. Выше я писал и упоминал про mssql, т.к. не знал как именно у Вас построена архитектура. И в мускуле такого нет. Мускульный varchar скушает то, что ему заталкивают, но согласно базовым установкам по кодировке.
varchar - это классика от мускула, постгриса и т.п. (все они уже давно под ораклом) не суть важно.
Точно знаю, что в постгрисе когда мы видим varchar(191), то это отображаемое ограничение поля. Реально туда запишется без ошибок и 254 байта (там физическое ограничение 255). Даже нигде код править не приходится. Возможно, что и в мускуле аналогично оракл сделал. Не знаю. Не смотрел.
Если мы говорим про мускул, то посмотреть это можно так:
[spoiler title="mysql"]
SHOW VARIABLES LIKE 'character_set_database';
+------------------------+---------+
| Variable_name | Value |
+------------------------+---------+
| character_set_database | utf8mb4 |
+------------------------+---------+
1 row in set (1.16 sec)SHOW TABLE STATUS WHERE Name = 'user';
+------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+--------------------+----------+----------------+---------+
| Name | Engine | Version | Row_format | Rows | Avg_row_length | Data_length | Max_data_length | Index_length | Data_free | Auto_increment | Create_time | Update_time | Check_time | Collation | Checksum | Create_options | Comment |
+------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+--------------------+----------+----------------+---------+
| user | InnoDB | 10 | Dynamic | 262 | 5190 | 1359872 | 0 | 114688 | 5242880 | 6556 | 2023-06-10 16:53:22 | 2024-10-02 10:00:47 | NULL | utf8mb4_0900_ai_ci | NULL | | |
+------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+--------------------+----------+----------------+---------+
1 row in set (0.06 sec)mysql> SELECT SCHEMA_NAME, DEFAULT_CHARACTER_SET_NAME FROM information_schema.SCHEMATA;
+--------------------+----------------------------+
| SCHEMA_NAME | DEFAULT_CHARACTER_SET_NAME |
+--------------------+----------------------------+
| mysql | utf8mb4 |
| information_schema | utf8mb3 |
| performance_schema | utf8mb4 |
| sys | utf8mb4 |
| adsl | utf8mb4 |
| phpmyadmin | utf8mb4 |
| adsl_backup1 | utf8mb4 |
+--------------------+----------------------------+
7 rows in set (0.06 sec)[/spoiler]
Где мы видим utf8mb4 , это последний и рекомендованный формат для utf-8.
Про RPC скажу так, формально - да. Воспринимайте его "как некий транспорт", т .е. структурированный способ передачи данных. А вот в каком виде это происходит - в бинарном, в xml, или еще каком - это как разработчик захочет, так и сделает. В слове rpc, p - это протокол. А протокол, это всего лишь правила "кто, когда, чем отвечает, в ответ на некое кодовое слово". И не важно протокол TCP или RPC, или еще какой-то. Это просто стандартизованная договоренность некоей последовательности общения.
Цитата: SerVal от 02.10.2024, 06:00https://github.com/BOINC/boinc/blob/master/db/schema.sql
Как можно видеть, в table user, name это varchar(191)
И никаких nvarchar нетути.
Всё это наводит мысль, что кодировка по умолчанию - ANSI.
На самом деле, в документации на Боинс нигде не утверждается,
что RPC выдаёт и принимает правильную XML строку, да ещё и с xml-декларацией.
Насчет varchar:
Тут момент такой Вы сами спросили про nvarchar (это не претензия).
nvarchar - это тип поля в БД MSSQL. Выше я писал и упоминал про mssql, т.к. не знал как именно у Вас построена архитектура. И в мускуле такого нет. Мускульный varchar скушает то, что ему заталкивают, но согласно базовым установкам по кодировке.
varchar - это классика от мускула, постгриса и т.п. (все они уже давно под ораклом) не суть важно.
Точно знаю, что в постгрисе когда мы видим varchar(191), то это отображаемое ограничение поля. Реально туда запишется без ошибок и 254 байта (там физическое ограничение 255). Даже нигде код править не приходится. Возможно, что и в мускуле аналогично оракл сделал. Не знаю. Не смотрел.
Если мы говорим про мускул, то посмотреть это можно так:
SHOW VARIABLES LIKE 'character_set_database';
+------------------------+---------+
| Variable_name | Value |
+------------------------+---------+
| character_set_database | utf8mb4 |
+------------------------+---------+
1 row in set (1.16 sec)
SHOW TABLE STATUS WHERE Name = 'user';
+------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+--------------------+----------+----------------+---------+
| Name | Engine | Version | Row_format | Rows | Avg_row_length | Data_length | Max_data_length | Index_length | Data_free | Auto_increment | Create_time | Update_time | Check_time | Collation | Checksum | Create_options | Comment |
+------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+--------------------+----------+----------------+---------+
| user | InnoDB | 10 | Dynamic | 262 | 5190 | 1359872 | 0 | 114688 | 5242880 | 6556 | 2023-06-10 16:53:22 | 2024-10-02 10:00:47 | NULL | utf8mb4_0900_ai_ci | NULL | | |
+------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+--------------------+----------+----------------+---------+
1 row in set (0.06 sec)
mysql> SELECT SCHEMA_NAME, DEFAULT_CHARACTER_SET_NAME FROM information_schema.SCHEMATA;
+--------------------+----------------------------+
| SCHEMA_NAME | DEFAULT_CHARACTER_SET_NAME |
+--------------------+----------------------------+
| mysql | utf8mb4 |
| information_schema | utf8mb3 |
| performance_schema | utf8mb4 |
| sys | utf8mb4 |
| adsl | utf8mb4 |
| phpmyadmin | utf8mb4 |
| adsl_backup1 | utf8mb4 |
+--------------------+----------------------------+
7 rows in set (0.06 sec)
Где мы видим utf8mb4 , это последний и рекомендованный формат для utf-8.
Про RPC скажу так, формально - да. Воспринимайте его "как некий транспорт", т .е. структурированный способ передачи данных. А вот в каком виде это происходит - в бинарном, в xml, или еще каком - это как разработчик захочет, так и сделает. В слове rpc, p - это протокол. А протокол, это всего лишь правила "кто, когда, чем отвечает, в ответ на некое кодовое слово". И не важно протокол TCP или RPC, или еще какой-то. Это просто стандартизованная договоренность некоей последовательности общения.
Цитата: demis от 02.10.2024, 10:22Цитата: SerVal от 02.10.2024, 05:42
Такое впечатление, что обратный ответ от сервера герасима не приходит.
Чтобы что-то выяснить, мне нужен host ID или host authenticator. Лучше host ID.
Как только хост появится в запросе к Шедулеру, request и reply скопируются в server log.
Так вроде пользователь давал ссылку на свои компы, да и на акаунт тоже?
Можно-же в обратную сторону раскрутить сиквел запросом, получив листинг его хостов и применив фильтр "только те у кого зеро". Не?
Цитата: SerVal от 02.10.2024, 05:42
Такое впечатление, что обратный ответ от сервера герасима не приходит.
Чтобы что-то выяснить, мне нужен host ID или host authenticator. Лучше host ID.
Как только хост появится в запросе к Шедулеру, request и reply скопируются в server log.
Так вроде пользователь давал ссылку на свои компы, да и на акаунт тоже?
Можно-же в обратную сторону раскрутить сиквел запросом, получив листинг его хостов и применив фильтр "только те у кого зеро". Не?
Цитата: demis от 02.10.2024, 10:24Цитата: Yura12 от 02.10.2024, 07:18
Но с другой стороны, даже если не получится подключить Gerasim и Ramanujan Machine - то не особо что и потеряем.
У сервера процессор Intel Xeon E5-2407 0 @ 2.20GHz
Там не такая уж большая производительность, так что ничего не теряем.
Даже Asteroids там считается медленно.
Не отчаивайтесь. Еще не все потеряно...
Цитата: Yura12 от 02.10.2024, 07:18
Но с другой стороны, даже если не получится подключить Gerasim и Ramanujan Machine - то не особо что и потеряем.
У сервера процессор Intel Xeon E5-2407 0 @ 2.20GHz
Там не такая уж большая производительность, так что ничего не теряем.
Даже Asteroids там считается медленно.
Не отчаивайтесь. Еще не все потеряно...
Цитата: Yura12 от 02.10.2024, 19:50
Вот host id
https://gerasim.boinc.ru/users/viewHostDetail.aspx?hostid=69528
Вот host id
https://gerasim.boinc.ru/users/viewHostDetail.aspx?hostid=69528
Цитата: Yura12 от 02.10.2024, 19:53
одного из файлов нет
ls -la master_gerasim*.xml job_log_gerasim*.txt sched_request_gerasim*.xml statistics_gerasim*.xml
ls: cannot access 'job_log_gerasim*.txt': No such file or directory
-rw-r--r-- 1 boinc boinc 16029 окт 2 14:27 master_gerasim.boinc.ru.xml
-rw-r--r-- 1 boinc boinc 6590 окт 2 18:00 sched_request_gerasim.boinc.ru.xml
-rw-r--r-- 1 boinc boinc 422 окт 1 12:47 statistics_gerasim.boinc.ru.xml
одного из файлов нет
ls -la master_gerasim*.xml job_log_gerasim*.txt sched_request_gerasim*.xml statistics_gerasim*.xml
ls: cannot access 'job_log_gerasim*.txt': No such file or directory
-rw-r--r-- 1 boinc boinc 16029 окт 2 14:27 master_gerasim.boinc.ru.xml
-rw-r--r-- 1 boinc boinc 6590 окт 2 18:00 sched_request_gerasim.boinc.ru.xml
-rw-r--r-- 1 boinc boinc 422 окт 1 12:47 statistics_gerasim.boinc.ru.xml
Цитата: demis от 02.10.2024, 23:04Цитата: Yura12 от 02.10.2024, 19:53
одного из файлов нет
ls -la master_gerasim*.xml job_log_gerasim*.txt sched_request_gerasim*.xml statistics_gerasim*.xml
ls: cannot access 'job_log_gerasim*.txt': No such file or directory
-rw-r--r-- 1 boinc boinc 16029 окт 2 14:27 master_gerasim.boinc.ru.xml
-rw-r--r-- 1 boinc boinc 6590 окт 2 18:00 sched_request_gerasim.boinc.ru.xml
-rw-r--r-- 1 boinc boinc 422 окт 1 12:47 statistics_gerasim.boinc.ru.xml
О! Отлично! Видно, что файлики апдейтятся. Это уже хорошо.
То, что нет job_log_gerasim*.txt - это логично, клиент не получил и не посчитал ни одного задания, значит и процедура создания и записи в файл не отрабатывали. Ок. Нормально.
Забыл еще указать этот файлик посмотреть: sched_reply_gerasim.boinc.ru.xml
Ну а остальное SerVal уже смотреть должен.
И причем обратите внимание, что по ссылке пользователя до сих пор Last contact не обновился...
Тут не без водолаза...
Цитата: Yura12 от 02.10.2024, 19:53
одного из файлов нет
ls -la master_gerasim*.xml job_log_gerasim*.txt sched_request_gerasim*.xml statistics_gerasim*.xml
ls: cannot access 'job_log_gerasim*.txt': No such file or directory
-rw-r--r-- 1 boinc boinc 16029 окт 2 14:27 master_gerasim.boinc.ru.xml
-rw-r--r-- 1 boinc boinc 6590 окт 2 18:00 sched_request_gerasim.boinc.ru.xml
-rw-r--r-- 1 boinc boinc 422 окт 1 12:47 statistics_gerasim.boinc.ru.xml
О! Отлично! Видно, что файлики апдейтятся. Это уже хорошо.
То, что нет job_log_gerasim*.txt - это логично, клиент не получил и не посчитал ни одного задания, значит и процедура создания и записи в файл не отрабатывали. Ок. Нормально.
Забыл еще указать этот файлик посмотреть: sched_reply_gerasim.boinc.ru.xml
Ну а остальное SerVal уже смотреть должен.
И причем обратите внимание, что по ссылке пользователя до сих пор Last contact не обновился...
Тут не без водолаза...
Цитата: demis от 02.10.2024, 23:06Цитата: Yura12 от 02.10.2024, 19:58
А вот SiDock подключился с 1 раза и сразу же получил задания.
Это лишнее подтверждение, что проблема скорее на стороне сервера...
Цитата: Yura12 от 02.10.2024, 19:58
А вот SiDock подключился с 1 раза и сразу же получил задания.
Это лишнее подтверждение, что проблема скорее на стороне сервера...
Цитата: Yura12 от 03.10.2024, 02:03
Посмотрел ls -la sched_reply_gerasim.boinc.ru.xml
-rw-r--r-- 1 boinc boinc 0 окт 2 22:41 sched_reply_gerasim.boinc.ru.xml
Посмотрел ls -la sched_reply_gerasim.boinc.ru.xml
-rw-r--r-- 1 boinc boinc 0 окт 2 22:41 sched_reply_gerasim.boinc.ru.xml
Цитата: SerVal от 03.10.2024, 09:11---- Итак:
Клиент запрашивает:
<scheduler_request> ... </scheduler_request>Сервер отвечает:
<scheduler_reply> ... </scheduler_reply>Вот и всё, что нам надо обеспечить.
====Вот host id
https://gerasim.boinc.ru/users/viewHostDetail.aspx?hostid=69528Посмотрел на host, вроде бы всё хорошо.
Правда не факт, что host_cpid назначен герасимом.
Но уже лучше.
----Ждём завершения соревнования в Герасиме. Осталось 2 дня.
Пока неизвестно, доходит ли обращение к Шедулеру до Шедулера.
Всем привет и хорошего настроения!
---- Итак:
Клиент запрашивает:
<scheduler_request> ... </scheduler_request>
Сервер отвечает:
<scheduler_reply> ... </scheduler_reply>
Вот и всё, что нам надо обеспечить.
====
Вот host id
https://gerasim.boinc.ru/users/viewHostDetail.aspx?hostid=69528
Посмотрел на host, вроде бы всё хорошо.
Правда не факт, что host_cpid назначен герасимом.
Но уже лучше.
----
Ждём завершения соревнования в Герасиме. Осталось 2 дня.
Пока неизвестно, доходит ли обращение к Шедулеру до Шедулера. 
Всем привет и хорошего настроения!
