Skip to content

Commit abf2c7c

Browse files
committed
ORC: Implement suggestions by CodeRabbit
1 parent fde7e20 commit abf2c7c

1 file changed

Lines changed: 6 additions & 12 deletions

File tree

src/dlt_filesystem/source/format/readers.py

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,8 @@ def _polars_csv_symbols() -> Dict[str, Any]:
5252
}
5353

5454

55-
def _polars_orc_symbols() -> Dict[str, Any]:
56-
"""Symbols needed to resolve `polars.read_orc`'s type hints for casting reader hints."""
55+
def _pandas_orc_symbols() -> Dict[str, Any]:
56+
"""Symbols needed to resolve `pandas.read_orc`'s type hints for casting reader hints."""
5757

5858
import fsspec
5959
import pyarrow
@@ -428,19 +428,13 @@ def read_orc(
428428

429429
reader = pd.read_orc
430430

431-
kwargs = cast_kwargs_to_signature(reader, kwargs, symbols=_polars_orc_symbols())
431+
kwargs = cast_kwargs_to_signature(reader, kwargs, symbols=_pandas_orc_symbols())
432+
kwargs.setdefault("dtype_backend", "pyarrow")
432433

433434
for file_obj in items:
434435
with file_obj.open() as f:
435-
rec = reader(f, dtype_backend="pyarrow", **kwargs).to_records(index=False)
436-
# Turn numpy recarray record into a Python dictionary.
437-
# https://gist.github.com/rlabbe/d574eeac63fd126b2fcd1dc390cc3257
438-
# https://stackoverflow.com/a/67324508
439-
if rec.dtype is None or rec.dtype.names is None:
440-
yield rec
441-
return
442-
result = {name: rec[name] for name in rec.dtype.names}
443-
yield result
436+
df = reader(f, **kwargs)
437+
yield df.to_dict(orient="records")
444438

445439

446440
def read_jsonl(

0 commit comments

Comments
 (0)