АРМ Pegas - Хранилище-Синхронизация

Замечания и пожелания по развитию ПО, а также вопросы эксплуатации
Правила форума
Здесь место для дискуссии о:
- замеченных недостатках в ПО PEGAS,
- пожеланиях по дальнейшему развитию АРМ и сервера.
- вопросах эксплуатации ПО PEGAS.
При "неожиданном завершении программы" просьба прикреплять к сообщению файл дампа сформированного программой.
d15b200

АРМ Pegas - Хранилище-Синхронизация

Непрочитанное сообщение d15b200 »

От Шитова Алексея получил скрип по созданию БД pegas_repository, БД создана, пользователь и процедуры.
Вот только при попытке записать настройки в хранилище АРМ выдаёт сообщение "Несовместимая версия хранилища"

Можно как ни будь детальнее продиагностировать эту ошибку?
d15b200

Re: АРМ Pegas - Хранилище-Синхронизация

Непрочитанное сообщение d15b200 »

не хватило:

Код: Выделить всё

REPLACE INTO `pegas_repository`.`locals` (param,value) VALUES ('repo_version','1')
Общий скрип создание бд таков:

Код: Выделить всё

    CREATE DATABASE `pegas_repository` /*!40100 DEFAULT CHARACTER SET utf8 */;
     
    DROP TABLE IF EXISTS `pegas_repository`.`locals`;
    CREATE TABLE  `pegas_repository`.`locals` (
      `param` VARCHAR(16) NOT NULL DEFAULT '',
      `value` BIGINT(20) UNSIGNED NOT NULL,
      PRIMARY KEY (`param`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
     
    DROP TABLE IF EXISTS `pegas_repository`.`revisions`;
    CREATE TABLE  `pegas_repository`.`revisions` (
      `revision` INT(10) UNSIGNED NOT NULL,
      `comment` text NOT NULL,
      `user` VARCHAR(32) NOT NULL,
      `user_addr` INT(10) UNSIGNED NOT NULL,
      `upd_counter` BIGINT(20) UNSIGNED NOT NULL,
      `utime` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
      PRIMARY KEY (`revision`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
     
    DROP TABLE IF EXISTS `pegas_repository`.`repo`;
    CREATE TABLE  `pegas_repository`.`repo` (
      `id` CHAR(38) NOT NULL,
      `revision` INT(10) UNSIGNED NOT NULL,
      `action` enum('insert','delete') DEFAULT NULL,
      `title` text,
      `data` BLOB,
      PRIMARY KEY (`id`) USING BTREE
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
     
    DROP TABLE IF EXISTS `pegas_repository`.`repo_history`;
    CREATE TABLE  `pegas_repository`.`repo_history` (
      `id` CHAR(38) NOT NULL,
      `revision` INT(10) UNSIGNED NOT NULL,
      `action` enum('insert','delete') DEFAULT NULL,
      `title` text,
      `data` BLOB,
      PRIMARY KEY (`id`,`revision`) USING BTREE
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
     
    GRANT SELECT,EXECUTE ON pegas_repository.* TO '$PEGAS_REPO$'@'%' IDENTIFIED BY PASSWORD '*BE8B2E213CD3C004D276580037FC41DB30D6EFCF';
    GRANT SELECT ON smk30.* TO '$PEGAS_REPO$'@'%';
     
    USE pegas_repository;
     
    DELIMITER $$
     
    DROP PROCEDURE IF EXISTS `pegas_repository`.`REVFIXED`$$
    CREATE PROCEDURE  `pegas_repository`.`REVFIXED`(USER CHAR(32),user_addr INT UNSIGNED,comment TEXT, OUT rev_counter INT)
    BEGIN   SET AUTOCOMMIT=0;  START TRANSACTION;  SELECT IFNULL(MAX(VALUE), 0)+1 INTO rev_counter FROM `locals` WHERE param='rev_counter';  INSERT INTO `locals` (param,VALUE) VALUES ('rev_counter',rev_counter) ON DUPLICATE KEY UPDATE VALUE=rev_counter;  INSERT INTO `revisions` (revision,comment,USER,user_addr,upd_counter,utime) VALUES (rev_counter, comment,USER,user_addr,UPDCNTR(),NULL);  COMMIT;END $$
     
    DELIMITER ;
     
    DELIMITER $$
     
    DROP FUNCTION IF EXISTS `pegas_repository`.`INSERT_IN_REPO`$$
    CREATE FUNCTION  `pegas_repository`.`INSERT_IN_REPO`(tool_id CHAR(38),tool_title TEXT,repo_data BLOB) RETURNS BIGINT(20)
    BEGIN   IF NOT ISNULL(@rev_counter) OR @rev_counter<0 THEN    INSERT pegas_repository.repo (id,action,title,DATA,revision) VALUES (tool_id,'insert',tool_title,repo_data,@rev_counter)       ON DUPLICATE KEY UPDATE action='insert',title=tool_title,DATA=repo_data,revision=@rev_counter;    INSERT pegas_repository.repo_history (id,action,title,DATA,revision) VALUES (tool_id,'insert',tool_title,repo_data,@rev_counter);    RETURN @rev_counter;  END IF;  RETURN @rev_counter;END;
     
     $$
     
    DELIMITER ;
     
    DELIMITER $$
     
    DROP FUNCTION IF EXISTS `pegas_repository`.`UPDCNTR`$$
    CREATE FUNCTION  `pegas_repository`.`UPDCNTR`() RETURNS BIGINT(20)
    BEGIN   DECLARE curr_max BIGINT;  SELECT upd_counter INTO curr_max FROM `smk30`.`locals`;  RETURN curr_max;END;
     
     $$
     
    DELIMITER ;
     
    DELIMITER $$
     
    DROP FUNCTION IF EXISTS `pegas_repository`.`REV2CNT`$$
    CREATE FUNCTION  `pegas_repository`.`REV2CNT`(rev INT UNSIGNED) RETURNS BIGINT(20)
    BEGIN   DECLARE counter BIGINT;  SELECT upd_counter INTO counter FROM `revisions` r WHERE r.revision=rev;  RETURN counter;END;
     
     $$
     
    DELIMITER ;
     
    REPLACE INTO `pegas_repository`.`locals` (param,VALUE) VALUES ('repo_version','1')
d15b200

Re: АРМ Pegas - Хранилище-Синхронизация

Непрочитанное сообщение d15b200 »

Наблюдаю странное поведение АРМа, если было открыто окно Ethernet параметров, то в синхронизации не отображается остальное
2018-05-31 14_35_48-АРМ оператора оборудования Пульсар-Телеком (PEGAS).png
Если зарыть окно и выполнить перечитать то список отображается
2018-05-31 14_36_35-Навигатор - Хмыловский (3.73) - полный доступ.png
версия АРМ
2018-05-31 14_39_46-О программе.png
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Пинчук Андрей

Re: АРМ Pegas - Хранилище-Синхронизация

Непрочитанное сообщение Пинчук Андрей »

d15b200 писал(а):Наблюдаю странное поведение АРМа, если было открыто окно Ethernet параметров, то в синхронизации не отображается остальное
2018-05-31 14_35_48-АРМ оператора оборудования Пульсар-Телеком (PEGAS).png
Если зарыть окно и выполнить перечитать то список отображается
2018-05-31 14_36_35-Навигатор - Хмыловский (3.73) - полный доступ.png
версия АРМ
2018-05-31 14_39_46-О программе.png
Все зависит от того на какой ветке дерева было выбрано хранилище.
d15b200

Re: АРМ Pegas - Хранилище-Синхронизация

Непрочитанное сообщение d15b200 »

Открываю устройство в навигаторе.
В окне навигатора есть боковая кнопка та пункт "Хранилище" пользуюсь ей:
1) изменение фокуса в навигаторе (Сеть, Коммутатор и т.п.) не влияют на полный список объектов для синхронизации для этого устройства.
2) выбираю настройка Сети. Теперь отображается только эта настройка в синхронизации, даже смена фокуса на другой объект ничего не меняет.

ПыСы. Через щелчок правой кнопкой мыши на объекте отображается список для этого древа, тут всё логично и понятно)))
d15b200

Re: АРМ Pegas - Хранилище-Синхронизация

Непрочитанное сообщение d15b200 »

Пытаюсь попробовать восстановить настройки
2018-06-01 11_51_23-WinMerge - [Текущие данные - Копия хранилища. Ревизия 3].png
выбираю восстановить
2018-06-01 11_51_00-Синхронизация с хранилищем.png
2018-06-01 11_51_48-Синхронизация с хранилищем.png

получаю вот это
2018-06-01 11_52_27-Синхронизация с хранилищем.png
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Пинчук Андрей

Re: АРМ Pegas - Хранилище-Синхронизация

Непрочитанное сообщение Пинчук Андрей »

d15b200 писал(а):Пытаюсь попробовать восстановить настройки
2018-06-01 11_51_23-WinMerge - [Текущие данные - Копия хранилища. Ревизия 3].png
выбираю восстановить
2018-06-01 11_51_00-Синхронизация с хранилищем.png
2018-06-01 11_51_48-Синхронизация с хранилищем.png

получаю вот это
2018-06-01 11_52_27-Синхронизация с хранилищем.png
Ну хоть кто-то стал пользоваться. Спасибо, косяк исправил.
Ответить