8000 Enh/cython by hadrianl · Pull Request #229 · taosdata/taos-connector-python · GitHub
[go: up one dir, main page]

Skip to content

Conversation

hadrianl
Copy link
Contributor
@hadrianl hadrianl commented Sep 13, 2023

use cython to wrap dynamic linking into python object

  • add serval pyx files(_cinterface.pyx, _objects.pyx, _constant.pyx, _parser.pyx), which can replace the legacy objects
  • build.py, cython , setuptools and compiler are required to build these code
  • faster, more pythonic and async supported
  • not compatible with earlier taos versions yet
  • developed under python 3.10.12, taos client 3.1.0.0, taos server 3.1.0.0, not fully tested with other versions yet
  • add more examples and tests (further test is still needed)
  • query 3~4 times faster when test with taosbenchmark data
  • I left the other python file almost untouch to let you guys determine when and how to switch these and the legacy code
  • the comments with FIXME, BUG need to be reviewed, I`m not sured about these code

1. add taos._cinterface.fetch_all_cython
1. add TaosResult._fetch_all_cython
1. add TaoConnection and TaosResult
1. add TaosField
2. serval more methods
3. typo
1. _cinterface split into _cinterface, _objects, _parser
1. add TaosCusor
2. add TaosConsumer and TaosTopicAssignment
1. add async function
1. better exception
1. add async commit
1. TopicPartition
2. TaosConsumer
1. add Message, MessageBlock
1.add schemaless_insert
2.add TaosStmt
1.add annotation
1. fix TaosStmt, TaosMultiBind
2. add TaosMultiBinds
3. fix row_iter for null value
4. add annotation
1. add taos_stop_query
1. better error info
1. add _constants.pyx
2.fix some bug
3.more async code
4.more doc
5. more annotation
1. add TaosResult._is_async
2.add validate_sql
1.improve taos_get_column_data_is_null
1.add tmq auto commit callback
2.free heap data properly
1.add example and test
1. add _parse_bytes
2. separate timestamp parsing and datetime convert
1.connection and consumer would have independent timezone and dt epoch
1.compile as c only
1.fix taos_fetch_block_v3
1. fix `TaosConsumer.commit_a`
2. remove useless `no gil`
3. fix typo
4. fix some type hints
1.fix potential memory leak(set values more than once)
@markcheney1
Copy link
Contributor
markcheney1 commented Nov 21, 2023

能否关注一下这个pr @zitsen @sunpe @AdamEECS

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

0