Программный комплекс «Центр здоровья»

техническая поддержка => Программный комплекс «Центр здоровья» => Отчетность ПК «Центр здоровья» => Тема начата: St1Ufa от 05 Марта 2012, 17:57:35

Название: При выгрузке реестра проф. скрининнга Ошибка
Отправлено: St1Ufa от 05 Марта 2012, 17:57:35
Здравствуйте.
У нас в Центре здоровья при выгрузке реестра проф. скрининнга подвисает весь процесс на половине. Ожидание в его завершения растянулось аж на минут 40. далее завершил процесс. Выгрузка же за период выдала ошибку: "Выполнение операции было прервано"
См. скриншоты в приложенном DOC файле
Выполнение операции было прервано!
Источник: Источник MSSQL
Причина : программная ошибка.
Краткое описание ошибки: Ошибка при выполнении запроса 'CREATE view [tmpdts7aa0a1a323974b0f9a68b81cf1d6b04b] as SELECT [rf_HCTypeILLnessGUID] ,[rf_MKBGUID] ,[rf_HCVisitGUID] ,[UGUID], FROM [hlt_HCILLNess] where HCILLNessID>0 and cast(rf_HCVisitGUID as varchar(36)) in (select UGUID from tmpdtsd8cd4a68db2044f09c150c4e1f13fd17) '
Подробное описание ошибки:
Message: Неправильный синтаксис около ключевого слова "FROM".
Source: .Net SqlClient Data Provider
StackTrace: at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at MalibuSrv.MalibuDTS.MssqlLoaderInst.ProcessTempTables(String config)
TargetSite: Void OnError(System.Data.SqlClient.SqlException, Boolean)

Что делать? В чём проблема? До этого выгрузки делал (минут по 5 тратили).
Делаем на сервере. Intel Pentium Dual Core, 2 Gb Ram, Windows XP Pro SP3, ЦЗ 3.22 на 2008 SQL Express.
Название: Re: При выгрузке реестра проф. скрининнга Ошибка
Отправлено: Служба поддержки от 05 Марта 2012, 19:59:32
Вечер добрый.
Попробуйте обновить протоколы до более новой версии, см. http://hc-forum.mednet.ru/index.php?topic=585.msg7019#msg7019
Название: Re: При выгрузке реестра проф. скрининнга Ошибка
Отправлено: St1Ufa от 19 Марта 2012, 17:42:04
Обновление ситуацию изменило, но не исправило. Теперь Выгрузка за период весит на пол пути (ждал всего 8 минут, не вытерпел, да и врятли должно так долго, ведь брал 1 месяц-то). Что делать дальше? Может быть TeamViewer?
Название: Re: При выгрузке реестра проф. скрининнга Ошибка
Отправлено: Служба поддержки от 20 Марта 2012, 07:36:28
Добрый день.
Попробуйте пожалуйста осуществить простую выгрузку реестра профилактического скрининга.
Произведите переиндексацию базы данных, в режиме администрирования.
Название: Re: При выгрузке реестра проф. скрининнга Ошибка
Отправлено: Вячеслав от 20 Марта 2012, 11:36:01
У нас тоже выгрузка трудно работает - сервер загружается на 100 % - рабочие станции просто висят в это время, сервер не в силах их обслуживать.

Причем "простая выгрузка реестра" - без указания дат - работает быстрее, чем выгрузка за период.
Например просто выгрузка - 20 минут, за период(месяц) - 40 минут. Чем сервер занимается в эти 20 минут? Полный бэкап базы быстрее происходит. Ну пусть даже 40 таблиц надо посмотреть и выбрать по несколько тысяч записей из каждой для формирования реестра, но это не должно длиться так долго...

И не понятно почему так. То ли разработчик не оптимальные запросы использует, без индексов, когда еще и условие на проверку даты появляется,  то ли создаются временные таблицы почти полные копии рабочих таблиц(кстати так обязательно делать ? по-другому никак?) ...

Вопрос к тех.подддержке: Может вы отправите запрос к вашим программистам сделать анализ оптимальности использованных запросов и процедур в протоколе выгрузки реестра проф.скрининга.  Вы же разработчики, у вас все инструменты есть на руках. Сделайте временные замеры разных частей вашей процедуры. Надо найти узкое место.
Название: Re: При выгрузке реестра проф. скрининнга Ошибка
Отправлено: romanvlg от 14 Июня 2012, 12:35:38
Такая же ошибка. Обновления и переиндексацию БД делали.

У предыдущего "проблемника" все разрешилось? Просто на данный момент уже ждем 15 минут при Простой выгрузке (без интервалов)

С уважением, Волгоградский МИАЦ.
Название: Re: При выгрузке реестра проф. скрининнга Ошибка
Отправлено: romanvlg от 14 Июня 2012, 13:08:31
Просьба ответить, кто сталкивался/решал данную проблему...
Название: Re: При выгрузке реестра проф. скрининнга Ошибка
Отправлено: Служба поддержки от 15 Июня 2012, 05:22:06
Попробуйте воспользоваться обновлением, указанный в следующем сообщении: http://hc-forum.mednet.ru/index.php?topic=585.msg7019#msg7019, в нем предоставлены более новые версии протоколов выгрузок.
Название: Re: При выгрузке реестра проф. скрининнга Ошибка
Отправлено: Вячеслав от 15 Июня 2012, 17:49:06
Подтверждаю, что именно "новые версии протоколов выгрузок" и индексация таблиц которая выполняется в этом обновлении значительно увеличила скорость выгрузки реестра. у нас от 2 до 5 минут теперь выгружается.
Название: Re: При выгрузке реестра проф. скрининнга Ошибка
Отправлено: worst от 21 Июня 2012, 05:20:02
Подтверждаю, что именно "новые версии протоколов выгрузок" и индексация таблиц которая выполняется в этом обновлении значительно увеличила скорость выгрузки реестра. у нас от 2 до 5 минут теперь выгружается.
как же вам повезло! у нас после этого выгрузка занимает 4,5 - 5 часов. Переиндексация и новые протоколы дело совершенно не спасают. Отправка пакетов - за секунды, а вот чтобы эти пакеты сначала достать - нужно оставить сервер на вечер, чтобы он поработал. В автоматическом режиме ничего не работает, ибо вешает центр здоровья намертво.
Название: Re: При выгрузке реестра проф. скрининнга Ошибка
Отправлено: Служба поддержки от 21 Июня 2012, 06:12:57
Попробуйте воспользоваться mup файлом в ответе:
http://hc-forum.mednet.ru/index.php?topic=695.msg11233#msg11233