apache / apache/iceberg-cpp

case insensitive field matching behavior different from iceberg-python and iceberg-java

オープン
#613 コメント 7 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
C++
スター
221
フォーク
124
平均マージ
1日 16時間
マージ済み PR(30日)
21

説明

https://github.com/apache/iceberg-cpp/pull/180 added support for `GetFieldByName` with `case_sensitive` argument. Its behavior is different from Python and Java Iceberg implementations which could result in inconsistent behavior when used together.

Python/Java are unicode/multibyte aware. iceberg-cpp is not. An example where this breaks e.g. column names containing e.g. "Latin Capital Letter I with Dot Above" https://www.compart.com/en/unicode/U+0130.

Does not affect me directly at this moment.

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

調査の方向性

GetFieldByName の実装と、apache/iceberg-cpp#180 で導入された動作から始めます。U+0130 を含む列名を例として使用し、大文字と小文字を区別しないマッチングを Python および Java の Iceberg 実装と比較します。iceberg-cpp がそれらの実装と一貫して Unicode 名およびマルチバイト名を処理し、この例のカバレッジが用意されれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
cpp
領域
databases
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
静か
明瞭さ
おおむね明確
初心者へのやさしさ
48/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。