powered by simpleCommunicator - 2.0.37     © 2025 Programmizd 02
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Как установить Cache' Block Explorer?
25 сообщений из 25, страница 1 из 1
Как установить Cache' Block Explorer?
    #39480109
Алексей12377
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!

Прочитал статьи про блоки Каше - очень интересно. А есть инструкция как поставить и сконфигурировать Cache Block explorer на Cache под Windows (2016.2)?

https://github.com/daimor/CacheBlocksExplorer

Спасибо.
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39480211
Александр Коблов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей12377,

Я сам не пробовал, но на закладке Releases вроде файлы для установки есть
https://github.com/daimor/CacheBlocksExplorer/releases
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39480325
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей12377,

Как верно заметил Александр, есть релизная версия, там есть два вида установщика.
Можно установить в любую область и настроить самостоятельно. - CacheBlocksExplorer.xml

Либо с настройкой новой области приложения и всего что нужно - StandaloneInstaller.cls.xml

Если есть проблемы при установке и в работе, пиши, постараюсь исправить. У меня есть желание улучшить проект, в том числе в части поддержки разных версий Caché, но к сожалению пока не получается выделить время на это. Много параллельных проектов и так, плюс семья.
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39480562
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DAiMor,

нет в планах функционала по определению ошибок в структуре и их исправлению?
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39480586
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блок А.Н.DAiMor,

нет в планах функционала по определению ошибок в структуре и их исправлению?А чем стандартная проверка целостности не устраивает?
Автоматическое исправление ошибок наверно и можно реализовать. Но не просто, и нужна коллекция ошибок. Да и вероятность корректного исправления ошибок все таки не 100%.
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39480678
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DAiMor,

автоматическое не стоит, наверное. А вот показать и дать исправить, думаю, можно. Но тут согласен, тяжело тестировать, нужны "эталонные" ошибки.
Стандартная не нравится тем, что не нее нет документации, кроме относительно простых ошибок поправить я, например, не смогу. Большую часть параметров типа Blnextpntlen4 и подобных я вообще не понимаю. Видел ошибки в bigstring блоках, их REPAIR вообще не дает править (благо, потом исчезли сами собой). Был случай, когда при исправлении ошибки у блока добавился дочерний узел, при редактировании и сохранении я создал еще одну ошибку. Хотелось бы при сохранении предупреждение, что блок в базе изменился (надеюсь, там есть какие-то метки, когда он был последний раз записан?). И в целом REPAIR дико неудобный, при том, что количество дочерних узлов огромное, а INTEGRIT иногда дает очень туманные описания. Приходится многостраничную выдачу REPAIR копировать в блокнот и там искать текстом.
Но я понимаю, в идеале необходимость в REPAIR должна возникать крайне редко, а писать и тестировать стороннюю утилиту для таких дел, как работа со структурой базы в некоторых случаях может быть вредно для кармы :-)
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39480718
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Или вот, например, ситуация. INTEGRIT проверяет глобал несколько часов, я правлю ошибки, сохраняю и снова проверяю. Но мне так то не нужно проверять заново весь глобал, я же знаю, где произошла ошибка.
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39480730
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во, там же потыкать можно и посмотреть:

Blincversion4 - block header incremental backup version
Blpntlen4 - block header pointer length field
Blnextpntlen4 - block header next pointer length
Blnextpntvalue4 - block header Discriminator byte
Blnextpntoff - block header indicator of stored next pointer

Правда, непонятно все-таки, зачем это нормальному человеку нужно править?
А вот где поправить, например, "Next Pointer Reference", я так и не увидел. Линк правится, а вот это как нужно само не заполняется
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39480734
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блок А.Н.Но мне так то не нужно проверять заново весь глобал, я же знаю, где произошла ошибка.Частичные проверки (типа пройтись по указателям) позволяет делать REPAIR, а если нужна полная проверка, то всё равно будет не быстрее, чем Integrity.
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39480740
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey Maslov,

а у REPAIR разве есть функция проверки? По-моему, она как топор, что скажешь, то и отрежет. Не вижу там опций по проверке данных.
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39480865
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блок А.Н., можно пройтись по цепочке указателей сверху-вниз до текущего блока можно:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Block # 6958             Type: 8 DATA
Link Block: 6959         Offset: 7372
Count of Nodes: 520      Collate: 37            Big String Nodes: 0
Pointer Length:33        Next Pointer Length:42  Diff Byte:Hex 22
Pointer Reference:      ^Q(1,70,"#ABAAnKp","rlss")
Next Pointer Reference: ^Q(1,70,"#ABAAnLH","rlswname>")
Next pointer stored? Yes
 
 
--more--q
 
Block Repair Function (Current Block 6958): 9 Pointer Tree
 
3 levels
Directory block: 3 => 48 => 7027 => 6958
 
Block Repair Function (Current Block 6958):

О корректности правого указателя (Link Block) утилита также предупреждает. Т.о., локальные аномалии увидеть довольно легко, а какую ещё ограниченную проверку (кроме полной) можно предложить? Integrity, кстати, позволяет проверить и отдельный глобал.
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39480901
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey MaslovIntegrity, кстати, позволяет проверить и отдельный глобал.И не теолько отдельный глобал, а еще можно запустить с любого блока. Очень удобно когда база большая, и чтобы долго не ждать.
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39480907
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey Maslov,

Да вы прикалываетесь. В блоке может быть штук 700 ссылок. Их просто проматывать и смотреть уже нереально (я в блокнот копирую, но это убожество) В каждом блоке есть правый указатель, но если бы только он. В каждом блоке есть "первый указатель", который должен совпадать с указателем в родительском блоке. Последний указатель блока должен быть меньше в сортировке, чем последний предыдущего блока. И это только то, что при моих ограниченных знаниях сразу пришло в голову, там целая система уравнений, что с чем должно совпадать. Чтобы проверить буквально одну кривую правую ссылку, нужно зайти и посмотреть несколько блоков, причем предыдущие данные уматывает вверх, да и текущие не очень то удобно смотреть. Приходится работать в нескольких REPAIR одновременно.
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39480908
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DAiMorа еще можно запустить с любого блока. Очень удобно когда база большая, и чтобы долго не ждать.Не видел такой опции, действительно, это было бы удобно.
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39480912
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey MaslovIntegrity, кстати, позволяет проверить и отдельный глобал.
Код: plaintext
1.
2.
3.
4.
5.
6.
 Top Pointer Level:    # of blocks=1      8kb (17% full)
 Pointer Level:        # of blocks=102      816kb (79% full)
 Bottom Pointer Level: # of blocks=54,132      422MB (79% full)
 Data Level:           # of blocks=42,378,249      331,080MB (85% full)
 Big Strings:          # of blocks=1,328      10MB (59% full) # = 1,283
 Total:                # of blocks=42,433,812      331,514MB (85% full)
 Elapsed Time = 14083.7 seconds 17:21:08

Не всегда помогает :-)
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39480922
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блок А.Н.DAiMorа еще можно запустить с любого блока. Очень удобно когда база большая, и чтобы долго не ждать.Не видел такой опции, действительно, это было бы удобно.Ну это не то чтобы опция, просто исходники то открыты, и можно найти место для этого.
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39480994
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блок А.Н.Да вы прикалываетесь. В блоке может быть штук 700 ссылокНе более, чем вы: едва ли кто-то возьмётся править несколько сотен ошибок :)

Ошибки в 99% случаев затрагивают блоки данных, и закончив правку блока данных, я нередко смотрел Pointer Tree. Полной проверки, понятное дело, это не заменяет, но грубую ошибку заметить можно.
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39481136
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey Maslov,

Эм. У меня pointer tree показывает всего лишь цепочку родительских блоков, а не все дерево.
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39481589
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блок А.Н.,

Верно, поэтому полезность сей опции - в основном контроль родительской цепочки после правки блока данных.

Наверное, было бы интереснее, если бы она показывала ещё и две цепочки до соседних блоков, которые тоже обычно бывают затронуты правкой.

По воспоминаниям, самые большие неприятности мне доставила REPAIR в Cache 2010.1 (?), когда она сама вдруг вылетела по ошибке. Хорошо, что базы были тогда не очень большие, так что относительно быстро перетащили БД в более свежую версию Cache, где REPAIR по крайней мере не вылетала. Дело давнее, подробностей уже не помню.
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39584383
vcoshak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DAiMor,
пытаюсь установить StandaloneInstaller.cls.xml . Создаётся Namespace BLOCKS с классами Blocks.Router и Blocks.WebSocket но выдаются ошибки компиляции:
Код: c#
1.
Blocks.Router.cls(DBList+23) #1011: Invalid name : 'dblist.$toJSONFormat()' : Offset:18 [zDBList+20^Blocks.Router.1]

и
Код: c#
1.
Blocks.WebSocket.cls(Server+22) #1033: Expected literal : 'response={"event": event,' : Offset:43 [zServer+20^Blocks.WebSocket.1]


Используется Cache for Windows (x86-64) 2017.1 (Build 792U).

В чём может быть проблема?
Спасибо.
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39584407
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vcoshak,

Да, к сожалению пока не было времени вплотную занятся проектом. И он немного устарел. Данный релиз подходит только для версии 2016.1. И ни для каких других.
Для новых версий я релиз пока не сделал, но код уже есть, правда не все корректно работает
если знаком с докер, то сейчас подготовлено уже рабочая среда для тестирования
нужна лицензия Cache под Linux, файл лицензии должен быть скопирован в переменную CACHE_KEY. Без лицензии, думаю что работать не сможет.
используются порты 80, 57772, 1972
если нужно порты поменять, то нужно объявить переменные
Код: plaintext
1.
2.
3.
CACHE_WEBPORT=57772
CACHE_PORT=1972
WEB_PORT=80
все переменные можно объявить в системе, либо в папке проекта рядом с файлом docker-compose.yml в файле ".env"
версию Cache тоже можно выбрать через переменную
Код: plaintext
CACHE_VERSION=2017.2
доступные версии : 2016.2, 2017.1, 2017.2, есть и ранние но только на этих версиях сможет сейчас работать
клонировать последнюю версию из репозитория, перейти в папку проекта и запустить docker сервисы (бекенд и фронтенд), запуск займет некоторое время, требуется доступ к интернету, для загрузки всего необходимого
Код: plaintext
1.
2.
3.
git clone  https://github.com/daimor/CacheBlocksExplorer.git 
cd CacheBlocksExplorer
docker-compose up -d

после этих команд, запустится Cache2017.2 и фронтенд отдельно
должен быть доступен по адресу http://localhost/
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39584453
vcoshak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DAiMor,
спасибо, но с докер не знаком и лицензии Cache под Linux пока нет - попробую ваше предложение позже.

Сейчас же мне нужно решить конкретную задачку (см. ниже) и я думал, что этот проект мне поможет.
Не подскажете, так ли это?

Задача: у заказчика быстро растёт глобаль ^CacheTemp<XYZ>, который используют более сотни рутин для сортировки.
Нужно определить, какая рутина "забывает" почистить глобаль после использования.
Была идея, что если обходом глобаля найти узлы, имеющие большой размер и/или растущие быстро, то по структуре узла можно найти рутину.
Поможет ли мне в этом Cache Block explorer?

Сначала попробовал ваш код Растет БД CACHETEMP , но он у меня навскидку не заработал.
Есть ли другие более-менее готовые решения?
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39584574
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vcoshak ,

[полу]готовое решение - функция $$AllocatedSize^%GSIZE(GlobalName). Она принимает и подглобалы, поэтому, используя $order(), можно пройти по первому уровню проблемного глобала, узнать размеры каждого подглобала первого уровня, таким образом, найдёте самый большой; он же обычно и самый быстрорастущий, так что изучать динамику роста, возможно, не придётся. Если первого уровня окажется недостаточно, углубляетесь на второй уровень.
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39584583
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vcoshak,

Нет, думаю этот проект не очень подходит для такой задачи. Хотя и в какой то мере наверно бы, что-то можно было бы увидеть, но с таким же успехом можно взять просмотрощик глобалов в портале управления.

Немного подправил тот код, выложил в GithubGist . Проверял на 2017.2
...
Рейтинг: 0 / 0
Как установить Cache' Block Explorer?
    #39585171
vcoshak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DAiMor,
Спасибо.
...
Рейтинг: 0 / 0
25 сообщений из 25, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Как установить Cache' Block Explorer?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]