|
|||
PitNN
28.10.22 — 09:50 |
Добрый день, Коллеги. Просьба подсказать, кто сталкивался. Есть внешняя БД на postgresql. В таблице одно из полей имеет тип timestamp (пробовал тип date результат тот же). При чтении данных ADODB.Recordset из этой таблицы, когда доходит до чтения из поля с типом «дата» вываливается ошибка: «Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): Произошли ошибки во время выполнения многошаговой операции OLE DB. По возможности, проверьте значения всех состояний OLE DB. Работа не выполнена.» |
||
Garykom
1 — 28.10.22 — 10:06 |
Причина в использовании устаревших уже не поддерживаемых реально технологий |
||
PitNN
2 — 28.10.22 — 10:51 |
(1) Какую именно технологию вы считаете устаревшей? |
||
Garykom
3 — 28.10.22 — 11:13 |
(2) ADODB и ODBC |
||
Garykom
4 — 28.10.22 — 11:19 |
v8sqlite — нативная ВК для работы из 1С c базами sqlite см там 21 пост |
||
NorthWind
5 — 28.10.22 — 11:47 |
(0) скорее всего кривая связка драйвера ODBC и OLE провайдера. Поищите другие варианты, например, подключитесь к ODBC драйверу через внешний источник данных 1С или попытайтесь поменять версию драйвера, если это возможно. Вообще OLEDB провайдеры достаточно капризная штука, особенно если речь идет не о Microsoftовских базах данных. |
||
Garykom
6 — 28.10.22 — 11:51 |
(5) Не поможет. |
||
PitNN
7 — 28.10.22 — 11:52 |
(5) Замечена такая штука. Если в ячейке записана дата «0100-01-01 00:00:00.000», то при чтении из Recordset она определяется как 01.01.0001 (т.е. потерялись куда-то 100 лет) |
||
PitNN
8 — 28.10.22 — 11:53 |
(4) Как это поможет подключиться, например к clickhouse? |
||
Garykom
9 — 28.10.22 — 11:54 |
https://www.google.ru/search?q=odbc+timestamp+postrgesql |
||
Garykom
10 — 28.10.22 — 11:54 |
(8) а какая нахрен разница то? |
||
Garykom
11 — 28.10.22 — 11:55 |
(8) https://github.com/ClickHouse/clickhouse-go |
||
Garykom
12 — 28.10.22 — 12:40 |
https://github.com/Garykom/psql |
||
Garykom
13 — 28.10.22 — 13:15 |
(12)+ ну как работает psql.exe описанный в v8sqlite — нативная ВК для работы из 1С c базами sqlite ? |
||
PitNN
14 — 28.10.22 — 13:54 |
(13) Работа через запуск командного интерпретатора с последующим чтением файла ответа это, конечно, вариант. Спасибо за совет |
||
ДедМорроз 15 — 28.10.22 — 17:43 |
Можно еще попробовать дату приводить к строке или числу в самом запросе. |
TurboConf — расширение возможностей Конфигуратора 1С
-
Здравствуйте!
Есть один сервер. На нем стоит MS SQL, 1С сервер и терминально подключаются пользователи через RDP (до 80 пользователей).
В один прекрасный день при входе в клиент-серверную базу 1С всем пользователям начало выдавать ошибку:Платформа: 1С:Предприятие 8.3 (8.3.5.1068)
Ошибка СУБД:
Microsoft SQL Server Native Client 11.0: Произошли ошибки во время выполнения многошаговой операции OLE DB. По возможности, проверьте значения всех состояний OLE DB. Работа не выполнена.
HRESULT=80040E21,Сервер перезагрузили. После перезагрузки пользователи при попытки зайти в базу видели ошибку:
Платформа: 1С:Предприятие 8.3 (8.3.5.1068)
Ошибка СУБД:
Microsoft SQL Server Native Client 11.0: Ошибка выделения памяти
HRESULT=80004005,При запуске Тестирования и исправление на проверку логической целостности к моменту завершения конфигуратор выдал критическую ошибку и завершил работу.
Сервер перезагрузили и после пользователи смогли зайти в 1С и нормально начать работу. Прошло пара дней и при входе в 1С снова вылезла ошибка:Платформа: 1С:Предприятие 8.3 (8.3.5.1068)
Ошибка СУБД:
Microsoft SQL Server Native Client 11.0: Ошибка выделения памяти
HRESULT=80004005,Потом, при выгрузке базы в файл .dt 1С её не выгрузила и выдала ошибку соединения с сервером 1С Предприятие. Подскажите возможные причины этого и как с этим бороться?
-
Offline
Draco
Модераторы
Команда форума
Модератор- Регистрация:
- 28 окт 2009
- Сообщения:
- 13.722
- Симпатии:
- 961
- Баллы:
- 204
У Гилева про жто хорошо написано
http://www.gilev.ru/err80004005/— Объединение сообщений, 5 фев 2016 —
модете так же перейти на 64 разрядный сервак
— Объединение сообщений, 5 фев 2016 —
ну еще бы посмотрел сколько памяти на самом сервере, сколько под скуль выделено и как у клатера настроено выделение памяти
-
Спасибо!
Да, статью Гилева читала. Манипуляции с конфигурацией производила.
Неужели всё может упираться в 64х разрядность? … Дело в том, что платформу не обновляли, никаких изменений с конфигурацией не было, все и всё работало как работало и однажды случилось. Это для меня самое непонятное.Оперативки на сервере 32 Гб. Под скуль выделено 11 Гб, под сервер 1С — 3 Гб (он больше 1 Гб никогда не съедал).
Больше под скуль выделить нельзя, RDP тоже нормально съедают. -
Offline
shurikvz
Модераторы
Команда форума
Модератор- Регистрация:
- 1 окт 2009
- Сообщения:
- 8.547
- Симпатии:
- 344
- Баллы:
- 104
посмотрите сколько сервер 1С реально сейчас забрал памяти (если проблема до сих пор существует)?
перезапуск сервера 1С при превышении определенного порога памяти настроен?— Объединение сообщений, 5 фев 2016 —
З.Ы. и вообще какая сейчас ситуация с памятью на сервере (опять таки если проблема еще не решена). Отсортируйте диспетчер задач по количеству памяти и посмотрите какие приложения сколько забирают.
-
Сервер 1С никогда больше 1 Гб не забирал. Перезапуск настроен.Именно в данный момент проблемы нет, но тогда, когда она была с памятью было всё в порядке, всё в норме.
Я недоумеваю почему … -
Offline
Galich
Опытный в 1С- Регистрация:
- 6 июн 2014
- Сообщения:
- 281
- Симпатии:
- 9
- Баллы:
- 29
Обращайтесь, обсудим, объясню что к чему.
-
Offline
kiddy
- Регистрация:
- 1 фев 2017
- Сообщения:
- 1
- Симпатии:
- 0
- Баллы:
- 1
Подскажите, пожалуйста, нужен 64 сервер 1с предприятие или 64 разрядной ОС достаточно?
Пользуясь базами данных любой программы 1С, сотрудники предприятий и организаций часто сталкиваются с непредвиденными ситуациями. Пожалуй, одна из самых частых — когда работа программы внезапно завершается по причине того, что администратор разорвал контакт с сервером.
В данном случае Microsoft OLE DB Provider for SQL Server выдаёт такую информацию: «Неопознанная ошибка hresult 80004005». При этом главным признаком проблемы является невозможность выгрузить информацию в базу.
Следует отметить, что ошибки, содержащие именно код 80004005, встречаются постоянно. У них есть особая классификация, которую при желании можно найти в соответствующей литературе.
Для начала нужно провести проверку конфигурации. Там может содержаться мусор (иными, словами, информация, которая является некорректной). Необходимо проверить конфигурацию с помощью соответствующей команды. Вы увидите флажок, предназначенный для того, чтобы проверить её логическую целостность. Если имеются проблемы, пользователь будет уведомлен об этом с помощью сообщения.
Данные, являющиеся неверными, система удалит в автоматическом режиме, но для этого нужно дать ей доступ, чтобы она изменила главный объект. К примеру, если вы работаете в облачном хранилище, его надо просто захватить.
Поддержка конфигурации требует её проверки и у поставщиков. С этой целью:
- нужно сохранить данные о конфигурации поставщиков. Для этого используйте CF-файл;
- теперь необходимо провести загрузку файла в обновлённую базу;
- выполните операцию, которая описана в п.1.
При получении сообщения об исправлении ошибки имейте в виду то, что конфигурация, имеющаяся у поставщика, содержала неправильные данные. Если такое произошло, снимите свою конфигурацию с поддержки и установите её снова. При этом её надо объединить с новой (от поставщика).
Сейчас уже любой релиз, который выпускает 1С, не имеет таких сложностей.
Сопутствующая проблема и методы её решения
С ситуацией, описанной ранее, тесно связана ещё одна, происходящая параллельно. Выглядит она так: 10007066.
Суть проблемы: когда используется СУБД MS SQL SERVER, во время записи объекта из базы с несколькими колонками (например, «Значения» и «Хранилища»), часто случается другой тип ошибки.
Выглядит она таким образом:
Ошибка СУБД:Microsoft OLE DB Provider for SQL Server: String data length mismatchHRESULT=80004005.
Когда происходит ошибка 1с hresult clr 80004005, программа завершает свою работу в аварийном режиме.
Если вы ознакомитесь во время загрузки программы со специальным журналом (речь идёт о технологическом журнале), там есть табличка, содержащая информацию об этих хранилищах.
С помощью средств MS SQL Server Query Analizer нужно найти в табличке несколько колонок image и сделать для каждой следующий запрос
select top 10 DATALENGTH(_Fld4044 from _InfoReg4038 order by DATALENGTH(_Fld4044) desc
При этом, со стороны стандартных проверок, проводимых платформой (chdbfl), поступит информация о том, что база полностью в порядке.
Ошибка выделения памяти hresult 80004005 (на английском это out of memory for query result 1с) может происходить вследствие различных причин, имеющей общую черту. Для системы 1С это, прежде всего, недостаток оперативной памяти. Если говорить точнее, речь идёт о некорректном применении возможностей памяти, поэтому для решения задачи лучше использовать несколько косвенных алгоритмов.
Необходимо сделать рестарт (перезапуск) сервера. Таким образом памяти, которая доступна для работы, временно станет больше. Также есть возможность воспользоваться сервером в 64 разряда, содержащем приложения.
Исходя из опыта, ошибка СУБД hresult 80004005 чаще определяется двумя факторами:
- данные хранятся в хранилище значений (реквизите);
- в таблице конфигураций содержатся двоичные данные объёмом более 120 мегабайт.
Когда советы от сотрудников 1С не приносят результата (ошибка 1с hresult 80004005 остаётся), попробуйте воспользоваться другой пошаговой инструкцией:
Наши постоянные клиенты по 1С:
- используйте все базы, включив у них все фоновые задачи;
- в 8.1.11. должен появиться переключатель о запрете на фоновые задачи (во время создания базы);
- сделайте перезапуск сервера.
Имеет смысл проверки работоспособности. Тем не менее вследствие утечек памяти проблема может возникнуть снова — после перезапуска. В этом случае целесообразно:
- воспользоваться инструментами sql и сделать бэкап;
- снять базу с поддержки;
- выгрузить cf.
Во время любых действий следует копировать файлы в резерв, так как в любой момент может возникнуть необходимость возвращения к исходному статусу информации. Далее надо убрать в менеджменте консоли (config) запись «более 120 мегабайт» и провести загрузку конфигурации (не объединять, а загрузить).
Есть ещё один способ, с помощью которого неопознанная ошибка субд hresult 80004005 может быть исправлена. Нужно открыть конфигуратор и снять конфигурацию, не сохраняя её. Далее, сохранив, нужно поместить её в отдельный файл без сохранения её изменённого вида.
Выполните в SQL операцию, предназначенную для конкретной базы:
DELETE FROM dbo.Config WHERE DataSize > 125829120
После выполнения этой команды проведите загрузку сохранённой конфигурации.
Что касается радикальных шагов, используемых в особо трудных ситуациях, иногда помогает такая схема:
- удалите таблицу config из базы данных, воспользовавшись менеджментом консоли DROP TABLE [dbo].[Config];
- проведите загрузку конфигурации (не «объединить»,а именно «загрузить»).
После проведения проверки проблема должна уйти.
- Стоимость работ специалистов IT Rush — 2000 руб./час
- Абонемент от 50 часов в месяц – 1900 руб./час
- Абонемент от 100 часов в месяц – 1800 руб./час
Нам доверяют:
Пользуясь базами данных любой программы 1С, сотрудники предприятий и организаций часто сталкиваются с непредвиденными ситуациями. Пожалуй, одна из самых частых — когда работа программы внезапно завершается по причине того, что администратор разорвал контакт с сервером.
В данном случае Microsoft OLE DB Provider for SQL Server выдаёт такую информацию: «Неопознанная ошибка hresult 80004005». При этом главным признаком проблемы является невозможность выгрузить информацию в базу.
Следует отметить, что ошибки, содержащие именно код 80004005, встречаются постоянно. У них есть особая классификация, которую при желании можно найти в соответствующей литературе.
Для начала нужно провести проверку конфигурации. Там может содержаться мусор (иными, словами, информация, которая является некорректной). Необходимо проверить конфигурацию с помощью соответствующей команды. Вы увидите флажок, предназначенный для того, чтобы проверить её логическую целостность. Если имеются проблемы, пользователь будет уведомлен об этом с помощью сообщения.
Данные, являющиеся неверными, система удалит в автоматическом режиме, но для этого нужно дать ей доступ, чтобы она изменила главный объект. К примеру, если вы работаете в облачном хранилище, его надо просто захватить.
Поддержка конфигурации требует её проверки и у поставщиков. С этой целью:
- нужно сохранить данные о конфигурации поставщиков. Для этого используйте CF-файл;
- теперь необходимо провести загрузку файла в обновлённую базу;
- выполните операцию, которая описана в п.1.
При получении сообщения об исправлении ошибки имейте в виду то, что конфигурация, имеющаяся у поставщика, содержала неправильные данные. Если такое произошло, снимите свою конфигурацию с поддержки и установите её снова. При этом её надо объединить с новой (от поставщика).
Сейчас уже любой релиз, который выпускает 1С, не имеет таких сложностей.
Сопутствующая проблема и методы её решения
С ситуацией, описанной ранее, тесно связана ещё одна, происходящая параллельно. Выглядит она так: 10007066.
Суть проблемы: когда используется СУБД MS SQL SERVER, во время записи объекта из базы с несколькими колонками (например, «Значения» и «Хранилища»), часто случается другой тип ошибки.
Выглядит она таким образом:
Ошибка СУБД:Microsoft OLE DB Provider for SQL Server: String data length mismatchHRESULT=80004005.
Когда происходит ошибка 1с hresult clr 80004005, программа завершает свою работу в аварийном режиме.
Если вы ознакомитесь во время загрузки программы со специальным журналом (речь идёт о технологическом журнале), там есть табличка, содержащая информацию об этих хранилищах.
С помощью средств MS SQL Server Query Analizer нужно найти в табличке несколько колонок image и сделать для каждой следующий запрос
select top 10 DATALENGTH(_Fld4044 from _InfoReg4038 order by DATALENGTH(_Fld4044) desc
При этом, со стороны стандартных проверок, проводимых платформой (chdbfl), поступит информация о том, что база полностью в порядке.
Ошибка выделения памяти hresult 80004005 (на английском это out of memory for query result 1с) может происходить вследствие различных причин, имеющей общую черту. Для системы 1С это, прежде всего, недостаток оперативной памяти. Если говорить точнее, речь идёт о некорректном применении возможностей памяти, поэтому для решения задачи лучше использовать несколько косвенных алгоритмов.
Необходимо сделать рестарт (перезапуск) сервера. Таким образом памяти, которая доступна для работы, временно станет больше. Также есть возможность воспользоваться сервером в 64 разряда, содержащем приложения.
Исходя из опыта, ошибка СУБД hresult 80004005 чаще определяется двумя факторами:
- данные хранятся в хранилище значений (реквизите);
- в таблице конфигураций содержатся двоичные данные объёмом более 120 мегабайт.
Когда советы от сотрудников 1С не приносят результата (ошибка 1с hresult 80004005 остаётся), попробуйте воспользоваться другой пошаговой инструкцией:
Наши постоянные клиенты по 1С:
- используйте все базы, включив у них все фоновые задачи;
- в 8.1.11. должен появиться переключатель о запрете на фоновые задачи (во время создания базы);
- сделайте перезапуск сервера.
Имеет смысл проверки работоспособности. Тем не менее вследствие утечек памяти проблема может возникнуть снова — после перезапуска. В этом случае целесообразно:
- воспользоваться инструментами sql и сделать бэкап;
- снять базу с поддержки;
- выгрузить cf.
Во время любых действий следует копировать файлы в резерв, так как в любой момент может возникнуть необходимость возвращения к исходному статусу информации. Далее надо убрать в менеджменте консоли (config) запись «более 120 мегабайт» и провести загрузку конфигурации (не объединять, а загрузить).
Есть ещё один способ, с помощью которого неопознанная ошибка субд hresult 80004005 может быть исправлена. Нужно открыть конфигуратор и снять конфигурацию, не сохраняя её. Далее, сохранив, нужно поместить её в отдельный файл без сохранения её изменённого вида.
Выполните в SQL операцию, предназначенную для конкретной базы:
DELETE FROM dbo.Config WHERE DataSize > 125829120
После выполнения этой команды проведите загрузку сохранённой конфигурации.
Что касается радикальных шагов, используемых в особо трудных ситуациях, иногда помогает такая схема:
- удалите таблицу config из базы данных, воспользовавшись менеджментом консоли DROP TABLE [dbo].[Config];
- проведите загрузку конфигурации (не «объединить»,а именно «загрузить»).
После проведения проверки проблема должна уйти.
- Стоимость работ специалистов IT Rush — 2000 руб./час
- Абонемент от 50 часов в месяц – 1900 руб./час
- Абонемент от 100 часов в месяц – 1800 руб./час
Нам доверяют:
|
|||
claus66
14.08.15 — 09:53 |
Добрый день, Уважаемые. Подскажите пожалуйста, в какую сторону копать и что можно сделать. Ситуация такая: Стоит комп, на его борту i7 — 4771, ОЗУ 32 ГБ. Стоит сервер 1с 8.3, (8.3.6.2100), конфигурация ТиС (11), стоит SQL 2012, все это дело подружено между собой. При закрытие мес. вылетает ошибка: «Ошибка СУБД: Microsoft SQL Server Native Client 11.0: Ошибка выделения памяти HRESULT=8000400» Под SQL выделено 16 гб из 32 гб. файл «имя базы_log» в SQL до 8 гб. восстановление в sql: «Simple» Буду признателен за помощь и совет, что можно попробовать. |
||
shuhard_серый
1 — 14.08.15 — 09:54 |
(0) а SP на сиквеле стоит ? |
||
shuhard_серый
2 — 14.08.15 — 09:56 |
(1) +1 и код у ошибки странный, там символов должно быть больше, например всем известная 80004005 |
||
claus66
3 — 14.08.15 — 10:09 |
(1) нет, не стоит |
||
claus66
4 — 14.08.15 — 10:10 |
(2) Ошибка слово в слово, буква в букву |
||
ДенисЧ
5 — 14.08.15 — 10:10 |
(3) Надо себя заставить… |
||
ДенисЧ
6 — 14.08.15 — 10:10 |
http://catalog.mista.ru/public/18771/ |
||
shuhard_серый
7 — 14.08.15 — 10:11 |
(3) надо установить (4) не верю, в названии топика 80004005 по ней всё ясно — http://www.gilev.ru/err80004005/ |
||
claus66
8 — 14.08.15 — 10:13 |
(5) думаете с SP пройдет ошибка ?! |
||
claus66
9 — 14.08.15 — 10:15 |
(7) сори, действительно.. ошибся ))) виноват каюсь 80004005 |
||
shuhard_серый
10 — 14.08.15 — 10:15 |
(8) гарантий нет, но SP очень часто снимает такого рода ошибку |
||
shuhard_серый
11 — 14.08.15 — 10:16 |
(9) читай Гилева — там всё более чем очевидно |
||
claus66
12 — 14.08.15 — 10:16 |
ладно спасибо Вам большое, на сайте Гилева, читал про эту ошибку, но ошибка звучало чуть чуть не так: Неопознанная ошибка, а у меня Ошибка выделения памяти |
||
shuhard_серый
13 — 14.08.15 — 10:20 |
(12) да, эта ошибка многолика и Гилев писал про неё в 2013 году, рецепты тем не менее универсальны |
||
claus66 14 — 14.08.15 — 10:23 |
(13) спасибо, буду пробовать.. |
Здравствуйте!
Есть один сервер. На нем стоит MS SQL, 1С сервер и терминально подключаются пользователи через RDP (до 80 пользователей).
В один прекрасный день при входе в клиент-серверную базу 1С всем пользователям начало выдавать ошибку:
Платформа: 1С:Предприятие 8.3 (8.3.5.1068)
Ошибка СУБД:
Microsoft SQL Server Native Client 11.0: Произошли ошибки во время выполнения многошаговой операции OLE DB. По возможности, проверьте значения всех состояний OLE DB. Работа не выполнена.
HRESULT=80040E21,
Сервер перезагрузили. После перезагрузки пользователи при попытки зайти в базу видели ошибку:
Платформа: 1С:Предприятие 8.3 (8.3.5.1068)
Ошибка СУБД:
Microsoft SQL Server Native Client 11.0: Ошибка выделения памяти
HRESULT=80004005,
При запуске Тестирования и исправление на проверку логической целостности к моменту завершения конфигуратор выдал критическую ошибку и завершил работу.
Сервер перезагрузили и после пользователи смогли зайти в 1С и нормально начать работу. Прошло пара дней и при входе в 1С снова вылезла ошибка:
Платформа: 1С:Предприятие 8.3 (8.3.5.1068)
Ошибка СУБД:
Microsoft SQL Server Native Client 11.0: Ошибка выделения памяти
HRESULT=80004005,
Потом, при выгрузке базы в файл .dt 1С её не выгрузила и выдала ошибку соединения с сервером 1С Предприятие. Подскажите возможные причины этого и как с этим бороться?
Александр Рудницкий
Программист 1С компании CorpSoft24
Ошибка системы «1С: Предприятие 8.3» из-за нехватки памяти — постоянный спутник администратора 1С. Разбираемся, из-за чего они возникают, и рассматриваем пример диагностики одного подобного эпизода из практики администрирования сервера 1С.
Природа проблемы
Сообщение «Недостаточно памяти» — одна из самых часто встречающихся ошибок при работе с 1С: Предприятие версии 8.3 и выше. Она происходит по самым разным причинам — от обработки системой нескольких массивных файлов и загрузки больших объёмов данных, до обновления ПО и перегрузки ресурсов при формирования сложных отчётов.
Она не так критична при возникновении на клиентском компьютере, а вот если сообщение об ошибке выдает сервер 1С, нужно отнестись к этому максимально внимательно. Это тот самый случай, когда очень важно установить правильный «диагноз» — то есть решения не будет, пока ответственный администратор не распознает источник проблемы, не поймёт её природу.
Проблема может заключаться в несвоевременном завершении процессов, запускаемых различным ПО. Они накапливаются и перегружают доступный объём памяти на сервере. Также может иметь место интенсивная работа различных программ с постоянным резервированием и освобождением ресурсов памяти.
Приведу пример расследования одной подобной ошибки из своей практики.
Инцидент
Поступило обращение со следующей ошибкой:
Смотрим журнал регистрации, там так же выводится ошибка с пояснением о нехватке памяти на сервере:
Настроив технологический журнал (ТЖ) системы 1С с событием EXCP — EXCPCNTX обнаруживаем запись:
Ошибка СУБД out of memory for query result
То есть, обе ошибки сообщают о проблеме объёма памяти, на основании чего нашим главным подозреваемым становится код конфигурации (возможно наличие неоптимальных запросов).
Находим код конфигурации, вызывающий ошибку.
В журнале регистрации указан следующий код:
{ОбщийМодуль.ДокументооборотСКОВызовСервера.Модуль(22)}: Ошибка при вызове метода контекста (Получить)
по причине:
Недостаточно памяти для получения результата запроса к базе данных
Открываем конфигуратор и переходим в указанный модуль к указанному номеру строки кода:
Строка, на которой произошла ошибка:
ВнешниеОбъектыХранилище = Константы.ДокументооборотСКонтролирующимиОрганами_ВнешнийМодуль;
ДвоичныеДанныеОбработки = ВнешниеОбъектыХранилище.Получить().Получить();
Смотрим тип объекта (константы), к которой идёт обращение:
Итак, в конфигурации есть константа:
ДокументооборотСКонтролирующимиОрганами_ВнешнийМодуль
Она хранит в базе что-то неструктурированное (двоичные данные), что может занимать значительный объём памяти.
Проверяем, какой объем данных фактически занимает константа. Для этого узнаем имя таблицы хранения в базе PostgreSQL — таблица «_Const10013», индекс «_Const10013_ByKey».
Узнаем размер таблиц «Const10013», «_Const10013_ByKey» на диске:
На диске таблица занимает всего 4688 Кб = 4,6 Мб. Размер является незначительным, значит, причина не в константе.
Обнаруживаем, что кластер 1С является 32-разрядным:
32-разрядный кластер 1С имеет ограничение примерно в 3.8 Гб, при достижении которого происходит падение процесса. В режиме отсутствия нагрузки rphost занял 3,2 Гб, что близко к порогу падения. Подобные инциденты будут происходить в любой момент времени.
Внесены изменения:
- В кластере серверов 1С «Интервал превышения допустимого объёма памяти процессов» = 300. Настройка не избавляет от ошибки, но необходима для снижения частоты возникновения ошибки.
- В планировщике Windows настроен перезапуск службы 1С; такими образом освобождается виртуальное адресное пространство в памяти, создаётся новый рабочий процесс.
Настройка также не гарантирует от ошибки, но снижает вероятность её возникновения.
Для предотвращения повторной ошибки следует:
- Сменить 32-разрядный кластер серверов 1С на 64-разрядный.
- Так как на сервере используется 14 ядер процессора, необходимо осуществить переход на платформенные лицензии 1С КОРП для снятия ограничений по настройкам и обеспечения возможностей для гибкой настройки распределения памяти сервера.
Другие варианты
Зачастую, особенно в ситуации, когда нужно срочно вернуть систему в работоспособное состояние при возникновении подобной ошибки, можно попробовать такие «дедовские» способы, как перезагрузка сервера 1С или перезапуск рабочих процессов 1С, что приведёт к уменьшению объёма используемой памяти.
Источником проблемы также может быть недостаток пространства на жестком диске сервера. Здесь решение будет зависеть от устройство сервера или кластера, но здесь также могут помочь и перезапуск сервера, и наращивание ёмкости диска (или освобождение существующего пространства), а также оптимизация запросов или обновление версии ПО системы.
Перейти к контенту
|
|||
Vstur
20.05.13 — 09:40 |
1с на sql 2008 R2, 1c версии 8.2.17.153, несколько баз, с одной из них на основе Управления Торговлей 10.3 (база в режиме совместимости с 8.1) внезапно случилась проблема. Начало рабочего дня. часть пользователей зашла без проблем. Через какое-то время стали хазлдить следующие пользователи, у них сообщение об ошибке при входе Ошибка СУБД. Microsoft SQL Native Client 10.0. Произошли ошибки во время выполнения многошаговой опеарции OLE DB. По возможности проверьте значения всех состояний OLE DB. Работа не выполнена. HRESULT = 80040E21 И Завершить работу — Перезапустить. Если многократно делать Перезагрузмить в конце концов с какого-то раза удается открыть 1с и дальше нормально работатет. С другими базами проблем нет. Кто что подскажет ? Режим работы с базой круглосуточный, backup’ы средствали sql. Сейчас остановить работу пользователей нет… |
||
Infsams654
1 — 20.05.13 — 09:46 |
(0) поставь любую 8.2.18 |
||
Vstur
2 — 20.05.13 — 09:51 |
А в 8.2.18 заявлено о решении этой проблемы ? |
||
Vstur 3 — 20.05.13 — 15:22 |
В общем, тупой перезапуск SQL и 1с-серверов избавило от этой проблемы. Похоже на стандартные проблемы 1с с памятью. Надо мигрировать на 64-битный сервер… |
TurboConf — расширение возможностей Конфигуратора 1С |
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку «Обновить» в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Just777 0 / 0 / 0 Регистрация: 06.04.2017 Сообщений: 66 |
||||
1 |
||||
MS SQL 10.01.2019, 18:37. Показов 10188. Ответов 3 Метки нет (Все метки)
Что за ошибка? «Произошли ошибки во время выполнения многошаговой операции OLE DB. По возможности, проверьте значения всех состояний OLE DB. Работа не выполнена.»
Миниатюры
__________________ 0 |
Администратор 15227 / 12266 / 4902 Регистрация: 17.03.2014 Сообщений: 24,867 Записей в блоге: 1 |
|
10.01.2019, 22:28 |
2 |
Just777, ты к какой СУБД подключаешься — к Access или все-таки SQL Server? 0 |
1561 / 1113 / 164 Регистрация: 23.07.2010 Сообщений: 6,382 |
|
11.01.2019, 10:12 |
3 |
SELECT[region] FROM[name_region] GROUP BY[region] пробелы расставь, дай шанс парсеру 0 |
0 / 0 / 0 Регистрация: 06.04.2017 Сообщений: 66 |
|
11.01.2019, 16:18 [ТС] |
4 |
OwenGlendower, sql server. Ошибка была в подключении) 0 |
- Remove From My Forums
Ошибка при выполнении выгрузки данных.
-
Вопрос
-
Доброго времени суток уважаемые представители компании Microsoft, я являюсь системным администратором городской больницы №4 г. Владимира, у нас есть важная медицинская программулина MedBase,
недавно у Вас приобрели новый сервер, ну и решили перенести эту программу на новый сервер, установили бесплатный SQL server 2008 r2 express, саму программу MedBase, вроде все работает но при создании отчета выдает следущую ошибку:
«При выполнении запроса произошла ошибка: Поставщик OLE DE «Microsoft.ACE.OLEDB. 12.0» для связанного сервера «(null)» вернул сообщение «Произошли ошибки во время выполнения многошаговой операции OLE DE. По
возможности, проверьте значения всех состояний OLE DE. Работа не выполнена.» — это ошибка SQL server полюбому вот мне очень хочется ее исправить потому что отчеты не делаются… ПОМОГИТЕЕЕЕЕ- Перемещено
30 апреля 2013 г. 8:07
sql
- Перемещено
Ответы
-
- Помечено в качестве ответа
Иван ПродановMicrosoft contingent staff, Moderator
30 апреля 2013 г. 13:46
- Помечено в качестве ответа
-
Все решили проблемку: простите за беспокойство … поставщики решили проблему, вот прям только что … в среде SQL выполнить запрос:
EXEC master.dbo.sp_MSset_oledb_prop N’Microsoft.ACE.OLEDB.12.0′, N’AllowInProcess’, 1
GO
EXEC master.dbo.sp_MSset_oledb_prop N’Microsoft.ACE.OLEDB.12.0′, N’DynamicParameters’, 1
GOМне помогло
- Помечено в качестве ответа
ad_sergeev
30 апреля 2013 г. 11:09
- Помечено в качестве ответа
Ситуация следующая:
Написал макрос для выгрузки данных из базы SQL Server в Excel. У меня все работает корректно. Отправил файл с макросом коллеге и у него появляется данная ошибка. Отдел безопасности говорит, что доступ ему предоставили.
Строка соединения:
ConnectionString = "Provider=SQLOLEDB;Data Source=server name; " _
& "Initial Catalog=database name; Integrated Security=SSPI; " _
& "IsolationLevel=adXactReadUncommitted"
Весь код
Dim con As New ADODB.Connection
Dim rec As New ADODB.Recordset, rec2 As New ADODB.Recordset
Dim vac As String
rec.CursorType = adOpenKeyset
rec.LockType = adLockOptimistic
rec2.CursorType = adOpenKeyset
rec2.LockType = adLockOptimistic
Application.ScreenUpdating = False
Лист1.Unprotect Password:="пароль"
лист2.Unprotect Password:="пароль"
лист1.Activate
лист1.Range("A7:U7").Select
лист1.Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
лист2.Activate
лист2.Range("A7:R7").Select
лист2.Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
лист1.Activate
con.Open
rec.Open "SELECT * " & _
"FROM [database].[schema].[table] " & _
"WHERE [UserName] like '" & Application.UserName & "'", con
If rec.RecordCount <> 1 Then
MsgBox "Сообщение" & _
vbNewLine & "Продолжение сообщения", vbOKOnly
Else
vac = rec.Fields("Столбец")
rec.Close
If vac <> "значение" Then
rec.Open "SELECT *" & _
"FROM [database].[schema].[table2]" & _
"Where [Столбец2] = '" & vac & "'", con
rec2.Open "SELECT *" & _
"FROM [database].[schema].[table3]" & _
"Where [Столбец2] = '" & vac & "'", con
Else
rec.Open "SELECT *" & _
"FROM [database].[schema].[table2]", con
rec2.Open "SELECT *" & _
"FROM [database].[schema].[table3]", con
End If
Лист1.Range("A7").CopyFromRecordset rec
Лист2.Range("A7").CopyFromRecordset rec2
MsgBox "Готово"
End If
Лист1.Protect Password:="Пароль", _
Contents:=True, DrawingObjects:=False, AllowUsingPivotTables:=True, _
AllowSorting:=True, AllowFiltering:=True
Лист2.Protect Password:="Пароль", _
Contents:=True, DrawingObjects:=False, AllowUsingPivotTables:=True, _
AllowSorting:=True, AllowFiltering:=True
Лист1.Activate
Ошибка при записи документа «Заявка на расходование ДС» в Управление торговлей, ред. 11. Ошибка СУБД: HRESULT=80040E21
Описание ошибки:
Проблема проявила себя после обновления конфигурации рабочей базы 1С: Управление торговлей редакции 11 до релиза 11.1.10.131 и сервера 1С: Предприятия на версию 8.3.5.1517. Документ «Заявка на расходование денежных средств» попросту не записывался и сразу же возникала ошибка.
Найденные решения:
Служебная информация об ошибке от самой платформы:
Платформа: 1С:Предприятие 8.3 (8.3.5.1517)
Конфигурация: Управление торговлей, редакция 11.1 (11.1.10.131) (http://v8.1c.ru/trade/)
Copyright © ООО «1C», 2003-2015. Все права защищены
(http://www.1c.ru)
Режим: Серверный (сжатие: усиленное)
Приложение: Тонкий клиент
Локализация: Информационная база: русский (Россия), Сеанс: русский (Россия)
Вариант интерфейса: Версия 8.2
Ошибки:
———————————————————————————
29.04.2015 13:10:22
Невосстановимая ошибка
Ошибка при выполнении запроса POST к ресурсу /e1cib/logForm:
по причине:
Ошибка СУБД:
Microsoft SQL Native Client: Произошли ошибки во время выполнения многошаговой операции OLE DB. По возможности, проверьте значения всех состояний OLE DB. Работа не выполнена.
HRESULT=80040E21
Сначал традиционно в подобных случаях выполнил тестирование и исправление информационной базы. Тестирование изменений в ситуации не дало. Пришлось придумывать. Ну раз ошибка платформенная, значить может попробовать сменить платформу. Наудачу как раз 29.04.2015 вышел релиз 1С: Предприятия 8.3.6.1977.
После установка данного релиза платформы и сервера 1С ошибка перестала себя проявлять.
Оцените, помогло ли Вам предоставленное описание решения ошибки?
© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.
30-04-2015
Журавлев А.С.
(www.azhur-c.ru)
Вопрос может покажется глупым, но не судите пожалуйста строго, я только начала изучать этот предмет…
Мне нужно «открыть соединение с хранилищем данных» (на C#).(Базу данных создавала в Access)
Пишу следующее:
Код:
OleDbConnection cn = new OleDbConnection();
cn.ConnectionString =»Provider=Microsoft.Jet.OLEDB.4.0;» +
@»Data Source=D:BDbd2db2.mdb;» +
«Initial Catalog=t2;»;
cn.Open();
cn.Close();
Выдаётся в строке с Open ошибка:
«Произошли ошибки во время выполнения многошаговой операции OLE DB. По возможности, проверьте значения всех состояний OLE DB. Работа не выполнена.»
Подскажите пожалуйста, что делалось неверно
3 ответа
29K
07 декабря 2007 года
Mr. Iden
12 / / 15.11.2007
С C# не дружу, но на C++ такой код вызвал бы ошибку из-за использования символа вместо . Наверное правильнее будет
Source=D:BDbd2db2.mdb
5
07 декабря 2007 года
hardcase
4.5K / / 09.08.2005
Подскажите пожалуйста, что делалось неверно
Трудно сказать, ваша строка подключения выглядит корректной.
Попробуйте добавить это соедниение в Visual Studio. Откройте Server Explorer (в полной версии) или Database Explorer (в Express версии), из него можно создать подключение, далее в свойствах можно посмотреть его строку подключения.
С C# не дружу, но на C++ такой код вызвал бы ошибку из-за использования символа вместо . Наверное правильнее будет
Source=D:BDbd2db2.mdb
Если не дружишь, то чего отвечаешь? В C# есть verbaitm-string, префиксом которой является @, семантика его такова, что компилятор не применяет к строке эскейп-последовательностей.
14K
07 декабря 2007 года
Irene_001
43 / / 29.07.2007
Спасибо огромное за ответы!!!Поломав немного глову я всё-таки поняла в чём дело (я пишу на всякий случай, вдруг кому-то станет интересно, или столкнётся с подобной проблемой)…
так как подключение через
OleDb
, то «Initial Catalog=t2;» в строке подключения— лишее. Если его убрать, то всё заработает
Код:
OleDbConnection cn = new OleDbConnection();
cn.ConnectionString =»Provider=Microsoft.Jet.OLEDB.4.0;» +
@»Data Source=D:BDbd2db2.mdb;»; // правильная строка
cn.Open();
…………..
cn.Close();
опять таки не берусь говорить что это 100% верно, но в этом случае у меня работает
Ошибка при записи документа «Заявка на расходование ДС» в Управление торговлей, ред. 11. Ошибка СУБД: HRESULT=80040E21
Описание ошибки:
Проблема проявила себя после обновления конфигурации рабочей базы 1С: Управление торговлей редакции 11 до релиза 11.1.10.131 и сервера 1С: Предприятия на версию 8.3.5.1517. Документ «Заявка на расходование денежных средств» попросту не записывался и сразу же возникала ошибка.
Найденные решения:
Служебная информация об ошибке от самой платформы:
Платформа: 1С:Предприятие 8.3 (8.3.5.1517)
Конфигурация: Управление торговлей, редакция 11.1 (11.1.10.131) (http://v8.1c.ru/trade/)
Copyright © ООО «1C», 2003-2015. Все права защищены
(http://www.1c.ru)
Режим: Серверный (сжатие: усиленное)
Приложение: Тонкий клиент
Локализация: Информационная база: русский (Россия), Сеанс: русский (Россия)
Вариант интерфейса: Версия 8.2
Ошибки:
———————————————————————————
29.04.2015 13:10:22
Невосстановимая ошибка
Ошибка при выполнении запроса POST к ресурсу /e1cib/logForm:
по причине:
Ошибка СУБД:
Microsoft SQL Native Client: Произошли ошибки во время выполнения многошаговой операции OLE DB. По возможности, проверьте значения всех состояний OLE DB. Работа не выполнена.
HRESULT=80040E21
Сначал традиционно в подобных случаях выполнил тестирование и исправление информационной базы. Тестирование изменений в ситуации не дало. Пришлось придумывать. Ну раз ошибка платформенная, значить может попробовать сменить платформу. Наудачу как раз 29.04.2015 вышел релиз 1С: Предприятия 8.3.6.1977.
После установка данного релиза платформы и сервера 1С ошибка перестала себя проявлять.
Оцените, помогло ли Вам предоставленное описание решения ошибки?
© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.
30-04-2015
Журавлев А.С.
(www.azhur-c.ru)