Skip to content

Commit e15ab7b

Browse files
Revert missing cursor default arguments. (fix #506)
1 parent f71a206 commit e15ab7b

File tree

8 files changed

+170
-9
lines changed

8 files changed

+170
-9
lines changed

pyathena/arrow/async_cursor.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,14 +22,34 @@
2222
class AsyncArrowCursor(AsyncCursor):
2323
def __init__(
2424
self,
25+
s3_staging_dir: Optional[str] = None,
26+
schema_name: Optional[str] = None,
27+
catalog_name: Optional[str] = None,
28+
work_group: Optional[str] = None,
29+
poll_interval: float = 1,
30+
encryption_option: Optional[str] = None,
31+
kms_key: Optional[str] = None,
32+
kill_on_interrupt: bool = True,
2533
max_workers: int = (cpu_count() or 1) * 5,
2634
arraysize: int = CursorIterator.DEFAULT_FETCH_SIZE,
2735
unload: bool = False,
36+
result_reuse_enable: bool = False,
37+
result_reuse_minutes: int = CursorIterator.DEFAULT_RESULT_REUSE_MINUTES,
2838
**kwargs,
2939
) -> None:
3040
super().__init__(
41+
s3_staging_dir=s3_staging_dir,
42+
schema_name=schema_name,
43+
catalog_name=catalog_name,
44+
work_group=work_group,
45+
poll_interval=poll_interval,
46+
encryption_option=encryption_option,
47+
kms_key=kms_key,
48+
kill_on_interrupt=kill_on_interrupt,
3149
max_workers=max_workers,
3250
arraysize=arraysize,
51+
result_reuse_enable=result_reuse_enable,
52+
result_reuse_minutes=result_reuse_minutes,
3353
**kwargs,
3454
)
3555
self._unload = unload

pyathena/arrow/cursor.py

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,32 @@
2323
class ArrowCursor(BaseCursor, CursorIterator, WithResultSet):
2424
def __init__(
2525
self,
26+
s3_staging_dir: Optional[str] = None,
27+
schema_name: Optional[str] = None,
28+
catalog_name: Optional[str] = None,
29+
work_group: Optional[str] = None,
30+
poll_interval: float = 1,
31+
encryption_option: Optional[str] = None,
32+
kms_key: Optional[str] = None,
33+
kill_on_interrupt: bool = True,
2634
unload: bool = False,
35+
result_reuse_enable: bool = False,
36+
result_reuse_minutes: int = CursorIterator.DEFAULT_RESULT_REUSE_MINUTES,
2737
**kwargs,
2838
) -> None:
29-
super().__init__(**kwargs)
39+
super().__init__(
40+
s3_staging_dir=s3_staging_dir,
41+
schema_name=schema_name,
42+
catalog_name=catalog_name,
43+
work_group=work_group,
44+
poll_interval=poll_interval,
45+
encryption_option=encryption_option,
46+
kms_key=kms_key,
47+
kill_on_interrupt=kill_on_interrupt,
48+
result_reuse_enable=result_reuse_enable,
49+
result_reuse_minutes=result_reuse_minutes,
50+
**kwargs,
51+
)
3052
self._unload = unload
3153
self._query_id: Optional[str] = None
3254
self._result_set: Optional[AthenaArrowResultSet] = None

pyathena/async_cursor.py

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,33 @@
1919
class AsyncCursor(BaseCursor):
2020
def __init__(
2121
self,
22+
s3_staging_dir: Optional[str] = None,
23+
schema_name: Optional[str] = None,
24+
catalog_name: Optional[str] = None,
25+
work_group: Optional[str] = None,
26+
poll_interval: float = 1,
27+
encryption_option: Optional[str] = None,
28+
kms_key: Optional[str] = None,
29+
kill_on_interrupt: bool = True,
2230
max_workers: int = (cpu_count() or 1) * 5,
2331
arraysize: int = CursorIterator.DEFAULT_FETCH_SIZE,
32+
result_reuse_enable: bool = False,
33+
result_reuse_minutes: int = CursorIterator.DEFAULT_RESULT_REUSE_MINUTES,
2434
**kwargs,
2535
) -> None:
26-
super().__init__(**kwargs)
36+
super().__init__(
37+
s3_staging_dir=s3_staging_dir,
38+
schema_name=schema_name,
39+
catalog_name=catalog_name,
40+
work_group=work_group,
41+
poll_interval=poll_interval,
42+
encryption_option=encryption_option,
43+
kms_key=kms_key,
44+
kill_on_interrupt=kill_on_interrupt,
45+
result_reuse_enable=result_reuse_enable,
46+
result_reuse_minutes=result_reuse_minutes,
47+
**kwargs,
48+
)
2749
self._max_workers = max_workers
2850
self._executor = ThreadPoolExecutor(max_workers=max_workers)
2951
self._arraysize = arraysize

pyathena/cursor.py

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,33 @@
1313

1414

1515
class Cursor(BaseCursor, CursorIterator, WithResultSet):
16-
def __init__(self, **kwargs) -> None:
17-
super().__init__(**kwargs)
16+
def __init__(
17+
self,
18+
s3_staging_dir: Optional[str] = None,
19+
schema_name: Optional[str] = None,
20+
catalog_name: Optional[str] = None,
21+
work_group: Optional[str] = None,
22+
poll_interval: float = 1,
23+
encryption_option: Optional[str] = None,
24+
kms_key: Optional[str] = None,
25+
kill_on_interrupt: bool = True,
26+
result_reuse_enable: bool = False,
27+
result_reuse_minutes: int = CursorIterator.DEFAULT_RESULT_REUSE_MINUTES,
28+
**kwargs,
29+
) -> None:
30+
super().__init__(
31+
s3_staging_dir=s3_staging_dir,
32+
schema_name=schema_name,
33+
catalog_name=catalog_name,
34+
work_group=work_group,
35+
poll_interval=poll_interval,
36+
encryption_option=encryption_option,
37+
kms_key=kms_key,
38+
kill_on_interrupt=kill_on_interrupt,
39+
result_reuse_enable=result_reuse_enable,
40+
result_reuse_minutes=result_reuse_minutes,
41+
**kwargs,
42+
)
1843
self._query_id: Optional[str] = None
1944
self._result_set: Optional[AthenaResultSet] = None
2045
self._result_set_class = AthenaResultSet

pyathena/pandas/async_cursor.py

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,14 +22,36 @@
2222
class AsyncPandasCursor(AsyncCursor):
2323
def __init__(
2424
self,
25+
s3_staging_dir: Optional[str] = None,
26+
schema_name: Optional[str] = None,
27+
catalog_name: Optional[str] = None,
28+
work_group: Optional[str] = None,
29+
poll_interval: float = 1,
30+
encryption_option: Optional[str] = None,
31+
kms_key: Optional[str] = None,
32+
kill_on_interrupt: bool = True,
2533
max_workers: int = (cpu_count() or 1) * 5,
2634
arraysize: int = CursorIterator.DEFAULT_FETCH_SIZE,
2735
unload: bool = False,
2836
engine: str = "auto",
2937
chunksize: Optional[int] = None,
38+
result_reuse_enable: bool = False,
39+
result_reuse_minutes: int = CursorIterator.DEFAULT_RESULT_REUSE_MINUTES,
3040
**kwargs,
3141
) -> None:
32-
super().__init__(max_workers=max_workers, arraysize=arraysize, **kwargs)
42+
super().__init__(
43+
s3_staging_dir=s3_staging_dir,
44+
schema_name=schema_name,
45+
catalog_name=catalog_name,
46+
work_group=work_group,
47+
poll_interval=poll_interval,
48+
encryption_option=encryption_option,
49+
kms_key=kms_key,
50+
kill_on_interrupt=kill_on_interrupt,
51+
max_workers=max_workers,
52+
arraysize=arraysize,
53+
**kwargs,
54+
)
3355
self._unload = unload
3456
self._engine = engine
3557
self._chunksize = chunksize

pyathena/pandas/cursor.py

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,15 +35,37 @@
3535
class PandasCursor(BaseCursor, CursorIterator, WithResultSet):
3636
def __init__(
3737
self,
38+
s3_staging_dir: Optional[str] = None,
39+
schema_name: Optional[str] = None,
40+
catalog_name: Optional[str] = None,
41+
work_group: Optional[str] = None,
42+
poll_interval: float = 1,
43+
encryption_option: Optional[str] = None,
44+
kms_key: Optional[str] = None,
45+
kill_on_interrupt: bool = True,
3846
unload: bool = False,
3947
engine: str = "auto",
4048
chunksize: Optional[int] = None,
4149
block_size: Optional[int] = None,
4250
cache_type: Optional[str] = None,
4351
max_workers: int = (cpu_count() or 1) * 5,
52+
result_reuse_enable: bool = False,
53+
result_reuse_minutes: int = CursorIterator.DEFAULT_RESULT_REUSE_MINUTES,
4454
**kwargs,
4555
) -> None:
46-
super().__init__(**kwargs)
56+
super().__init__(
57+
s3_staging_dir=s3_staging_dir,
58+
schema_name=schema_name,
59+
catalog_name=catalog_name,
60+
work_group=work_group,
61+
poll_interval=poll_interval,
62+
encryption_option=encryption_option,
63+
kms_key=kms_key,
64+
kill_on_interrupt=kill_on_interrupt,
65+
result_reuse_enable=result_reuse_enable,
66+
result_reuse_minutes=result_reuse_minutes,
67+
**kwargs,
68+
)
4769
self._unload = unload
4870
self._engine = engine
4971
self._chunksize = chunksize

pyathena/spark/async_cursor.py

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,24 @@
1414

1515

1616
class AsyncSparkCursor(SparkBaseCursor):
17-
def __init__(self, max_workers: int = (cpu_count() or 1) * 5, **kwargs):
18-
super().__init__(**kwargs)
17+
def __init__(
18+
self,
19+
session_id: Optional[str] = None,
20+
description: Optional[str] = None,
21+
engine_configuration: Optional[Dict[str, Any]] = None,
22+
notebook_version: Optional[str] = None,
23+
session_idle_timeout_minutes: Optional[int] = None,
24+
max_workers: int = (cpu_count() or 1) * 5,
25+
**kwargs,
26+
):
27+
super().__init__(
28+
session_id=session_id,
29+
description=description,
30+
engine_configuration=engine_configuration,
31+
notebook_version=notebook_version,
32+
session_idle_timeout_minutes=session_idle_timeout_minutes,
33+
**kwargs,
34+
)
1935
self._max_workers = max_workers
2036
self._executor = ThreadPoolExecutor(max_workers=max_workers)
2137

pyathena/spark/cursor.py

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,21 @@
1414
class SparkCursor(SparkBaseCursor, WithCalculationExecution):
1515
def __init__(
1616
self,
17+
session_id: Optional[str] = None,
18+
description: Optional[str] = None,
19+
engine_configuration: Optional[Dict[str, Any]] = None,
20+
notebook_version: Optional[str] = None,
21+
session_idle_timeout_minutes: Optional[int] = None,
1722
**kwargs,
1823
) -> None:
19-
super().__init__(**kwargs)
24+
super().__init__(
25+
session_id=session_id,
26+
description=description,
27+
engine_configuration=engine_configuration,
28+
notebook_version=notebook_version,
29+
session_idle_timeout_minutes=session_idle_timeout_minutes,
30+
**kwargs,
31+
)
2032

2133
@property
2234
def calculation_execution(self) -> Optional[AthenaCalculationExecution]:

0 commit comments

Comments
 (0)