При обновлении конфигурации возникает ошибка: неправильный синтаксис около конструкции "<"
При обновлении конфигурации(не динамически) периодически возникает ошибка "неправильный синтаксис около конструкции "<" (скриншот ниже). после того как делаешь реструктуризацию. то ошибка уходит, но через какое то время возникает опять
платформа 8.3.24.1342
мб кто то сталкивался с подобной проблемой?
платформа 8.3.24.1342
мб кто то сталкивался с подобной проблемой?
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(5) ну первое после динамического обновления нужно на сервере чистить кеш. Если пользователи в тонком клиенте работают ещё и на их ПК. Т.к. после нескольких динамических, если пользователь не работал он словит сюрприз.
По хранилищу тоже самое.
Работа в рабочей базе под одним пользователем хранилища. Желательно под одним пользователем винды, если разные одинаково вводить путь.
Далее ключевое каждый раз получать все изменения. А только потом захват, не уверен нескольких раз получать изменения. Тогда проблем не будет.
Ну и режим совместимости с хранилищем последний?
По хранилищу тоже самое.
Работа в рабочей базе под одним пользователем хранилища. Желательно под одним пользователем винды, если разные одинаково вводить путь.
Далее ключевое каждый раз получать все изменения. А только потом захват, не уверен нескольких раз получать изменения. Тогда проблем не будет.
Ну и режим совместимости с хранилищем последний?
(9) проблему не решили, но нашли как решить проблему запускаем запрос
USE <<ИМЯБАЗЫ>>
GO
EXEC sp_MSforeachtable 'ALT ER INDEX all ON ? SET (ALLOW_PAGE_LOCKS = ON, ALLOW_ROW_LOCKS = ON)';
EXEC sp_msforeachtable N'DBCC INDEXDEFRAG (<<ИМЯБАЗЫ>>, ''?'')';
EXEC sp_MSforeachtable 'ALT ER INDEX all ON ? SET (ALLOW_PAGE_LOCKS = OFF, ALLOW_ROW_LOCKS = ON)';
ошибка после этого уходит
USE <<ИМЯБАЗЫ>>
GO
EXEC sp_MSforeachtable 'ALT ER INDEX all ON ? SET (ALLOW_PAGE_LOCKS = ON, ALLOW_ROW_LOCKS = ON)';
EXEC sp_msforeachtable N'DBCC INDEXDEFRAG (<<ИМЯБАЗЫ>>, ''?'')';
EXEC sp_MSforeachtable 'ALT ER INDEX all ON ? SET (ALLOW_PAGE_LOCKS = OFF, ALLOW_ROW_LOCKS = ON)';
ошибка после этого уходит
(11) Пересоздание хранилища на новой платформе не помогает? DT пробовали перевыгружать? Получилось добить проблему?
Столкнулся с этим же.
Я планирую перевод прода на 8.3.24.1586 и столкнулся с проблемой при обновлении после подключения к прежнему хранилищу конфигурации.
т.к. разворачивание копий боевой базы длится часами ищу оптимальный быстрый вариант решения этой проблемы. Выгрузка и загрузка CF единожды мне помогло и база зацепилась к хранилищу. Последующая попытка получить изменения и сохранить привели снова к этой ошибке.
Все усложняется тем, что после перехода на новую платформу, на старую (в нашем случае 21) обратного пути не будет.
текст ошибки 1в1.
Столкнулся с этим же.
Я планирую перевод прода на 8.3.24.1586 и столкнулся с проблемой при обновлении после подключения к прежнему хранилищу конфигурации.
т.к. разворачивание копий боевой базы длится часами ищу оптимальный быстрый вариант решения этой проблемы. Выгрузка и загрузка CF единожды мне помогло и база зацепилась к хранилищу. Последующая попытка получить изменения и сохранить привели снова к этой ошибке.
Все усложняется тем, что после перехода на новую платформу, на старую (в нашем случае 21) обратного пути не будет.
текст ошибки 1в1.
(15) Дошли руки таки. Выгрузка DT и загрузка правда помогла.
Только если база большая надо учесть что 1С платформа готовит файл выгрузки в Windows\Temp. Мне потребовалось еще решать проблему с дисковым пространством.
Только если база большая надо учесть что 1С платформа готовит файл выгрузки в Windows\Temp. Мне потребовалось еще решать проблему с дисковым пространством.
(11)
Microsoft постепенно модернизировал синтаксис команд для работы с индексами:
DBCC INDEXDEFRAG (SQL Server 2000 и ранее):
Устаревшая команда, которая физически переупорядочивает страницы индекса для уменьшения фрагментации.
Проблемы:
- Не поддерживается в новых версиях SQL Server (начиная с 2012).
- Менее эффективна для больших индексов.
- Не интегрирована с современными механизмами управления памятью и блокировками.
ALTER INDEX ... REORGANIZE (SQL Server 2005 и новее):
Современная замена DBCC INDEXDEFRAG.
Преимущества:
- Поддерживается во всех актуальных версиях SQL Server.
- Работает более эффективно, особенно на больших таблицах.
- Позволяет гибко управлять процессом (например, с LOB_COMPACTION для больших объектов).
- Лучше интегрирована с планировщиком SQL Server.
Исправленный вариант:
Кстати, +1, мне тоже помогло :)
EXEC sp_msforeachtable N'DBCC INDEXDEFRAG (>, ''?'')';
Microsoft постепенно модернизировал синтаксис команд для работы с индексами:
DBCC INDEXDEFRAG (SQL Server 2000 и ранее):
Устаревшая команда, которая физически переупорядочивает страницы индекса для уменьшения фрагментации.
Проблемы:
- Не поддерживается в новых версиях SQL Server (начиная с 2012).
- Менее эффективна для больших индексов.
- Не интегрирована с современными механизмами управления памятью и блокировками.
ALTER INDEX ... REORGANIZE (SQL Server 2005 и новее):
Современная замена DBCC INDEXDEFRAG.
Преимущества:
- Поддерживается во всех актуальных версиях SQL Server.
- Работает более эффективно, особенно на больших таблицах.
- Позволяет гибко управлять процессом (например, с LOB_COMPACTION для больших объектов).
- Лучше интегрирована с планировщиком SQL Server.
Исправленный вариант:
USE <<ИМЯБАЗЫ>>
GO
EXEC sp_MSforeachtable "ALTER INDEX ALL ON ? SET (ALLOW_PAGE_LOCKS = ON, ALLOW_ROW_LOCKS = ON)";
EXEC sp_MSforeachtable "ALTER INDEX ALL ON ? REORGANIZE";
EXEC sp_MSforeachtable "ALTER INDEX ALL ON ? SET (ALLOW_PAGE_LOCKS = OFF, ALLOW_ROW_LOCKS = ON)";
Кстати, +1, мне тоже помогло :)
Жутко переписанная база (клиент-серверный вариант) нормально работала на 22 платформе (совместимость с 8.3.15), обновили на 25 платформу (динамически-т.е. когда только код меняется - все норм, но стоит внести новый реквизит, чтобы вызвать реструкторизацию базы-критическая ошибка) - появились чудеса "ошибка субд неправильный синтаксис около конструкции "<""...ничего не помогло с sql стороны: ни какая переиндексация в sql....Решение: из востановленной из бэкапа базы -> выгружать в .dt и загружать обратно - тогда можно вносить/изменять реквизиты (чтобы выйти на реструкторизацию) и все норм....Спасибо разработчикам 1с за новые разработки, а то совсем было бы скучно!
Помогло просто на стороне SQL выполнить обновление статистики и дефрагментацию в базе и после зашел в конфигуратор и успешно смог подключиться к хранилищу и обновить все данные!
Прикрепленные файлы:
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот
