Konstantin Lebedev

Results 66 comments of Konstantin Lebedev

Hi. I've decided to make separate package for compression considering following points: 1) `clickhouse-cityhash` is dependency with fixed cityhash algorhythm. So it looks like vendored code, that will never change....

> Would be good to reduce the time to the same level that we have when using clickhouse cli. It's impossible. We are using not compiled language even with cythonized...

Traceback with `types_check=False` means that you're trying to insert value that doesn't [fit current type](https://clickhouse-driver.readthedocs.io/en/latest/features.html?highlight=types_check#data-types-checking-on-insert). In case of integer type `types_check=True` does extra work and [chops only bytes that fit...

It seems that parameter substitution should be context dependent. For DateTime fractional part throws exception ```sql SELECT '2017-10-16 00:18:50.0' > now() Query id: 8621f007-d80d-4264-8216-69b6bce9bf2f 0 rows in set. Elapsed: 0.002...

I guess we should wait for https://github.com/ClickHouse/ClickHouse/issues/38995 and then such comparison will be available: `SELECT '2017-10-16 00:18:50.0' > now()`. Then we can just add `.%f` to format.

tzlocal>=3.0 support is merged into master. I need to check `zoneinfo` performance before migrating to it from `pytz`.

How should we handle `Nullable(Float)`? `nan` and NULL value is not the same for this type. Even if `nan` value is acceptable for decimal, NULL value on Python side should...

Okay. How should we threat `Nullable(Int*)` column should NULL be converted to np.nan? That will cast column to np.int AFAIK. Or should we keep current behavior?

Please provide a minimal snippet for issue reproducing.

Python [datetime](https://docs.python.org/3/library/datetime.html#datetime-objects) objects can store precision only in microseconds. This is pointed in the package [docs](https://clickhouse-driver.readthedocs.io/en/latest/types.html#datetime-timezone-datetime64-timezone). NumPy insertion with nanoseconds precision is broken now.