У меня возникла проблема с сериализацией буфера IPC в моем приложении C++. Буфер, сериализованный в C++, правильно десериализуется в Python, но в JavaScript происходит сбой с ошибкой несоответствия байтов метаданных.
Шаги для воспроизведения:
Код C++:
У меня возникла проблема с сериализацией буфера IPC в моем приложении C++. Буфер, сериализованный в C++, правильно десериализуется в Python, но в JavaScript происходит сбой с ошибкой несоответствия байтов метаданных. Шаги для воспроизведения: Код C++: [code]arrow::Result DataFrame::toBinary(std::vector columns, std::optional const &index, std::unordered_map const& metadata) const { columns = columns.empty() ? this->columnNames() : columns;
const table = tableFromIPC(binary_data); [/code] Ожидаемое поведение: Буфер IPC, сериализованный в C++, должен корректно десериализоваться как в Python, так и в JavaScript. Фактическое поведение: p> [list] [*]Python: десериализация работает правильно, и DataFrame печатается, как ожидалось. [code]Index(['o', 'h', 'l', 'c', 'v', 'vw', 'n', 'sma (c)|sma#00000', 'sma(c)|sma#00001', 't'], dtype='object') [/code]
[*]JavaScript: десериализация завершается с ошибкой: [code]Error fetching market_data data: Error: Expected to read 131072 metadata bytes, but only read 120532. [/code]
[/list] Сообщения об ошибках: [list] [*]JavaScript: [code] Error fetching market_data data: Error: Expected to read 131072 metadata bytes, but only read 120532. readMetadata message.mjs:99 next message.mjs:48 readMessage message.mjs:57 _readNextMessageAndValidate reader.mjs:321 next reader.mjs:295 readAll reader.mjs:156 tableFromIPC serialization.mjs:29 transformModelData MarketDataProvider.tsx:38 fetchData GenericProvider.tsx:35 [/code]
[/list] Сведения о среде: [code]C++: Arrow version 14.0.1 Python: Arrow version 5 JavaScript: Arrow version 14.0.1, Node.js 14 [/code] Дополнительная информация: [list] [*]Схема таблицы включает следующие столбцы: ['o', 'h', ' l', 'c', 'v', 'vw', 'n', 'sma(c)|sma#00000', 'sma(c)|sma#00001' , 't']. [/list] Возможные причины: [list] [*] Возможно, проблема связана с конфигурацией модуля записи IPC в коде C++. [*]Может быть несоответствие в том, как версии Arrow обрабатывают потоки IPC между Python и JavaScript. [/list] Шаги, предпринятые для устранения неполадок: [list] [*]Проверены сериализованные данные в Python, чтобы подтвердить правильность десериализации. Проверили метаданные и размеры буфера в C++ и Python. [*]Убедились, что одна и та же версия Arrow используется в средах C++, Python и JavaScript. [*]Проверено, что одна и та же версия Arrow используется в средах C++, Python и JavaScript. li> [/list] Пожалуйста, помогите определить основную причину этой проблемы и предложите решение. Компонент(ы) C++, JavaScript, Python
У меня возникла проблема с сериализацией буфера IPC в моем приложении C++. Буфер, сериализованный в C++, правильно десериализуется в Python, но в JavaScript происходит сбой с ошибкой несоответствия байтов метаданных.
Шаги для воспроизведения:
Код...
У меня возникла проблема с сериализацией буфера IPC в моем приложении C++. Буфер, сериализованный в C++, правильно десериализуется в Python, но в JavaScript происходит сбой из-за ошибки несоответствия байтов метаданных.
Шаги для воспроизведения:
Код...
Я работаю над процедурой, которая изменяет порядок набора элементов div на HTML-странице с помощью JavaScript. Изменение порядка работает правильно.
Чтобы добавить визуальную обратную связь при перемещении элемента div, я использую добавляемый класс...
Я работаю над процедурой, которая изменяет порядок набора элементов div на HTML-странице с помощью JavaScript. Изменение порядка работает правильно.
Чтобы добавить визуальную обратную связь при перемещении элемента div, я использую добавляемый класс...
Хорошо, давний разработчик, но с языками более высокого порядка, такими как C# и Swift. Работаю на родном C++ для аппаратного проекта, над которым работаю, и использую Arduino для его прототипирования. Однако это меня поставило в тупик.