powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / ошибка needs collation #23 при загрузке глобалей
13 сообщений из 13, страница 1 из 1
ошибка needs collation #23 при загрузке глобалей
    #38358642
Фотография DirksDR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!

Установил

Cache for Windows (x86-32) 2013.1.1 (Build 501.1suU_SU) Mon Jul 15 2013 10:06:03 EDT

До этого стояла Cache for Windows (x86-32) 2009....

Пытаюсь загрузить глобали:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
 
USER>do ^%GIF
 
Load globals from a file/tape written by %GOF
Device: e:\globals.gof
           file format: ("UR") =>
 
 
File written on 06/19/2013 at 06:27PM
 
Description: Export of 82 globals from Namespace USER
Journaling is currently enabled.  All imported data will be journaled.
 
The global(s) included are:
     ^a                                      ^ArcObjD
     ^ArcObjI                                ^ArcTreeNodeD
     ^ArcTreeNodeI                           ^CACHETEMP.xxx
     ^CalcTypeD                              ^CalibrD
     ^cfcopy                                 ^CInfo.CompanyD

...



получаю ошибку

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
 
Loading globals
 
Creating ^a (needs collation #23, not available, skipping)
                                        1637 blocks
Creating ^ArcObjD (needs collation #23, not available, skipping)
                                        20 blocks
Creating ^ArcObjI (needs collation #23, not available, skipping)
                                        12 blocks
Creating ^ArcTreeNodeD (needs collation #23, not available, skipping)
                                        19 blocks
...



Как лечить ошибку?
Поменял в свойствах базы USER сортировку для новых глобалей на "Стандартную Cache". Результат тот же.
...
Рейтинг: 0 / 0
ошибка needs collation #23 при загрузке глобалей
    #38358710
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А существуют уже глобалы с таким именем?
Что будет, если их удалить.

Второй вариант, глобалы выгружены в языке/сортировке, который ваша текущая система не поддерживат
...
Рейтинг: 0 / 0
ошибка needs collation #23 при загрузке глобалей
    #38358894
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Думаю, всё ещё проще. Глобалы выгружены в GOF-формате из Cache 8bit, т.к. таблица №23 - Cyrillic2 - есть только в 8-битной локали ruw8 - и в ей подобных. В юникодной локали rusw ей соотвествуюет то ли Cyrillic1, то ли Cyrillic3 (нет сейчас Каше под рукой).

Ну в общем нельзя передавать данные в GOF-формате между установками с различной разрядностью кодировки. О возможных подходах к конверсии 8-bit -> Unicode здесь уже писалось немало, не буду повторяться.
...
Рейтинг: 0 / 0
ошибка needs collation #23 при загрузке глобалей
    #38360537
Фотография DirksDR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey Maslov,

Спасибо, скорее всего так и есть.

Не могу вспомнить, был ли запрос о выборе вырианта 8бит или юникода, когда инсталировал Cache-2013.
Или это заложено в дистрибутив?

Видимо, создать 8битную базу тоже не получится?

От инсталяции Cache-2009 осталась папка Intersystems, со всеми потрохами. Можно ли ее как-то запустить?
Или нужен дистрибутив Cache-2009?
...
Рейтинг: 0 / 0
ошибка needs collation #23 при загрузке глобалей
    #38360571
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DirksDRИли это заложено в дистрибутив?Возможно, в бесплатной версии - да (давно её не ставил )) Попробуйте повторно запустить установку, отказаться всегда успеете.DirksDRИли нужен дистрибутив Cache-2009?Боюсь что таки-да. Но почему именно 2009? Можно и любой более поздней.
...
Рейтинг: 0 / 0
ошибка needs collation #23 при загрузке глобалей
    #38360585
Шваров Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конвертнуть можно, например, этой утилитой:
https://github.com/intersystems-ru/UConv

Сначала экспорт глобалов в файл с помощью утилиты на 8-битной, потом импорт этой же утилитой на юникодной.
...
Рейтинг: 0 / 0
ошибка needs collation #23 при загрузке глобалей
    #38360681
Фотография DirksDR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Шваров Евгений,

Проблема в том, что экспорт уже сделан:)

Проверил, дистрибутив 2013 года TryCache без вопросов устанавливает юникод.

Установил Cache-2010 и глобали загрузились без проблем.

Теперь надо думать, продолжить эксперименты в 8-битной 2010, или переходить в юникод на 2013.

Наверное, неспроста Intersystems ставит юникод по-умолчанию в последних версиях?
...
Рейтинг: 0 / 0
ошибка needs collation #23 при загрузке глобалей
    #38360961
Шваров Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DirksDRШваров Евгений,

Проблема в том, что экспорт уже сделан:)

Установил Cache-2010 и глобали загрузились без проблем.

Наверное, неспроста Intersystems ставит юникод по-умолчанию в последних версиях?

Я правильно понял, что Вы можете сделать заново экспорт из Cache-2010 с помощью этой утилиты?

BTW: на бесплатной версии мы не рекомендуем делать какие-либо серьезные проекты - она серьезно ограничена по производительности и по многим другим характеристикам.
...
Рейтинг: 0 / 0
ошибка needs collation #23 при загрузке глобалей
    #38361064
Фотография DirksDR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Шваров Евгений
>>Я правильно понял, что Вы можете сделать заново экспорт из Cache-2010 с помощью этой утилиты?
Возможно, хотя портал мои глобали не выгружает:
Код: sql
1.
2.
3.
4.
5.
6.
7.
Экспорт в файл: E:\export.go;*
Формат вывода: Последовательный файл
Формат записи: Записи Переменной Длины
Набор знаков: CP1251
Экспорт  в формат GO/GOF начался в 08/09/2013 16:59:06

ОШИБКА #5001: 



а терминал не хочет даже начать экспорт при всех комбинациях форматов:
Код: sql
1.
2.
3.
4.
5.
6.
7.
 
USER>do ^%GO
 
Global output
Device: E:\export.go
Parameters? "WNS" => NWV  [unavailable]
Device:



Рулит программа от krvsa:
Код: sql
1.
2.
3.
4.
5.
6.
exportgl ;
 #include %occInclude
 s all="OM.ObjectD.gbl"
 s file="c:\MyFile.xml"
  d $system.OBJ.Export(all,file)
 q



но как справедливо писал Ptn:
Код: sql
1.
Для глобалов данные в XML передаются как BASE64 кодированные бинари - так что при загрзке на юникодной версии один фиг получается фигня :( 


хотя, надо почитать, может я неправильно загружаю:
d $system.OBJ.Load(file,"cf-d")

>>BTW: на бесплатной версии мы не рекомендуем делать какие-либо серьезные проекты - она серьезно ограничена по производительности и по многим другим характеристикам.
Другой у меня нет:)
Но я имею ввиду, что если доживу до стрессового тестирования, то можно будет попросить у Вас временную лицензию.
...
Рейтинг: 0 / 0
ошибка needs collation #23 при загрузке глобалей
    #38361107
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DirksDRUSER>do ^%GO
... [unavailable]Такое бывает при проблемах записи на диск (не существует диск или каталог, нет права записи и т.д.).
По этой же причине и в Портале не получилось.
...
Рейтинг: 0 / 0
ошибка needs collation #23 при загрузке глобалей
    #38362950
Шваров Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DirksDR,
Так в итоге пробовали экспортировать утилитой ?
Что получилось?

Временную лицензию конечно можно попросить.
В принципе под интересные проекты мы бесплатно предоставляем серверы с боевой Caché/Ensemble и лицензией на полгода/год.
Записаться можно здесь .
...
Рейтинг: 0 / 0
ошибка needs collation #23 при загрузке глобалей
    #38363286
Фотография DirksDR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey Maslov,

Алексей, Вы супер-спец!
Изменил раположение файла в папку c:\InterSystems\Cache\mgr\ и экспорт сработал!
Не ожидал, ведь $system.OBJ.Export сработал в c:\..., почему %GO не хочет - непонятно. Из одного терминала запускал.
Правда импорт %GI все равно не идет, думаю, что из-за $lb-записей.

Шваров Евгений

Воспользовался рекоменованной Вами утилитой. В Cache-2010 при ее загрузке была ошибка:
Код: sql
1.
2.
3.
4.
5.
6.
Компиляция началась в 08/12/2013 15:44:40 с квалификаторами 'cukd'
Компиляция класса Globals.Utils 
Компиляция программы Globals.Utils.1
Globals.Utils.1.INT(261) ERROR #1026: Invalid command : 'return' : Offset:17 [ztoFour+1^Globals.Utils.1]
 TEXT: 	if (t="") return "0000" //Можно ли?
Обнаружено 1 ошибок во время компиляции.


Загрузка утилиты в Cache-2013 прошла без ошибок.
Выгрузка из Cache-2010 и загрузка в Cache-2013 81-ой глобали прошла без ошибок.
Правда наткнулся, что в одной из колонок таблицы косячок - значение обрамлено лишними кавычкамии "..." . С этим как-нибудь справлюсь.

Большое спасибо всем за помощь!
...
Рейтинг: 0 / 0
ошибка needs collation #23 при загрузке глобалей
    #38363310
Шваров Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DirksDR,

А, да - return появилось в 2013.

return - это "безусловный" quit из метода/функции, полезная штука на самом деле.
Мы сделаем ветвь для before 2013 - но где-нибудь через недельку.
Если не хотите ждать, можно заменить return на quit почти везде безболезненно, если только return не в циклах.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / ошибка needs collation #23 при загрузке глобалей
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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