При обновлении конфигурации возникает ошибка: неправильный синтаксис около конструкции "<"

1. Butthard 11.04.24 21:56 Сейчас в теме
При обновлении конфигурации(не динамически) периодически возникает ошибка "неправильный синтаксис около конструкции "<" (скриншот ниже). после того как делаешь реструктуризацию. то ошибка уходит, но через какое то время возникает опять
платформа 8.3.24.1342
мб кто то сталкивался с подобной проблемой?
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Xershi 1540 11.04.24 22:00 Сейчас в теме
(1)пока 8.3.20.
Похоже на кеш. Хранилище есть? Сколько разработчиков? Динамически обновление делаете?
6. SAShikutkin 18 12.04.24 09:34 Сейчас в теме
(1)Если не критично, попробуйте пересоздать хранилище под новой версией платформы
3. Butthard 11.04.24 22:01 Сейчас в теме
(2) хранилище есть, разработчиков 5. динамическое обновление делаем и оно проходит без проблем
4. Xershi 1540 12.04.24 00:26 Сейчас в теме
(3) тогда явно кеш и скорее всего кривая методология работы с хранилищем и использованием динамического обновления.
Но не исключаю косяк и платформы, тут уже к разработчикам в ТП.
5. Butthard 12.04.24 09:01 Сейчас в теме
(4) а есть какая нибудь инструкция по правильной работе с хранилищем?
и какой кеш имеется ввиду? просто после этой ошибки база рушится наглухо и очистка кеша не помогает.
7. Xershi 1540 12.04.24 09:49 Сейчас в теме
(5) ну первое после динамического обновления нужно на сервере чистить кеш. Если пользователи в тонком клиенте работают ещё и на их ПК. Т.к. после нескольких динамических, если пользователь не работал он словит сюрприз.
По хранилищу тоже самое.
Работа в рабочей базе под одним пользователем хранилища. Желательно под одним пользователем винды, если разные одинаково вводить путь.
Далее ключевое каждый раз получать все изменения. А только потом захват, не уверен нескольких раз получать изменения. Тогда проблем не будет.
Ну и режим совместимости с хранилищем последний?
VyacheslavShilov; +1 Ответить
8. Butthard 12.04.24 10:20 Сейчас в теме
(7)
Ну и режим совместимости с хранилищем последний?

да, последний

спасибо за рекомендации. попробуем
9. evgen_rym 10.07.24 10:46 Сейчас в теме
(8) Добрый день, Решили проблему?
10. evgen_rym 11.07.24 09:30 Сейчас в теме
(9)Может кому то пригодится. Реструктуризация, тестирование и отладка не помогла. Помогла выгрузка базы в DT ("Администрирование"-->"Выгрузить информационную базу") и загрузка из DT обратно.
11. Butthard 11.07.24 10:08 Сейчас в теме
(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)';

ошибка после этого уходит
khakasia; evgen_rym; +2 Ответить
12. den4izzz 15.07.24 15:21 Сейчас в теме
(11) Пересоздание хранилища на новой платформе не помогает? DT пробовали перевыгружать? Получилось добить проблему?
Столкнулся с этим же.
Я планирую перевод прода на 8.3.24.1586 и столкнулся с проблемой при обновлении после подключения к прежнему хранилищу конфигурации.
т.к. разворачивание копий боевой базы длится часами ищу оптимальный быстрый вариант решения этой проблемы. Выгрузка и загрузка CF единожды мне помогло и база зацепилась к хранилищу. Последующая попытка получить изменения и сохранить привели снова к этой ошибке.

Все усложняется тем, что после перехода на новую платформу, на старую (в нашем случае 21) обратного пути не будет.

текст ошибки 1в1.
13. Butthard 15.07.24 15:25 Сейчас в теме
(12) мы запулили срипт указанный выше в план обслуживания еженедельные и проблема перестала повторяться)
14. den4izzz 15.07.24 15:26 Сейчас в теме
(13) Пахнет как костыль =)
15. Butthard 15.07.24 15:27 Сейчас в теме
(14) другого решения не нашли. если найдете другие варианты. напишите)
16. den4izzz 01.08.24 09:56 Сейчас в теме
(15) Дошли руки таки. Выгрузка DT и загрузка правда помогла.
Только если база большая надо учесть что 1С платформа готовит файл выгрузки в Windows\Temp. Мне потребовалось еще решать проблему с дисковым пространством.
VyacheslavShilov; +1 Ответить
17. Butthard 01.08.24 09:57 Сейчас в теме
(16) нам это помогло на время, через месяц опять упала с такой же ошибкой
21. khakasia 150 18.08.25 06:07 Сейчас в теме
(11)
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, мне тоже помогло :)
18. jan-pechka 451 23.02.25 18:21 Сейчас в теме
Жутко переписанная база (клиент-серверный вариант) нормально работала на 22 платформе (совместимость с 8.3.15), обновили на 25 платформу (динамически-т.е. когда только код меняется - все норм, но стоит внести новый реквизит, чтобы вызвать реструкторизацию базы-критическая ошибка) - появились чудеса "ошибка субд неправильный синтаксис около конструкции "<""...ничего не помогло с sql стороны: ни какая переиндексация в sql....Решение: из востановленной из бэкапа базы -> выгружать в .dt и загружать обратно - тогда можно вносить/изменять реквизиты (чтобы выйти на реструкторизацию) и все норм....Спасибо разработчикам 1с за новые разработки, а то совсем было бы скучно!
19. user2107191 23.02.25 18:31 Сейчас в теме
(18)
Жутко переписанная база (клиент-серверный вариант)

динамически-т.е. когда только код меняется

Спасибо разработчикам 1с за новые разработки

"Где логика?" (С)
20. user1792010 20.03.25 09:21 Сейчас в теме
Помогло просто на стороне SQL выполнить обновление статистики и дефрагментацию в базе и после зашел в конфигуратор и успешно смог подключиться к хранилищу и обновить все данные!
Прикрепленные файлы:
22. meatxteam 25.09.25 14:46 Сейчас в теме
Решили по другому,
на скуле создался ИНДЕКС с названием <Name of Missing Index, sysname,>
в названии были символы "<".
Переименовали индекс все заработало.

Случилось при переходе с 14 платформы на 27.1644 1Сникам заявку отправили.
Для отправки сообщения требуется регистрация/авторизация

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот