IO исключение при запросе на Clickhouse через ODBC

Обсуждение Stimulsoft Reports.NET
Ответить
brainpostman
Сообщения: 2
Зарегистрирован: 20 окт 2025, 12:19

IO исключение при запросе на Clickhouse через ODBC

Сообщение brainpostman »

Добрый день.

Я создал подключение к кликхаусу через ODBC как описано в этой теме:
viewtopic.php?t=11839

Подключение успешно, однако большинство запросов (одних и тех же) проваливается со следующим исключением:

Код: Выделить всё

System.IO.InvalidDataException: The archive entry was compressed using an unsupported compression method.
   at System.IO.Compression.Inflater.Inflate(FlushCode flushCode)
   at System.IO.Compression.Inflater.ReadInflateOutput(Byte* bufPtr, Int32 length, FlushCode flushCode, Int32& bytesRead)
   at System.IO.Compression.Inflater.ReadOutput(Byte* bufPtr, Int32 length, Int32& bytesRead)
   at System.IO.Compression.Inflater.InflateVerified(Byte* bufPtr, Int32 length)
   at System.IO.Compression.DeflateStream.ReadCore(Span`1 buffer)
   at Stimulsoft.Base.StiGZipHelper.Unpack(Byte[] bytes)
   at Stimulsoft.Report.Web.StiRequestParamsHelper.Get(HttpContext httpContext)
   at Stimulsoft.Report.Mvc.StiNetCoreDesigner.GetRequestParams(HttpContext httpContext)
   at Controllers.ReportsController.DesignerEvent() in /src/Modules/Reports/Controllers/ReportsController.cs:line 346
Некоторые запросы проходят и успешно грузят данные.

Я использую версию 2023.2.2 from 5 April 2023, .NET 6.0.

Можно ли это как-то исправить? Проблема в библиотеке, .net'е или сборке драйвера?
Aleksey
Сообщения: 3031
Зарегистрирован: 22 апр 2010, 06:57

Re: IO исключение при запросе на Clickhouse через ODBC

Сообщение Aleksey »

Здравствуйте,

Попробуйте использовать ClickHouse дата адаптер.

Спасибо.
Вложения
Screenshot 2025-10-20 224739.png
Screenshot 2025-10-20 224739.png (90.49 КБ) 132 просмотра
brainpostman
Сообщения: 2
Зарегистрирован: 20 окт 2025, 12:19

Re: IO исключение при запросе на Clickhouse через ODBC

Сообщение brainpostman »

Aleksey писал(а): 20 окт 2025, 23:54 Здравствуйте,

Попробуйте использовать ClickHouse дата адаптер.

Спасибо.
В используемой версии нет адаптера Кликхауса. Других вариантов решения с использованием ODBC нет? Не сталкивались? Проблема возникает при работе с драйвером, собранным под Linux. При использовании Windows драйвера почему-то исключений в запросах через ODBC нет.
Возможно в событии отчётника я могу перехватить запрос и сделать его в своём сервисе, есть ли далее возможность вставить полученные данные в ответ запроса источника данных?
Aleksey
Сообщения: 3031
Зарегистрирован: 22 апр 2010, 06:57

Re: IO исключение при запросе на Clickhouse через ODBC

Сообщение Aleksey »

Здравствуйте,

> Других вариантов решения с использованием ODBC нет? Не сталкивались?

Не сталкивались. Не тестировали работу через ODBC под linux.

> есть ли далее возможность вставить полученные данные в ответ запроса источника данных?

Вы можете подключаться к данным в своем коде и затем передавать как датасет через RegData() метод.

Спасибо.
Ответить