sqlcycli 1.3.8__tar.gz → 1.4.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {sqlcycli-1.3.8/src/sqlcycli.egg-info → sqlcycli-1.4.1}/PKG-INFO +12 -30
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/README.md +10 -28
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/setup.cfg +2 -2
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/_auth.c +1 -1
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/_connect.c +39 -5
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/aio/connection.c +5177 -5634
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/aio/connection.py +20 -28
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/aio/pool.c +7725 -3828
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/aio/pool.pxd +6 -2
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/aio/pool.py +153 -25
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/aio/pool.pyi +11 -1
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/connection.c +3584 -4056
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/connection.py +20 -28
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/errors.c +1 -1
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/protocol.c +1 -1
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/sqlfunc.c +1 -1
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/sqlintvl.c +1 -1
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/transcode.c +4415 -4515
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/transcode.pxd +1 -1
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/transcode.py +135 -196
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/utils.c +165 -165
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/utils.pxd +1 -1
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/utils.py +2 -2
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/utils.pyi +1 -1
- {sqlcycli-1.3.8 → sqlcycli-1.4.1/src/sqlcycli.egg-info}/PKG-INFO +12 -30
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli.egg-info/requires.txt +1 -1
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/LICENSE +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/MANIFEST.in +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/pyproject.toml +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/setup.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/__init__.pxd +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/__init__.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/_auth.pxd +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/_auth.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/_connect.pxd +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/_connect.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/_optionfile.c +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/_optionfile.pxd +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/_optionfile.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/_ssl.c +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/_ssl.pxd +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/_ssl.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/aio/__init__.pxd +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/aio/__init__.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/aio/connection.pxd +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/aio/connection.pyi +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/charset.c +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/charset.pxd +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/charset.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/charset.pyi +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/connection.pxd +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/connection.pyi +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/CLIENT.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/COMMAND.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/CR.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/ER.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/FIELD_TYPE.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/FLAG.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/SERVER_STATUS.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/_CLIENT.c +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/_CLIENT.pxd +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/_CLIENT.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/_COMMAND.c +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/_COMMAND.pxd +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/_COMMAND.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/_FIELD_TYPE.c +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/_FIELD_TYPE.pxd +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/_FIELD_TYPE.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/_SERVER_STATUS.c +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/_SERVER_STATUS.pxd +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/_SERVER_STATUS.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/__init__.pxd +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/constants/__init__.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/errors.pxd +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/errors.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/protocol.pxd +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/protocol.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/sqlfunc.pxd +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/sqlfunc.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/sqlfunc.pyi +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/sqlintvl.pxd +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/sqlintvl.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/sqlintvl.pyi +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/typeref.c +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/typeref.pxd +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli/typeref.py +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli.egg-info/SOURCES.txt +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli.egg-info/dependency_links.txt +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli.egg-info/not-zip-safe +0 -0
- {sqlcycli-1.3.8 → sqlcycli-1.4.1}/src/sqlcycli.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: sqlcycli
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.4.1
|
|
4
4
|
Summary: Fast MySQL driver build in Cython (Sync and Async).
|
|
5
5
|
Home-page: https://github.com/AresJef/SQLCyCli
|
|
6
6
|
Author: Jiefu Chen
|
|
@@ -17,7 +17,7 @@ License-File: LICENSE
|
|
|
17
17
|
Requires-Dist: numpy>=1.25.2
|
|
18
18
|
Requires-Dist: orjson>=3.10.2
|
|
19
19
|
Requires-Dist: pandas>=2.1.0
|
|
20
|
-
Requires-Dist:
|
|
20
|
+
Requires-Dist: typing-extensions>=4.9.0
|
|
21
21
|
Dynamic: license-file
|
|
22
22
|
|
|
23
23
|
# Fast MySQL driver build in Cython (Sync and Async).
|
|
@@ -38,19 +38,6 @@ Install from `github`
|
|
|
38
38
|
pip install git+https://github.com/AresJef/SQLCyCli.git
|
|
39
39
|
```
|
|
40
40
|
|
|
41
|
-
For Linux systems, if you encounter the following error when installing the SQLCyCli dependency [mysqlclient](https://github.com/PyMySQL/mysqlclient):
|
|
42
|
-
|
|
43
|
-
```
|
|
44
|
-
Exception: Can not find valid pkg-config name.
|
|
45
|
-
Specify MYSQLCLIENT_CFLAGS and MYSQLCLIENT_LDFLAGS env vars manually
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
Try the following to fix dependency issue (source: [Stack Overflow](https://stackoverflow.com/questions/76585758/mysqlclient-cannot-install-via-pip-cannot-find-pkg-config-name-in-ubuntu)):
|
|
49
|
-
|
|
50
|
-
```bash
|
|
51
|
-
sudo apt-get install pkg-config python3-dev default-libmysqlclient-dev build-essential
|
|
52
|
-
```
|
|
53
|
-
|
|
54
41
|
## Requirements
|
|
55
42
|
|
|
56
43
|
- Python 3.10 or higher.
|
|
@@ -70,8 +57,6 @@ The following result comes from [benchmark](./src/benchmark.py):
|
|
|
70
57
|
|
|
71
58
|
- Device: MacbookPro M1Pro(2E8P) 32GB
|
|
72
59
|
- Python: 3.12.4
|
|
73
|
-
- MySQL: 8.3.0
|
|
74
|
-
- mysqlclient: 2.2.4
|
|
75
60
|
- PyMySQL: 1.1.1
|
|
76
61
|
- aiomysql: 0.2.0
|
|
77
62
|
- asyncmy: 0.2.9
|
|
@@ -79,23 +64,21 @@ The following result comes from [benchmark](./src/benchmark.py):
|
|
|
79
64
|
```
|
|
80
65
|
# Unit: second | Lower is better
|
|
81
66
|
name type rows insert-per-row insert-bulk select-per-row select-all
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
asyncmy async 50000 3.665675 0.397671 5.483239 0.313418
|
|
67
|
+
SQLCyCli sync 50000 2.428453 0.367404 2.526141 0.078057
|
|
68
|
+
PyMySQL sync 50000 2.821481 0.480322 4.784844 0.335978
|
|
69
|
+
SQLCyCli async 50000 3.757844 0.340909 5.017284 0.157078
|
|
70
|
+
aiomysql async 50000 3.845818 0.419444 5.764339 0.333526
|
|
71
|
+
asyncmy async 50000 4.015180 0.484794 6.144809 0.337285
|
|
88
72
|
```
|
|
89
73
|
|
|
90
74
|
```
|
|
91
75
|
# Unit: second | Lower is better
|
|
92
76
|
name type rows update-per-row update-all delete-per-row delete-all
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
asyncmy async 50000 3.695764 0.352104 3.460674 0.104523
|
|
77
|
+
SQLCyCli sync 50000 2.597837 0.327441 2.251010 0.131872
|
|
78
|
+
PyMySQL sync 50000 3.044907 0.368951 2.789961 0.158141
|
|
79
|
+
SQLCyCli async 50000 4.226546 0.369085 3.994125 0.139679
|
|
80
|
+
aiomysql async 50000 3.792293 0.356109 3.589203 0.134762
|
|
81
|
+
asyncmy async 50000 4.160017 0.362896 3.928555 0.145456
|
|
99
82
|
```
|
|
100
83
|
|
|
101
84
|
## Usage
|
|
@@ -299,4 +282,3 @@ SQLCyCli is based on the following open-source repositories:
|
|
|
299
282
|
- [numpy](https://github.com/numpy/numpy)
|
|
300
283
|
- [orjson](https://github.com/ijl/orjson)
|
|
301
284
|
- [pandas](https://github.com/pandas-dev/pandas)
|
|
302
|
-
- [mysqlclient](https://github.com/PyMySQL/mysqlclient)
|
|
@@ -16,19 +16,6 @@ Install from `github`
|
|
|
16
16
|
pip install git+https://github.com/AresJef/SQLCyCli.git
|
|
17
17
|
```
|
|
18
18
|
|
|
19
|
-
For Linux systems, if you encounter the following error when installing the SQLCyCli dependency [mysqlclient](https://github.com/PyMySQL/mysqlclient):
|
|
20
|
-
|
|
21
|
-
```
|
|
22
|
-
Exception: Can not find valid pkg-config name.
|
|
23
|
-
Specify MYSQLCLIENT_CFLAGS and MYSQLCLIENT_LDFLAGS env vars manually
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
Try the following to fix dependency issue (source: [Stack Overflow](https://stackoverflow.com/questions/76585758/mysqlclient-cannot-install-via-pip-cannot-find-pkg-config-name-in-ubuntu)):
|
|
27
|
-
|
|
28
|
-
```bash
|
|
29
|
-
sudo apt-get install pkg-config python3-dev default-libmysqlclient-dev build-essential
|
|
30
|
-
```
|
|
31
|
-
|
|
32
19
|
## Requirements
|
|
33
20
|
|
|
34
21
|
- Python 3.10 or higher.
|
|
@@ -48,8 +35,6 @@ The following result comes from [benchmark](./src/benchmark.py):
|
|
|
48
35
|
|
|
49
36
|
- Device: MacbookPro M1Pro(2E8P) 32GB
|
|
50
37
|
- Python: 3.12.4
|
|
51
|
-
- MySQL: 8.3.0
|
|
52
|
-
- mysqlclient: 2.2.4
|
|
53
38
|
- PyMySQL: 1.1.1
|
|
54
39
|
- aiomysql: 0.2.0
|
|
55
40
|
- asyncmy: 0.2.9
|
|
@@ -57,23 +42,21 @@ The following result comes from [benchmark](./src/benchmark.py):
|
|
|
57
42
|
```
|
|
58
43
|
# Unit: second | Lower is better
|
|
59
44
|
name type rows insert-per-row insert-bulk select-per-row select-all
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
asyncmy async 50000 3.665675 0.397671 5.483239 0.313418
|
|
45
|
+
SQLCyCli sync 50000 2.428453 0.367404 2.526141 0.078057
|
|
46
|
+
PyMySQL sync 50000 2.821481 0.480322 4.784844 0.335978
|
|
47
|
+
SQLCyCli async 50000 3.757844 0.340909 5.017284 0.157078
|
|
48
|
+
aiomysql async 50000 3.845818 0.419444 5.764339 0.333526
|
|
49
|
+
asyncmy async 50000 4.015180 0.484794 6.144809 0.337285
|
|
66
50
|
```
|
|
67
51
|
|
|
68
52
|
```
|
|
69
53
|
# Unit: second | Lower is better
|
|
70
54
|
name type rows update-per-row update-all delete-per-row delete-all
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
asyncmy async 50000 3.695764 0.352104 3.460674 0.104523
|
|
55
|
+
SQLCyCli sync 50000 2.597837 0.327441 2.251010 0.131872
|
|
56
|
+
PyMySQL sync 50000 3.044907 0.368951 2.789961 0.158141
|
|
57
|
+
SQLCyCli async 50000 4.226546 0.369085 3.994125 0.139679
|
|
58
|
+
aiomysql async 50000 3.792293 0.356109 3.589203 0.134762
|
|
59
|
+
asyncmy async 50000 4.160017 0.362896 3.928555 0.145456
|
|
77
60
|
```
|
|
78
61
|
|
|
79
62
|
## Usage
|
|
@@ -277,4 +260,3 @@ SQLCyCli is based on the following open-source repositories:
|
|
|
277
260
|
- [numpy](https://github.com/numpy/numpy)
|
|
278
261
|
- [orjson](https://github.com/ijl/orjson)
|
|
279
262
|
- [pandas](https://github.com/pandas-dev/pandas)
|
|
280
|
-
- [mysqlclient](https://github.com/PyMySQL/mysqlclient)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[metadata]
|
|
2
2
|
name = sqlcycli
|
|
3
|
-
version = 1.
|
|
3
|
+
version = 1.4.1
|
|
4
4
|
author = Jiefu Chen
|
|
5
5
|
author_email = keppa1991@163.com
|
|
6
6
|
description = Fast MySQL driver build in Cython (Sync and Async).
|
|
@@ -26,7 +26,7 @@ install_requires =
|
|
|
26
26
|
numpy>=1.25.2
|
|
27
27
|
orjson>=3.10.2
|
|
28
28
|
pandas>=2.1.0
|
|
29
|
-
|
|
29
|
+
typing-extensions>=4.9.0
|
|
30
30
|
|
|
31
31
|
[options.packages.find]
|
|
32
32
|
where = src
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"-Wno-unreachable-code"
|
|
14
14
|
],
|
|
15
15
|
"include_dirs": [
|
|
16
|
-
"/tmp/build-env-
|
|
16
|
+
"/tmp/build-env-qjota9sk/lib/python3.12/site-packages/numpy/_core/include"
|
|
17
17
|
],
|
|
18
18
|
"name": "sqlcycli._auth",
|
|
19
19
|
"sources": [
|
|
@@ -1531,6 +1531,7 @@ struct __pyx_obj_8sqlcycli_3aio_10connection_BaseConnection;
|
|
|
1531
1531
|
struct __pyx_obj_8sqlcycli_3aio_4pool_PoolConnection;
|
|
1532
1532
|
struct __pyx_obj_8sqlcycli_3aio_4pool_PoolSyncConnection;
|
|
1533
1533
|
struct __pyx_obj_8sqlcycli_3aio_4pool_PoolConnectionManager;
|
|
1534
|
+
struct __pyx_obj_8sqlcycli_3aio_4pool_PoolTransactionManager;
|
|
1534
1535
|
struct __pyx_obj_8sqlcycli_3aio_4pool_Pool;
|
|
1535
1536
|
struct __pyx_obj_8sqlcycli_8_connect_ConnectionManager;
|
|
1536
1537
|
struct __pyx_obj_8sqlcycli_8_connect_PoolManager;
|
|
@@ -2410,7 +2411,19 @@ struct __pyx_obj_8sqlcycli_3aio_4pool_PoolConnectionManager {
|
|
|
2410
2411
|
|
|
2411
2412
|
|
|
2412
2413
|
/* "pool.pxd":34
|
|
2413
|
-
* cdef inline bint _release_sync_conn(self) except -1
|
|
2414
|
+
* cdef inline bint _release_sync_conn(self, bint close) except -1
|
|
2415
|
+
*
|
|
2416
|
+
* cdef class PoolTransactionManager(PoolConnectionManager): # <<<<<<<<<<<<<<
|
|
2417
|
+
* pass
|
|
2418
|
+
*
|
|
2419
|
+
*/
|
|
2420
|
+
struct __pyx_obj_8sqlcycli_3aio_4pool_PoolTransactionManager {
|
|
2421
|
+
struct __pyx_obj_8sqlcycli_3aio_4pool_PoolConnectionManager __pyx_base;
|
|
2422
|
+
};
|
|
2423
|
+
|
|
2424
|
+
|
|
2425
|
+
/* "pool.pxd":37
|
|
2426
|
+
* pass
|
|
2414
2427
|
*
|
|
2415
2428
|
* cdef class Pool: # <<<<<<<<<<<<<<
|
|
2416
2429
|
* cdef:
|
|
@@ -3135,13 +3148,27 @@ static struct __pyx_vtabstruct_8sqlcycli_3aio_4pool_PoolSyncConnection *__pyx_vt
|
|
|
3135
3148
|
|
|
3136
3149
|
struct __pyx_vtabstruct_8sqlcycli_3aio_4pool_PoolConnectionManager {
|
|
3137
3150
|
struct __pyx_obj_8sqlcycli_3aio_4pool_PoolSyncConnection *(*_acquire_sync_conn)(struct __pyx_obj_8sqlcycli_3aio_4pool_PoolConnectionManager *);
|
|
3138
|
-
int (*_release_sync_conn)(struct __pyx_obj_8sqlcycli_3aio_4pool_PoolConnectionManager
|
|
3151
|
+
int (*_release_sync_conn)(struct __pyx_obj_8sqlcycli_3aio_4pool_PoolConnectionManager *, int);
|
|
3139
3152
|
};
|
|
3140
3153
|
static struct __pyx_vtabstruct_8sqlcycli_3aio_4pool_PoolConnectionManager *__pyx_vtabptr_8sqlcycli_3aio_4pool_PoolConnectionManager;
|
|
3141
3154
|
|
|
3142
3155
|
|
|
3143
3156
|
/* "pool.pxd":34
|
|
3144
|
-
* cdef inline bint _release_sync_conn(self) except -1
|
|
3157
|
+
* cdef inline bint _release_sync_conn(self, bint close) except -1
|
|
3158
|
+
*
|
|
3159
|
+
* cdef class PoolTransactionManager(PoolConnectionManager): # <<<<<<<<<<<<<<
|
|
3160
|
+
* pass
|
|
3161
|
+
*
|
|
3162
|
+
*/
|
|
3163
|
+
|
|
3164
|
+
struct __pyx_vtabstruct_8sqlcycli_3aio_4pool_PoolTransactionManager {
|
|
3165
|
+
struct __pyx_vtabstruct_8sqlcycli_3aio_4pool_PoolConnectionManager __pyx_base;
|
|
3166
|
+
};
|
|
3167
|
+
static struct __pyx_vtabstruct_8sqlcycli_3aio_4pool_PoolTransactionManager *__pyx_vtabptr_8sqlcycli_3aio_4pool_PoolTransactionManager;
|
|
3168
|
+
|
|
3169
|
+
|
|
3170
|
+
/* "pool.pxd":37
|
|
3171
|
+
* pass
|
|
3145
3172
|
*
|
|
3146
3173
|
* cdef class Pool: # <<<<<<<<<<<<<<
|
|
3147
3174
|
* cdef:
|
|
@@ -3163,6 +3190,7 @@ struct __pyx_vtabstruct_8sqlcycli_3aio_4pool_Pool {
|
|
|
3163
3190
|
unsigned int (*_get_total)(struct __pyx_obj_8sqlcycli_3aio_4pool_Pool *);
|
|
3164
3191
|
PyObject *(*_get_loop)(struct __pyx_obj_8sqlcycli_3aio_4pool_Pool *);
|
|
3165
3192
|
struct __pyx_obj_8sqlcycli_3aio_4pool_PoolConnectionManager *(*acquire)(struct __pyx_obj_8sqlcycli_3aio_4pool_Pool *, int __pyx_skip_dispatch);
|
|
3193
|
+
struct __pyx_obj_8sqlcycli_3aio_4pool_PoolTransactionManager *(*transaction)(struct __pyx_obj_8sqlcycli_3aio_4pool_Pool *, int __pyx_skip_dispatch);
|
|
3166
3194
|
PyObject *(*release)(struct __pyx_obj_8sqlcycli_3aio_4pool_Pool *, PyObject *, int __pyx_skip_dispatch);
|
|
3167
3195
|
struct __pyx_obj_8sqlcycli_3aio_4pool_PoolSyncConnection *(*_acquire_sync_conn)(struct __pyx_obj_8sqlcycli_3aio_4pool_Pool *);
|
|
3168
3196
|
int (*_release_sync_conn)(struct __pyx_obj_8sqlcycli_3aio_4pool_Pool *, struct __pyx_obj_8sqlcycli_3aio_4pool_PoolSyncConnection *);
|
|
@@ -4344,6 +4372,7 @@ typedef struct {
|
|
|
4344
4372
|
PyTypeObject *__pyx_ptype_8sqlcycli_3aio_4pool_PoolConnection;
|
|
4345
4373
|
PyTypeObject *__pyx_ptype_8sqlcycli_3aio_4pool_PoolSyncConnection;
|
|
4346
4374
|
PyTypeObject *__pyx_ptype_8sqlcycli_3aio_4pool_PoolConnectionManager;
|
|
4375
|
+
PyTypeObject *__pyx_ptype_8sqlcycli_3aio_4pool_PoolTransactionManager;
|
|
4347
4376
|
PyTypeObject *__pyx_ptype_8sqlcycli_3aio_4pool_Pool;
|
|
4348
4377
|
#if CYTHON_USE_MODULE_STATE
|
|
4349
4378
|
#endif
|
|
@@ -4673,6 +4702,7 @@ static int __pyx_m_clear(PyObject *m) {
|
|
|
4673
4702
|
Py_CLEAR(clear_module_state->__pyx_ptype_8sqlcycli_3aio_4pool_PoolConnection);
|
|
4674
4703
|
Py_CLEAR(clear_module_state->__pyx_ptype_8sqlcycli_3aio_4pool_PoolSyncConnection);
|
|
4675
4704
|
Py_CLEAR(clear_module_state->__pyx_ptype_8sqlcycli_3aio_4pool_PoolConnectionManager);
|
|
4705
|
+
Py_CLEAR(clear_module_state->__pyx_ptype_8sqlcycli_3aio_4pool_PoolTransactionManager);
|
|
4676
4706
|
Py_CLEAR(clear_module_state->__pyx_ptype_8sqlcycli_3aio_4pool_Pool);
|
|
4677
4707
|
Py_CLEAR(clear_module_state->__pyx_ptype_8sqlcycli_8_connect_ConnectionManager);
|
|
4678
4708
|
Py_CLEAR(clear_module_state->__pyx_type_8sqlcycli_8_connect_ConnectionManager);
|
|
@@ -4976,6 +5006,7 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) {
|
|
|
4976
5006
|
Py_VISIT(traverse_module_state->__pyx_ptype_8sqlcycli_3aio_4pool_PoolConnection);
|
|
4977
5007
|
Py_VISIT(traverse_module_state->__pyx_ptype_8sqlcycli_3aio_4pool_PoolSyncConnection);
|
|
4978
5008
|
Py_VISIT(traverse_module_state->__pyx_ptype_8sqlcycli_3aio_4pool_PoolConnectionManager);
|
|
5009
|
+
Py_VISIT(traverse_module_state->__pyx_ptype_8sqlcycli_3aio_4pool_PoolTransactionManager);
|
|
4979
5010
|
Py_VISIT(traverse_module_state->__pyx_ptype_8sqlcycli_3aio_4pool_Pool);
|
|
4980
5011
|
Py_VISIT(traverse_module_state->__pyx_ptype_8sqlcycli_8_connect_ConnectionManager);
|
|
4981
5012
|
Py_VISIT(traverse_module_state->__pyx_type_8sqlcycli_8_connect_ConnectionManager);
|
|
@@ -5303,6 +5334,7 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) {
|
|
|
5303
5334
|
#define __pyx_ptype_8sqlcycli_3aio_4pool_PoolConnection __pyx_mstate_global->__pyx_ptype_8sqlcycli_3aio_4pool_PoolConnection
|
|
5304
5335
|
#define __pyx_ptype_8sqlcycli_3aio_4pool_PoolSyncConnection __pyx_mstate_global->__pyx_ptype_8sqlcycli_3aio_4pool_PoolSyncConnection
|
|
5305
5336
|
#define __pyx_ptype_8sqlcycli_3aio_4pool_PoolConnectionManager __pyx_mstate_global->__pyx_ptype_8sqlcycli_3aio_4pool_PoolConnectionManager
|
|
5337
|
+
#define __pyx_ptype_8sqlcycli_3aio_4pool_PoolTransactionManager __pyx_mstate_global->__pyx_ptype_8sqlcycli_3aio_4pool_PoolTransactionManager
|
|
5306
5338
|
#define __pyx_ptype_8sqlcycli_3aio_4pool_Pool __pyx_mstate_global->__pyx_ptype_8sqlcycli_3aio_4pool_Pool
|
|
5307
5339
|
#if CYTHON_USE_MODULE_STATE
|
|
5308
5340
|
#endif
|
|
@@ -15107,8 +15139,10 @@ static int __Pyx_modinit_type_import_code(void) {
|
|
|
15107
15139
|
__pyx_vtabptr_8sqlcycli_3aio_4pool_PoolSyncConnection = (struct __pyx_vtabstruct_8sqlcycli_3aio_4pool_PoolSyncConnection*)__Pyx_GetVtable(__pyx_ptype_8sqlcycli_3aio_4pool_PoolSyncConnection); if (unlikely(!__pyx_vtabptr_8sqlcycli_3aio_4pool_PoolSyncConnection)) __PYX_ERR(7, 18, __pyx_L1_error)
|
|
15108
15140
|
__pyx_ptype_8sqlcycli_3aio_4pool_PoolConnectionManager = __Pyx_ImportType_3_0_12(__pyx_t_1, "sqlcycli.aio.pool", "PoolConnectionManager", sizeof(struct __pyx_obj_8sqlcycli_3aio_4pool_PoolConnectionManager), __PYX_GET_STRUCT_ALIGNMENT_3_0_12(struct __pyx_obj_8sqlcycli_3aio_4pool_PoolConnectionManager),__Pyx_ImportType_CheckSize_Warn_3_0_12); if (!__pyx_ptype_8sqlcycli_3aio_4pool_PoolConnectionManager) __PYX_ERR(7, 25, __pyx_L1_error)
|
|
15109
15141
|
__pyx_vtabptr_8sqlcycli_3aio_4pool_PoolConnectionManager = (struct __pyx_vtabstruct_8sqlcycli_3aio_4pool_PoolConnectionManager*)__Pyx_GetVtable(__pyx_ptype_8sqlcycli_3aio_4pool_PoolConnectionManager); if (unlikely(!__pyx_vtabptr_8sqlcycli_3aio_4pool_PoolConnectionManager)) __PYX_ERR(7, 25, __pyx_L1_error)
|
|
15110
|
-
|
|
15111
|
-
|
|
15142
|
+
__pyx_ptype_8sqlcycli_3aio_4pool_PoolTransactionManager = __Pyx_ImportType_3_0_12(__pyx_t_1, "sqlcycli.aio.pool", "PoolTransactionManager", sizeof(struct __pyx_obj_8sqlcycli_3aio_4pool_PoolTransactionManager), __PYX_GET_STRUCT_ALIGNMENT_3_0_12(struct __pyx_obj_8sqlcycli_3aio_4pool_PoolTransactionManager),__Pyx_ImportType_CheckSize_Warn_3_0_12); if (!__pyx_ptype_8sqlcycli_3aio_4pool_PoolTransactionManager) __PYX_ERR(7, 34, __pyx_L1_error)
|
|
15143
|
+
__pyx_vtabptr_8sqlcycli_3aio_4pool_PoolTransactionManager = (struct __pyx_vtabstruct_8sqlcycli_3aio_4pool_PoolTransactionManager*)__Pyx_GetVtable(__pyx_ptype_8sqlcycli_3aio_4pool_PoolTransactionManager); if (unlikely(!__pyx_vtabptr_8sqlcycli_3aio_4pool_PoolTransactionManager)) __PYX_ERR(7, 34, __pyx_L1_error)
|
|
15144
|
+
__pyx_ptype_8sqlcycli_3aio_4pool_Pool = __Pyx_ImportType_3_0_12(__pyx_t_1, "sqlcycli.aio.pool", "Pool", sizeof(struct __pyx_obj_8sqlcycli_3aio_4pool_Pool), __PYX_GET_STRUCT_ALIGNMENT_3_0_12(struct __pyx_obj_8sqlcycli_3aio_4pool_Pool),__Pyx_ImportType_CheckSize_Warn_3_0_12); if (!__pyx_ptype_8sqlcycli_3aio_4pool_Pool) __PYX_ERR(7, 37, __pyx_L1_error)
|
|
15145
|
+
__pyx_vtabptr_8sqlcycli_3aio_4pool_Pool = (struct __pyx_vtabstruct_8sqlcycli_3aio_4pool_Pool*)__Pyx_GetVtable(__pyx_ptype_8sqlcycli_3aio_4pool_Pool); if (unlikely(!__pyx_vtabptr_8sqlcycli_3aio_4pool_Pool)) __PYX_ERR(7, 37, __pyx_L1_error)
|
|
15112
15146
|
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
|
|
15113
15147
|
__Pyx_RefNannyFinishContext();
|
|
15114
15148
|
return 0;
|