maxframe 0.1.0b4__cp38-cp38-win32.whl → 1.0.0rc1__cp38-cp38-win32.whl
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.
Potentially problematic release.
This version of maxframe might be problematic. Click here for more details.
- maxframe/__init__.py +1 -0
- maxframe/_utils.cp38-win32.pyd +0 -0
- maxframe/codegen.py +56 -3
- maxframe/config/config.py +15 -1
- maxframe/core/__init__.py +0 -3
- maxframe/core/entity/__init__.py +1 -8
- maxframe/core/entity/objects.py +3 -45
- maxframe/core/graph/core.cp38-win32.pyd +0 -0
- maxframe/core/graph/core.pyx +4 -4
- maxframe/dataframe/__init__.py +1 -0
- maxframe/dataframe/core.py +30 -8
- maxframe/dataframe/datasource/read_odps_query.py +3 -1
- maxframe/dataframe/datasource/read_odps_table.py +3 -1
- maxframe/dataframe/datastore/tests/__init__.py +13 -0
- maxframe/dataframe/datastore/tests/test_to_odps.py +48 -0
- maxframe/dataframe/datastore/to_odps.py +21 -0
- maxframe/dataframe/indexing/align.py +1 -1
- maxframe/dataframe/misc/__init__.py +4 -0
- maxframe/dataframe/misc/apply.py +3 -1
- maxframe/dataframe/misc/case_when.py +141 -0
- maxframe/dataframe/misc/memory_usage.py +2 -2
- maxframe/dataframe/misc/pivot_table.py +262 -0
- maxframe/dataframe/misc/tests/test_misc.py +84 -0
- maxframe/dataframe/plotting/core.py +2 -2
- maxframe/dataframe/reduction/core.py +2 -1
- maxframe/dataframe/statistics/corr.py +3 -3
- maxframe/dataframe/utils.py +7 -0
- maxframe/errors.py +13 -0
- maxframe/extension.py +12 -0
- maxframe/learn/contrib/utils.py +52 -0
- maxframe/learn/contrib/xgboost/__init__.py +26 -0
- maxframe/learn/contrib/xgboost/classifier.py +86 -0
- maxframe/learn/contrib/xgboost/core.py +156 -0
- maxframe/learn/contrib/xgboost/dmatrix.py +150 -0
- maxframe/learn/contrib/xgboost/predict.py +138 -0
- maxframe/learn/contrib/xgboost/regressor.py +78 -0
- maxframe/learn/contrib/xgboost/tests/__init__.py +13 -0
- maxframe/learn/contrib/xgboost/tests/test_core.py +43 -0
- maxframe/learn/contrib/xgboost/train.py +121 -0
- maxframe/learn/utils/__init__.py +15 -0
- maxframe/learn/utils/core.py +29 -0
- maxframe/lib/mmh3.cp38-win32.pyd +0 -0
- maxframe/lib/mmh3.pyi +43 -0
- maxframe/lib/wrapped_pickle.py +2 -1
- maxframe/odpsio/arrow.py +2 -3
- maxframe/odpsio/tableio.py +22 -0
- maxframe/odpsio/tests/test_schema.py +16 -11
- maxframe/opcodes.py +3 -0
- maxframe/protocol.py +108 -10
- maxframe/serialization/core.cp38-win32.pyd +0 -0
- maxframe/serialization/core.pxd +3 -0
- maxframe/serialization/core.pyi +64 -0
- maxframe/serialization/core.pyx +54 -25
- maxframe/serialization/exception.py +1 -1
- maxframe/serialization/pandas.py +7 -2
- maxframe/serialization/serializables/core.py +119 -12
- maxframe/serialization/serializables/tests/test_serializable.py +46 -4
- maxframe/session.py +28 -0
- maxframe/tensor/__init__.py +1 -1
- maxframe/tensor/arithmetic/tests/test_arithmetic.py +1 -1
- maxframe/tensor/base/__init__.py +2 -0
- maxframe/tensor/base/atleast_1d.py +74 -0
- maxframe/tensor/base/unique.py +205 -0
- maxframe/tensor/datasource/array.py +4 -2
- maxframe/tensor/datasource/scalar.py +1 -1
- maxframe/tensor/reduction/count_nonzero.py +1 -1
- maxframe/tests/test_protocol.py +34 -0
- maxframe/tests/test_utils.py +0 -12
- maxframe/tests/utils.py +2 -2
- maxframe/udf.py +63 -3
- maxframe/utils.py +22 -13
- {maxframe-0.1.0b4.dist-info → maxframe-1.0.0rc1.dist-info}/METADATA +3 -3
- {maxframe-0.1.0b4.dist-info → maxframe-1.0.0rc1.dist-info}/RECORD +80 -61
- maxframe_client/__init__.py +0 -1
- maxframe_client/fetcher.py +65 -3
- maxframe_client/session/odps.py +74 -5
- maxframe_client/session/task.py +65 -71
- maxframe_client/tests/test_session.py +64 -1
- maxframe_client/clients/spe.py +0 -104
- {maxframe-0.1.0b4.dist-info → maxframe-1.0.0rc1.dist-info}/WHEEL +0 -0
- {maxframe-0.1.0b4.dist-info → maxframe-1.0.0rc1.dist-info}/top_level.txt +0 -0
|
@@ -1,40 +1,40 @@
|
|
|
1
|
-
maxframe/__init__.py,sha256=
|
|
2
|
-
maxframe/_utils.cp38-win32.pyd,sha256=
|
|
1
|
+
maxframe/__init__.py,sha256=RujkARDvD6mhFpR330UQ0UfogvIdae5EjR1euFpTiYA,1036
|
|
2
|
+
maxframe/_utils.cp38-win32.pyd,sha256=wS47pLPhVodN5Wp7p_GMKIUb-969QQy-O2UvyGVUdHk,272896
|
|
3
3
|
maxframe/_utils.pxd,sha256=_qHN-lCY1FQgDFIrrqA79Ys0SBdonp9kXRMS93xKSYk,1187
|
|
4
4
|
maxframe/_utils.pyx,sha256=_3p6aJEJ6WZYLcNZ6o4DxoxsxqadTlJXFlgDeFPxqUQ,17564
|
|
5
|
-
maxframe/codegen.py,sha256=
|
|
5
|
+
maxframe/codegen.py,sha256=t56uoJpfbyLvrctodXn-q3VoLzbwPgNSaXUsL4Ig4Ao,18345
|
|
6
6
|
maxframe/conftest.py,sha256=JE9I-5mP4u-vgUqYL22mNY3tqpGofM8VMe8c8VUYkzk,4403
|
|
7
7
|
maxframe/env.py,sha256=xY4wjMWIJ4qLsFAQ5F-X5CrVR7dDSWiryPXni0YSK5c,1435
|
|
8
|
-
maxframe/errors.py,sha256=
|
|
9
|
-
maxframe/extension.py,sha256=
|
|
8
|
+
maxframe/errors.py,sha256=nhQVjRbH5EsyLZhyAufvHpMhfDN6eR8vcrv4sjaI7p8,1000
|
|
9
|
+
maxframe/extension.py,sha256=XKgK2b42i-jfnLc0lBPiBMsGA6HMQ4a12mJc09tMAFc,2752
|
|
10
10
|
maxframe/mixin.py,sha256=QfX0KqVIWDlVDSFs0lwdzLexw7lS7W_IUuK7aY1Ib8c,3624
|
|
11
|
-
maxframe/opcodes.py,sha256=
|
|
12
|
-
maxframe/protocol.py,sha256=
|
|
13
|
-
maxframe/session.py,sha256=
|
|
11
|
+
maxframe/opcodes.py,sha256=4Gj2svgrNNxylfUbQYs8WbDqTpoCoLtlNCtAYdHr-BU,10781
|
|
12
|
+
maxframe/protocol.py,sha256=3SvkrIxd-NoDpUdJnYPUhzIkX5G53krG_DkynO96ivQ,18330
|
|
13
|
+
maxframe/session.py,sha256=CfDT2iwjl5NAisPrZ6LF0xG_hr75Wr0cfHd6rvtHajw,37515
|
|
14
14
|
maxframe/typing_.py,sha256=pAgOhHHSM376N7PJLtNXvS5LHNYywz5dIjnA_hHRWSM,1133
|
|
15
|
-
maxframe/udf.py,sha256=
|
|
16
|
-
maxframe/utils.py,sha256=
|
|
15
|
+
maxframe/udf.py,sha256=GJre7snHQxkoyUWX0rpDkrGGU8-qA-SmSe2H9nSMEfo,4422
|
|
16
|
+
maxframe/utils.py,sha256=ame3LYmU3ByXNk9YLDi5aEru0SpIdMcEb7XCXh08qts,35489
|
|
17
17
|
maxframe/config/__init__.py,sha256=AHo3deaCm1JnbbRX_udboJEDYrYytdvivp9RFxJcumI,671
|
|
18
|
-
maxframe/config/config.py,sha256=
|
|
18
|
+
maxframe/config/config.py,sha256=Z5a2FIBAXD_r9qWv_V6i_ei9zk4h4qOAUsZJxlVtWCM,14181
|
|
19
19
|
maxframe/config/validators.py,sha256=pKnloh2kEOBRSsT8ks-zL8XVSaMMVIEvHvwNJlideeo,1672
|
|
20
20
|
maxframe/config/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
21
21
|
maxframe/config/tests/test_config.py,sha256=FWQZ6KBUG_jY1-KaR-GKXl7khhlTbuLlk3uaEV8koM8,2839
|
|
22
22
|
maxframe/config/tests/test_validators.py,sha256=kz9Yxiqvl_BJq2CT61JTzfpRyrjm6lFrjqIfqeld_yo,1274
|
|
23
|
-
maxframe/core/__init__.py,sha256=
|
|
23
|
+
maxframe/core/__init__.py,sha256=KxXGWHijQZqmI4yIpQO7N6kQ0ok1UiUnae7Jh0jSgBA,1678
|
|
24
24
|
maxframe/core/base.py,sha256=43qZ_sJFgW857qhT1jqgsjdAsBy9tzCeqeX62CPm4vM,4691
|
|
25
25
|
maxframe/core/mode.py,sha256=a-2AjLrIaqemN3pZPFhdfrPYXR7ryCLcsT1KJwWKPb0,3107
|
|
26
|
-
maxframe/core/entity/__init__.py,sha256=
|
|
26
|
+
maxframe/core/entity/__init__.py,sha256=pUaRpxYxgP1pQuAjGEl9DxAJEvz5Tp_Tpzh4dnxmII0,1251
|
|
27
27
|
maxframe/core/entity/chunks.py,sha256=zKk8Iyc3IkakIDW1bMYq_zZNLrR4ZMdXH-mBuOiFerM,2202
|
|
28
28
|
maxframe/core/entity/core.py,sha256=aFwjNMhTJ4ybr1WzmMVSTG211fzutzaATs14QoNh-JM,4170
|
|
29
29
|
maxframe/core/entity/executable.py,sha256=CKxFGvFPfY_8JBprhpyndhTSLgVLtUG4G5n7Dw0dHnw,11275
|
|
30
30
|
maxframe/core/entity/fuse.py,sha256=X1lI0WXj5t0flgGI5-qlVl5LoYkAdLJHk2Vv767C9G4,2350
|
|
31
|
-
maxframe/core/entity/objects.py,sha256
|
|
31
|
+
maxframe/core/entity/objects.py,sha256=-cnPtk7LBIcFk4d7CY6MwDhlkoW42Xv3qdI2CD03puA,1898
|
|
32
32
|
maxframe/core/entity/output_types.py,sha256=NnNeDBVAEhD8dtPBWzpM7n6s8neVFrahjd0zMGWroCc,2735
|
|
33
33
|
maxframe/core/entity/tileables.py,sha256=6jJyFscvb8sH5K_k2VaNGeUm8YrpevCtou3WSUl4Dw8,13973
|
|
34
34
|
maxframe/core/entity/utils.py,sha256=454RYVbTMVW_8KnfDqUPec4kz1p98izVTC2OrzhOkao,966
|
|
35
35
|
maxframe/core/graph/__init__.py,sha256=n1WiszgVu0VdXsk12oiAyggduNwu-1-9YKnfZqvmmXk,838
|
|
36
|
-
maxframe/core/graph/core.cp38-win32.pyd,sha256=
|
|
37
|
-
maxframe/core/graph/core.pyx,sha256=
|
|
36
|
+
maxframe/core/graph/core.cp38-win32.pyd,sha256=GbJqHscJPOSwE7UVJYA8qPWUUJIdMsBFUvPN9ewhFKg,220160
|
|
37
|
+
maxframe/core/graph/core.pyx,sha256=J619C6xfVCF8NQ8oeinhICYSg-w5ecX-dnBI7NB-6n0,16390
|
|
38
38
|
maxframe/core/graph/entity.py,sha256=RT_xbP5niUN5D6gqZ5Pg1vUegHn8bqPk8G8A30quOVA,5730
|
|
39
39
|
maxframe/core/graph/builder/__init__.py,sha256=vTRY5xRPOMHUsK0jAtNIb1BjSPGqi_6lv86AroiiiL4,718
|
|
40
40
|
maxframe/core/graph/builder/base.py,sha256=IzNYD4A2alnYaOvZnipDzC-ZIfNsYR80wLnFcx7bJzc,2635
|
|
@@ -54,12 +54,12 @@ maxframe/core/operator/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH
|
|
|
54
54
|
maxframe/core/operator/tests/test_core.py,sha256=iqZk4AWubFLO24V_VeV6SEy5xrzBFLP9qKK6tKO0SGs,1755
|
|
55
55
|
maxframe/core/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
56
56
|
maxframe/core/tests/test_mode.py,sha256=fyRH-ksa6MogEs6kNhtXhCZyvhYqflgaXJYI3nSo-ps,2507
|
|
57
|
-
maxframe/dataframe/__init__.py,sha256=
|
|
57
|
+
maxframe/dataframe/__init__.py,sha256=6wzq6JcohLtvR9kkE2Pc476ExNGslCFRijKFE_R6PB8,2318
|
|
58
58
|
maxframe/dataframe/arrays.py,sha256=rOvhxMQars9E3SOYSu0ygBuuRVY0QV6xzengnMqKs4s,29616
|
|
59
|
-
maxframe/dataframe/core.py,sha256=
|
|
59
|
+
maxframe/dataframe/core.py,sha256=fOrn9ehPmZnymO-r586jpWW9DTMGt7HWvFMwv-JOrjM,76830
|
|
60
60
|
maxframe/dataframe/initializer.py,sha256=WW96yQjquofNFt6RPZvgWW4SBmH0OEDj8-BxpuyKThY,10552
|
|
61
61
|
maxframe/dataframe/operators.py,sha256=jl611oPN5TGpf6UDuIwcLUsjmTcbVBNLLd6cvq8TvKo,8144
|
|
62
|
-
maxframe/dataframe/utils.py,sha256=
|
|
62
|
+
maxframe/dataframe/utils.py,sha256=nYpTY5TmpJGs2_1VQBNxR_6miPTcdpIbqgw0aqh1Axo,45539
|
|
63
63
|
maxframe/dataframe/arithmetic/__init__.py,sha256=MPnITPuO7DDjAMTBawpennv6D0V9AnT6oF0nz2KUIqc,12837
|
|
64
64
|
maxframe/dataframe/arithmetic/abs.py,sha256=EgyzciSwjE_I3ZBuzeVJFVzBHsxn9MWzCtvHgyEl6ek,1016
|
|
65
65
|
maxframe/dataframe/arithmetic/add.py,sha256=wbmfAZgxjuP02ZUV4-VEsNhJlyo9tytXwkEx65ahuxI,1766
|
|
@@ -119,8 +119,8 @@ maxframe/dataframe/datasource/from_records.py,sha256=ygpKOMXZnDdWzGxMxQ4KdGv-tJF
|
|
|
119
119
|
maxframe/dataframe/datasource/from_tensor.py,sha256=mShHYi0fZcG7ZShFVgIezaphh8tSFqR9-nQMm5YKIhw,15146
|
|
120
120
|
maxframe/dataframe/datasource/index.py,sha256=X_NShW67nYJGxaWp3qOrvyInNkz9L-XHjbApU4fHoes,4518
|
|
121
121
|
maxframe/dataframe/datasource/read_csv.py,sha256=IvQihmpcZIdzSD7ziX92aTAHNyP5WnTgd2cZz_h43sQ,24668
|
|
122
|
-
maxframe/dataframe/datasource/read_odps_query.py,sha256=
|
|
123
|
-
maxframe/dataframe/datasource/read_odps_table.py,sha256=
|
|
122
|
+
maxframe/dataframe/datasource/read_odps_query.py,sha256=6Z8yCSIG96PJFq8B3wk2D29xGedj7y3vV24vGbpoSUA,10269
|
|
123
|
+
maxframe/dataframe/datasource/read_odps_table.py,sha256=d_8jeOMuxyo69l2BYR_kSMI6Ixv25BtqF95YtY9r1Pk,9425
|
|
124
124
|
maxframe/dataframe/datasource/read_parquet.py,sha256=SZPrWoax2mwMBNvRk_3lkS72pZLe-_X_GwQ1JROBMs4,14952
|
|
125
125
|
maxframe/dataframe/datasource/series.py,sha256=elQVupKETh-hUHI2fTu8TRxBE729Vyrmpjx17XlRV-8,1964
|
|
126
126
|
maxframe/dataframe/datasource/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
@@ -128,7 +128,9 @@ maxframe/dataframe/datasource/tests/test_datasource.py,sha256=UumRBjE-bIuCi7Z4_3
|
|
|
128
128
|
maxframe/dataframe/datastore/__init__.py,sha256=MmlHYvFacMReOHDQMXF-z2bCsLyrSHYBVwIlCsZGOK4,810
|
|
129
129
|
maxframe/dataframe/datastore/core.py,sha256=HCqrZN47RP-IC6zDqLX_RErDUAWkcTB58FHNU70V2b4,762
|
|
130
130
|
maxframe/dataframe/datastore/to_csv.py,sha256=sns4bBgNpq7Ihb-goNqaBRdiEtrG-V6jqhNkWGZ1YaE,7974
|
|
131
|
-
maxframe/dataframe/datastore/to_odps.py,sha256=
|
|
131
|
+
maxframe/dataframe/datastore/to_odps.py,sha256=joTDca3-fF27ASoksjnuz6JT4ozn3x8t7nDpAG_OSaw,6596
|
|
132
|
+
maxframe/dataframe/datastore/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
133
|
+
maxframe/dataframe/datastore/tests/test_to_odps.py,sha256=385SCJK_XkddV9dJrRqSOuaXurpGjWd_QwRSeGTOTNU,1344
|
|
132
134
|
maxframe/dataframe/extensions/__init__.py,sha256=x6QCVQIfpa8JP2Vu-nZwHJ1CzATnyPoKCBMqxjXwpO0,1439
|
|
133
135
|
maxframe/dataframe/extensions/accessor.py,sha256=0OA8YPL3rofSvdU0z_1kMLImahrvow_vhxdQDYODki0,1497
|
|
134
136
|
maxframe/dataframe/extensions/reshuffle.py,sha256=yOlJ-3R4v9CoiEKFA1zgCOvbocy00MxpFBbQuTn-uDw,2720
|
|
@@ -150,7 +152,7 @@ maxframe/dataframe/groupby/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym
|
|
|
150
152
|
maxframe/dataframe/groupby/tests/test_groupby.py,sha256=GiFRklxfp9RAD7jwuvNRbhg9mROpKPFxfXGtNhFWFCI,12516
|
|
151
153
|
maxframe/dataframe/indexing/__init__.py,sha256=AkjowbPJu6kM4fJF5baU6g6FA7n2ux5__f4_2budLSs,3297
|
|
152
154
|
maxframe/dataframe/indexing/add_prefix_suffix.py,sha256=YMHFXnVcFsRJfVIOHlTWkOGCqzxWAJam3SXmIRjKGKk,3076
|
|
153
|
-
maxframe/dataframe/indexing/align.py,sha256
|
|
155
|
+
maxframe/dataframe/indexing/align.py,sha256=-kV91o_-pq7rFsv0zgnGZuEyn8HqyUK_Ejv4VWF5fps,12434
|
|
154
156
|
maxframe/dataframe/indexing/at.py,sha256=7Igb4I9_9drZSCZITFRNL3Q-7EI_mtfklUrnNP0apHo,2300
|
|
155
157
|
maxframe/dataframe/indexing/getitem.py,sha256=eS8dnlMEP2zaYvzYZFlBNfwjD89UqT0MRIlNuDcAJQc,7958
|
|
156
158
|
maxframe/dataframe/indexing/iat.py,sha256=gc9V2Ps8fvBFIgJbYTY3ZJmH54rv-dunZzJsY3Lns1s,1164
|
|
@@ -174,11 +176,12 @@ maxframe/dataframe/merge/concat.py,sha256=cIlwVguZTWFx6GX5fTZ3YctKNkn9wP72TpbxKR
|
|
|
174
176
|
maxframe/dataframe/merge/merge.py,sha256=2bqjWlpW_EAbeyYhzQo1nKJ3l7DZJoSuxFmTfHej1X4,22231
|
|
175
177
|
maxframe/dataframe/merge/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
176
178
|
maxframe/dataframe/merge/tests/test_merge.py,sha256=Mkk2f_NnxPqtG_2AyeG_Bt-CdY-JOcNuJ9ADCDA30H4,7480
|
|
177
|
-
maxframe/dataframe/misc/__init__.py,sha256=
|
|
179
|
+
maxframe/dataframe/misc/__init__.py,sha256=Lq82VMR4qWhYD1lYTbj8Wr7ndOh0CNATdOtlOikuZRQ,5401
|
|
178
180
|
maxframe/dataframe/misc/_duplicate.py,sha256=EYNv1_sKm14d91Gm4_Buxo7b5Tuy93MOvaq1TTAUkis,1516
|
|
179
181
|
maxframe/dataframe/misc/accessor.py,sha256=XtbMV6QrYb2m9oAd8swkFoKAq5mxj_QO0LVLVw5uJB4,10303
|
|
180
|
-
maxframe/dataframe/misc/apply.py,sha256=
|
|
182
|
+
maxframe/dataframe/misc/apply.py,sha256=hAuN5P9DrWVfHwXi1MZBQrAe0nRiTDHUc4nJvKC2XMk,24130
|
|
181
183
|
maxframe/dataframe/misc/astype.py,sha256=9CO4BEW98Flqk7HHWScjxRK8EdeTRgQDYcyRwEnyIB0,8033
|
|
184
|
+
maxframe/dataframe/misc/case_when.py,sha256=txasRkyfwn2QCEVZ7W0lrI3_ia0PKwBRFBy6TLrQh1I,4992
|
|
182
185
|
maxframe/dataframe/misc/check_monotonic.py,sha256=LDltdmPq90fZn8A0ucqpNy0uswKo2hJx59Y4EHSN9l4,2506
|
|
183
186
|
maxframe/dataframe/misc/cut.py,sha256=dOKWwd1D2CYU9LVQvfonMrD8E2eGeBONZvWN1ArCfMM,14288
|
|
184
187
|
maxframe/dataframe/misc/datetimes.py,sha256=zR99O-8EKKWt4UtNdPI22K8N9mP9XSs9lDQLBPEmFlo,2582
|
|
@@ -193,8 +196,9 @@ maxframe/dataframe/misc/get_dummies.py,sha256=fkoGya2HUVMlJviEfCy1toedfa_gOro_E0
|
|
|
193
196
|
maxframe/dataframe/misc/isin.py,sha256=mqce_GgIkT390glXJ4jq4JEcRYhpbJNkN6tqP-8x078,7148
|
|
194
197
|
maxframe/dataframe/misc/map.py,sha256=NSsQvOFrRvULVHPOfJk3B_tIh2IRU4IE0oOF2qkL4mE,8385
|
|
195
198
|
maxframe/dataframe/misc/melt.py,sha256=LoqZ45-J8WvXixtFEbEF1UCtZy4-E6loFtVdFghgt0A,5282
|
|
196
|
-
maxframe/dataframe/misc/memory_usage.py,sha256=
|
|
199
|
+
maxframe/dataframe/misc/memory_usage.py,sha256=3d6g2lAW7R4BV_vpUpn2-BFs9cwbEW03UH-6AEhmue0,8137
|
|
197
200
|
maxframe/dataframe/misc/pct_change.py,sha256=V4D2MH7b2EmtCHVKwYxX4wcGsuj1EBruwIXlJ5mAZ_c,4736
|
|
201
|
+
maxframe/dataframe/misc/pivot_table.py,sha256=5HmAdczDMJbznFq2omuBKjjib0WvTrohXGwCtHAMwOY,9782
|
|
198
202
|
maxframe/dataframe/misc/qcut.py,sha256=kcYhSf6m47u5zIEPgG98nE3hv57e6uuCuJs_dxpcszE,3841
|
|
199
203
|
maxframe/dataframe/misc/select_dtypes.py,sha256=qsrWW8BNBd-hAT1yIlrnbvBjfbzZyttzch7bxKgRkCg,3248
|
|
200
204
|
maxframe/dataframe/misc/shift.py,sha256=HCGKBuToksgu5LZR_k5eaQrdyrXCeqRZYbZs0J5-N6s,9191
|
|
@@ -205,7 +209,7 @@ maxframe/dataframe/misc/transform.py,sha256=JotPUQzKGhCLRi53sk7USU9HscNjUKCzzus9
|
|
|
205
209
|
maxframe/dataframe/misc/transpose.py,sha256=SsKRuN9Pj36D6kntnsLfzBsFHjSCiV1cZuPJuKHgbGU,3772
|
|
206
210
|
maxframe/dataframe/misc/value_counts.py,sha256=7Yd3ZSrCRDMRX093IlzdsrTJ5UUx0n_lbD5AmXLUr_U,5674
|
|
207
211
|
maxframe/dataframe/misc/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
208
|
-
maxframe/dataframe/misc/tests/test_misc.py,sha256=
|
|
212
|
+
maxframe/dataframe/misc/tests/test_misc.py,sha256=7P3-dJwsMVhD6ft5HNXorUp-SnO8o9eTTAoFGXzhiNg,16121
|
|
209
213
|
maxframe/dataframe/missing/__init__.py,sha256=DQDpYqjvXN6o6TF76wJIpf1fZICOEJskljzwDNjN80k,1866
|
|
210
214
|
maxframe/dataframe/missing/checkna.py,sha256=_Rd-HRX7lTzMV3myu745tzoTB8WIqDIJu2TcT1SfdB0,7113
|
|
211
215
|
maxframe/dataframe/missing/dropna.py,sha256=fJ7xUmhWnViyPnW6nKTF3u2dktqsuwGimSyO71mh0kk,8518
|
|
@@ -214,14 +218,14 @@ maxframe/dataframe/missing/replace.py,sha256=g9KqENIuuaFW33KIFXTClngWcVu2ttrGa28
|
|
|
214
218
|
maxframe/dataframe/missing/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
215
219
|
maxframe/dataframe/missing/tests/test_missing.py,sha256=zhsgn-yonyXYhlFZtH2OpXtvN0NLxFOZpU_vCumTCqA,3223
|
|
216
220
|
maxframe/dataframe/plotting/__init__.py,sha256=FlSQds0Rdv7CXo_PJFWErMO5KccKrxdLJO58h1IL6uk,1433
|
|
217
|
-
maxframe/dataframe/plotting/core.py,sha256=
|
|
221
|
+
maxframe/dataframe/plotting/core.py,sha256=fgMSAJldKXGjRzj_qfN9QK1kaThqnv8wybJHSu8Y4qg,2311
|
|
218
222
|
maxframe/dataframe/plotting/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
219
223
|
maxframe/dataframe/plotting/tests/test_plotting.py,sha256=AZ4-C_ASyt3mD29ytsYa0Ut6gA2028ugCKfP9aLK448,4254
|
|
220
224
|
maxframe/dataframe/reduction/__init__.py,sha256=ejIK5G6ylU0q37XVs_2DkmsnHTtYbE44ffhExNl5Usk,4297
|
|
221
225
|
maxframe/dataframe/reduction/aggregation.py,sha256=-v_jzKAiLGHOmv3MTDgqovfEYLgeJobU3CqaMWKqkRo,12948
|
|
222
226
|
maxframe/dataframe/reduction/all.py,sha256=enpOWffBNXAEgFSaiZm0KPwU3izMvWd7M8smLwZjaeE,2044
|
|
223
227
|
maxframe/dataframe/reduction/any.py,sha256=PensVOfgCcxu7u7-1OuMcD6gov2c2kN01B57O3eoHw8,2048
|
|
224
|
-
maxframe/dataframe/reduction/core.py,sha256=
|
|
228
|
+
maxframe/dataframe/reduction/core.py,sha256=QrZ4R9Q96wk7oaIzRZ2-KrFZcFbsbamZ8uUuQKAWdio,31232
|
|
225
229
|
maxframe/dataframe/reduction/count.py,sha256=YLx9bFb2IdnBIkTyApRad0x1yub6TmqncP6TzGcOL_Q,1800
|
|
226
230
|
maxframe/dataframe/reduction/cummax.py,sha256=S2iUhfBL2lKwFKhFIYMQxlE26pYroEYKG3cqmG0gIAs,1043
|
|
227
231
|
maxframe/dataframe/reduction/cummin.py,sha256=EWz1CUCQoTwxluvvQPtcNxWdIISr3bBaZPttB104Pdc,1043
|
|
@@ -251,7 +255,7 @@ maxframe/dataframe/sort/sort_values.py,sha256=kPTaKVZzqSkMKTPLXANoK_NKK4IwShqXev
|
|
|
251
255
|
maxframe/dataframe/sort/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
252
256
|
maxframe/dataframe/sort/tests/test_sort.py,sha256=2KwQP4eyAL7rflYrbei9ocU5oum3NjiGurWirR2GzHg,2685
|
|
253
257
|
maxframe/dataframe/statistics/__init__.py,sha256=gC4z9SHj8mG1EECYiMNeGPNF3aie1AOw8UATmiLG-bo,1117
|
|
254
|
-
maxframe/dataframe/statistics/corr.py,sha256=
|
|
258
|
+
maxframe/dataframe/statistics/corr.py,sha256=ufSCKpITCR8HnKc7osxnxDwg8hvptrcKOjIeKsF4eB4,9763
|
|
255
259
|
maxframe/dataframe/statistics/quantile.py,sha256=fISgDO8cMFKn1yjCV07BpowBYsS5HYwvBZkOCdglUJU,12054
|
|
256
260
|
maxframe/dataframe/statistics/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
257
261
|
maxframe/dataframe/statistics/tests/test_statistics.py,sha256=tvk_kTcOuzRLFspidSPVoZrBVtVsbHhGb16LU-Vr3lU,2812
|
|
@@ -276,17 +280,30 @@ maxframe/dataframe/window/tests/test_expanding.py,sha256=PsFYI6YXxNHYlsyaesy9yIA
|
|
|
276
280
|
maxframe/dataframe/window/tests/test_rolling.py,sha256=eJYHh4MhKm_e9h4bCnK_d_aAYlKGQtFAbZTTEILe6gU,1771
|
|
277
281
|
maxframe/learn/__init__.py,sha256=1QzrFCJmdZFy0Nh1Ng3V6yY_NVvoSUdTIqcU-HIa1wk,649
|
|
278
282
|
maxframe/learn/contrib/__init__.py,sha256=2_AumQELt_0MMsSDS7nwk4Fy0TE807lasVuFvGEv1Lc,649
|
|
283
|
+
maxframe/learn/contrib/utils.py,sha256=e4E-QLr7SAhCBTUX246SBpi9DtRNQAE-xOUxvNnFzZY,1714
|
|
279
284
|
maxframe/learn/contrib/pytorch/__init__.py,sha256=a60NZy-COXEFgyC0uXJRBZGi-Vd9HZcqX62bKAMPKaM,703
|
|
280
285
|
maxframe/learn/contrib/pytorch/run_function.py,sha256=aQQhy2Bc6EEe-NVZb17hK4I9_TqIM1uI3fIMihY3TSQ,3354
|
|
281
286
|
maxframe/learn/contrib/pytorch/run_script.py,sha256=FOBXdJ9Q5QOirGGXq8_XwpwrTpDEmWt45-9n4VR_ixI,3213
|
|
282
287
|
maxframe/learn/contrib/pytorch/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
283
288
|
maxframe/learn/contrib/pytorch/tests/test_pytorch.py,sha256=GHP-oD5uMU8LD90Jt2cHbYRDdM5efjzsjpeBkc3t_qE,1444
|
|
289
|
+
maxframe/learn/contrib/xgboost/__init__.py,sha256=vk9xZO_FUwyVCrcLP1dbEz6JCZQBEHsmhGr1uQ45FAI,925
|
|
290
|
+
maxframe/learn/contrib/xgboost/classifier.py,sha256=DWvQ9_GLg-ZeSFQp6NN5-7_BA9NxkpxEv5WtuodU31o,3022
|
|
291
|
+
maxframe/learn/contrib/xgboost/core.py,sha256=RzGTONv1WgDb0ZXUxzDDkbqepvznAPRyjSgD2N4MdPc,5350
|
|
292
|
+
maxframe/learn/contrib/xgboost/dmatrix.py,sha256=8bCcfJGG84s7sKBNcw4urvwPWqX6mMvEN_KyaL52JxM,5006
|
|
293
|
+
maxframe/learn/contrib/xgboost/predict.py,sha256=FOrLkzjoYjxJZdrisy_bXoRBA8itdGuaP3QDV1hzDl0,4802
|
|
294
|
+
maxframe/learn/contrib/xgboost/regressor.py,sha256=osuNG4N1SILgjL-CodYnM9ODwewaVi4-8tHdfWZWJpg,2610
|
|
295
|
+
maxframe/learn/contrib/xgboost/train.py,sha256=yn2_45hDvuAi4VKkFPR11i38o0mrFaNJ668qBnj2wDI,4079
|
|
296
|
+
maxframe/learn/contrib/xgboost/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
297
|
+
maxframe/learn/contrib/xgboost/tests/test_core.py,sha256=qNSXaB1t1vpoCD6RfpnFjJZHS8ShW9O_uz0ucXXlfpE,1449
|
|
298
|
+
maxframe/learn/utils/__init__.py,sha256=w2_QpDZ9J5BcSgbqu8P2RlkVRWC2gLowfgsaDPtz_Pg,661
|
|
299
|
+
maxframe/learn/utils/core.py,sha256=WNDISxPFsWmjkwHwEvjVGCkAOkIftqzEQFPA_KWr7FY,1058
|
|
284
300
|
maxframe/lib/__init__.py,sha256=_PB28W40qku6YiT8fJYqdmEdRMQfelOwGeksCOZJfCc,657
|
|
285
301
|
maxframe/lib/compression.py,sha256=QQpNK79iUC9zck74I0HKMhapSRnLBXtTRyS91taEVIc,1497
|
|
286
302
|
maxframe/lib/functools_compat.py,sha256=2LTrkSw5i-z5E9XCtZzfg9-0vPrYxicKvDjnnNrAL1Q,2697
|
|
287
|
-
maxframe/lib/mmh3.cp38-win32.pyd,sha256=
|
|
303
|
+
maxframe/lib/mmh3.cp38-win32.pyd,sha256=AWEbodc9PvK_RLUxKimSR5litvUjxieJwDmtfTFiYV8,15360
|
|
304
|
+
maxframe/lib/mmh3.pyi,sha256=pkzO6SUUukCty3X-WFsuokWBtIPWyxEa06ypF9liruI,1537
|
|
288
305
|
maxframe/lib/version.py,sha256=VOVZu3KHS53YUsb_vQsT7AyHwcCWAgc-3bBqV5ANcbQ,18941
|
|
289
|
-
maxframe/lib/wrapped_pickle.py,sha256=
|
|
306
|
+
maxframe/lib/wrapped_pickle.py,sha256=Akx-qhMMJJ6VVzQYrcVO_umFjx0IR-Yzb1XqyOS1Mio,3976
|
|
290
307
|
maxframe/lib/aio/__init__.py,sha256=xzIYnV42_7CYuDTTv8svscIXQeJMF0nn8AXMbpv173M,963
|
|
291
308
|
maxframe/lib/aio/_runners.py,sha256=zhDC92KxrYxLEufo5Hk8QU-mTVOxNL7IM9pZXas_nDg,5367
|
|
292
309
|
maxframe/lib/aio/_threads.py,sha256=cDaEKg5STncq9QTPUUwehJ722vgueqBoB1C-NeoHN8E,1363
|
|
@@ -333,13 +350,13 @@ maxframe/lib/tblib/pickling_support.py,sha256=D9A0eX7gJeyqhXWxJJZ1GRwwcc5lj86wBR
|
|
|
333
350
|
maxframe/lib/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
334
351
|
maxframe/lib/tests/test_wrapped_pickle.py,sha256=WV0EJQ1hTSp8xjuosWWtEO7PeiBqdDUYgStxp72_c94,1575
|
|
335
352
|
maxframe/odpsio/__init__.py,sha256=0SesD04XxFli4Gp23ipMkefFQ2ZTB0PItwZoSHpDC-k,820
|
|
336
|
-
maxframe/odpsio/arrow.py,sha256=
|
|
353
|
+
maxframe/odpsio/arrow.py,sha256=pFw7aP7u8maEnXXF63VpMbI2qrOvWl78dYWGqHkXuJA,3884
|
|
337
354
|
maxframe/odpsio/schema.py,sha256=Hba-eCXnBUS6NxHRsshaohzO1eThm4HeVzzvAF7E3Vg,12479
|
|
338
|
-
maxframe/odpsio/tableio.py,sha256=
|
|
355
|
+
maxframe/odpsio/tableio.py,sha256=ugLy15g2JoCD3GHhCRrH9PT9g9hyKfwrC71qXEVqvB0,10470
|
|
339
356
|
maxframe/odpsio/volumeio.py,sha256=IT_OO-RG2rJZOEx8C8xRr0oNR358RSAJQAp6WGxeXzI,3838
|
|
340
357
|
maxframe/odpsio/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
341
358
|
maxframe/odpsio/tests/test_arrow.py,sha256=yeDWFzsm2IMS-k6jimlQ7uim5T6WW1Anuy8didaf4cs,3194
|
|
342
|
-
maxframe/odpsio/tests/test_schema.py,sha256=
|
|
359
|
+
maxframe/odpsio/tests/test_schema.py,sha256=QekMLBWu98IUN6mCloOxEQU0-7RL5OKzV8EE3A17wfU,12255
|
|
343
360
|
maxframe/odpsio/tests/test_tableio.py,sha256=ZyQxBAVA5GG3j_NOPTTFs5vCQqQywhRKC9OAJx9LJxM,4789
|
|
344
361
|
maxframe/odpsio/tests/test_volumeio.py,sha256=xvnrPZueZ76OAWK2zW_tHHI_cDxo7gJXTHiEe0lkmjk,3112
|
|
345
362
|
maxframe/remote/__init__.py,sha256=Yu1ZDLICbehNfd1ur7_2bnIn2VFIsTxH_cILCbHAeZY,747
|
|
@@ -347,24 +364,25 @@ maxframe/remote/core.py,sha256=w_eTDEs0O7iIzLn1YrMGh2gcNAzzbqV0mx2bRT7su_U,7001
|
|
|
347
364
|
maxframe/remote/run_script.py,sha256=k93-vaFLUanWoBRai4-78DX_SLeZ8_rbbxcCtOIXZO8,3677
|
|
348
365
|
maxframe/serialization/__init__.py,sha256=nxxU7CI6MRcL3sjA1KmLkpTGKA3KG30FKl-MJJ0MCdI,947
|
|
349
366
|
maxframe/serialization/arrow.py,sha256=OMeDjLcPgagqzokG7g3Vhwm6Xw1j-Kph1V2QsIwi6dw,3513
|
|
350
|
-
maxframe/serialization/core.cp38-win32.pyd,sha256=
|
|
351
|
-
maxframe/serialization/core.pxd,sha256=
|
|
352
|
-
maxframe/serialization/core.
|
|
353
|
-
maxframe/serialization/
|
|
367
|
+
maxframe/serialization/core.cp38-win32.pyd,sha256=3g8ScC0OM8MD2vVbWQBWs9lwf8hNk_ir-OKzGPOdF5Y,362496
|
|
368
|
+
maxframe/serialization/core.pxd,sha256=KioRiFhr5DTuqXnS2imJ3djWfSv2IAmhnz-kAFPgU6A,1548
|
|
369
|
+
maxframe/serialization/core.pyi,sha256=ELDG44v8O7A7RfURExMfVEJENuaEYHTwgJ-vzlH2Vh4,2206
|
|
370
|
+
maxframe/serialization/core.pyx,sha256=4iyUotIVV8CkVhHo3RyotDP1E7M2C1KMb0_40Ex_h1c,36321
|
|
371
|
+
maxframe/serialization/exception.py,sha256=noFTo9iwQje8Q0XnJV21J6bkbYahyoFLQSdl-OXNRIs,3079
|
|
354
372
|
maxframe/serialization/maxframe_objects.py,sha256=ZHyvxIALoPuB_y3CRc70hZXyfdj4IhaKMXUEYLXHQag,1404
|
|
355
373
|
maxframe/serialization/numpy.py,sha256=ENrFKl24mtYyO1vZRLwHvMD0r4z_UI7J2-yNlmfWSdk,3304
|
|
356
|
-
maxframe/serialization/pandas.py,sha256=
|
|
374
|
+
maxframe/serialization/pandas.py,sha256=wqRcZhUd5tMi__7kmvhW1_-DdhBLnW00kz0hDrUvmEY,7522
|
|
357
375
|
maxframe/serialization/scipy.py,sha256=fGwQ5ZreymrMT8g7TneATfFdKFF7YPNZQqgWgMa3J8M,2498
|
|
358
376
|
maxframe/serialization/serializables/__init__.py,sha256=rlQhIaSAVzz4KYkc5shEHFZDPd6WDMPkxalU76yjJ3M,1406
|
|
359
|
-
maxframe/serialization/serializables/core.py,sha256=
|
|
377
|
+
maxframe/serialization/serializables/core.py,sha256=9XPxeVY33xrT77JVpO5uBc-olKn3bu8mdj58U1L4R0k,14165
|
|
360
378
|
maxframe/serialization/serializables/field.py,sha256=DVott3HAbne4UvN-heSFS9gSl0wCxV5RssS738FCjzk,16639
|
|
361
379
|
maxframe/serialization/serializables/field_type.py,sha256=hkxrXT2SL_tATuobtJDfL4DzzVP2hJjDlC3PrJg6ZKo,15454
|
|
362
380
|
maxframe/serialization/serializables/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
363
381
|
maxframe/serialization/serializables/tests/test_field_type.py,sha256=uG87-bdG8xGmjrubEHCww1ZKmRupSvnNKnZoV2SnwYM,4502
|
|
364
|
-
maxframe/serialization/serializables/tests/test_serializable.py,sha256=
|
|
382
|
+
maxframe/serialization/serializables/tests/test_serializable.py,sha256=w5r-WC-8Zi1xAO1AfxdkjGcbGHZ8G5B-z_-d47Fje-A,10159
|
|
365
383
|
maxframe/serialization/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
366
384
|
maxframe/serialization/tests/test_serial.py,sha256=9G2CbPBHINwcZ038pRwZON_OtH-JVXZ8w66BLYWP578,12923
|
|
367
|
-
maxframe/tensor/__init__.py,sha256=
|
|
385
|
+
maxframe/tensor/__init__.py,sha256=lY_GZBClz2MIGwaMerP2DvbsUbC5crCel_kwkeuiyX4,3702
|
|
368
386
|
maxframe/tensor/array_utils.py,sha256=xr_Ng-4dETJFjsMfWi5gbTPM9mRmPvRWj8QY2WKjmCg,5129
|
|
369
387
|
maxframe/tensor/core.py,sha256=-G-UzY81GTKj2SD9FQLqBg-UDod5LjjrEA-uF16ofms,22638
|
|
370
388
|
maxframe/tensor/operators.py,sha256=8VsSZ8OcImGkSRQvrYlV05KMHGsroAYmW1o9RM2yV1U,3584
|
|
@@ -469,18 +487,20 @@ maxframe/tensor/arithmetic/truediv.py,sha256=xrsN8Z-q6msst9S8-469XQFgrs7T4RTkaym
|
|
|
469
487
|
maxframe/tensor/arithmetic/trunc.py,sha256=3z8jme9ZpPU8TqNo2ioViqJa7ThNK9KOVX1wl-R0a7M,2375
|
|
470
488
|
maxframe/tensor/arithmetic/utils.py,sha256=Kc3xqbIK9uRhHhDKFwAj-mW7SRljajfK9UOMyXyCHCY,2304
|
|
471
489
|
maxframe/tensor/arithmetic/tests/__init__.py,sha256=_PB28W40qku6YiT8fJYqdmEdRMQfelOwGeksCOZJfCc,657
|
|
472
|
-
maxframe/tensor/arithmetic/tests/test_arithmetic.py,sha256=
|
|
473
|
-
maxframe/tensor/base/__init__.py,sha256=
|
|
490
|
+
maxframe/tensor/arithmetic/tests/test_arithmetic.py,sha256=fAkVgixF-WfRZHGujGmB_s5llwiL1DDdvxcAsWPYfEY,11409
|
|
491
|
+
maxframe/tensor/base/__init__.py,sha256=qVf97u2J74RSjCmkF-7N-ylxWUc6mbiPPWpDe45vRmQ,1113
|
|
474
492
|
maxframe/tensor/base/astype.py,sha256=fzj0o3pJMVaSEEKMR-JBsd2FktlSa9ABtpt-fcWKio0,4513
|
|
493
|
+
maxframe/tensor/base/atleast_1d.py,sha256=_d7xamputAAHFY8v0Ayc8ILMdqS6fLZYhWQLOh_LFmc,1992
|
|
475
494
|
maxframe/tensor/base/broadcast_to.py,sha256=V-OB8YSbMfkMP2JpbiIQ0A9PrC-OHfaWzrntf5AOEwo,2775
|
|
476
495
|
maxframe/tensor/base/ravel.py,sha256=P9SCDU-UUHzd1HqZbodBSgKjtjiOFkyfLV_G9LFnz_U,3265
|
|
477
496
|
maxframe/tensor/base/transpose.py,sha256=yMK1KzxguKZOWxT3oMo5GchjB-1Yakilp2rEX3QlxFM,3539
|
|
497
|
+
maxframe/tensor/base/unique.py,sha256=GYLorbwtjCKCTzkbFWk-zaUORU2mQJ2nbXDi2Wr-IP8,6943
|
|
478
498
|
maxframe/tensor/base/where.py,sha256=cSg1mDhiOBB4F0Soh_uVw3yeSve9pfEhPSIDadc-wto,4127
|
|
479
499
|
maxframe/tensor/base/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
480
500
|
maxframe/tensor/base/tests/test_base.py,sha256=i9TneozyHCHDhO438U285KS6tdh0Zks8mgkRm3fsHxk,2957
|
|
481
501
|
maxframe/tensor/datasource/__init__.py,sha256=xtrdcuP6yTc_T19ITPsJTknoqTT-XudlhSlffrScjsY,1178
|
|
482
502
|
maxframe/tensor/datasource/arange.py,sha256=tjNF_huiWTtqtN6YBBtn0tvP9Pnebf6LNXRmAsYqRQk,5632
|
|
483
|
-
maxframe/tensor/datasource/array.py,sha256=
|
|
503
|
+
maxframe/tensor/datasource/array.py,sha256=pC1eeo4C1EkdHklStr6aOCBfRx1SqyeHHwRglKI2W1A,13419
|
|
484
504
|
maxframe/tensor/datasource/core.py,sha256=LzuHtRWCNny1y-IzGylelWZ6rejS31LdT4E7qs_uIQs,3520
|
|
485
505
|
maxframe/tensor/datasource/empty.py,sha256=GpK-DHUfJp9M46wUrGt5lf-YbDDveubwntDjTVYnmMw,6019
|
|
486
506
|
maxframe/tensor/datasource/from_dataframe.py,sha256=iJY2cw2yA6YKnqRLyB0XdvpdemHHzpU7q2SA1sYo6mo,2573
|
|
@@ -488,7 +508,7 @@ maxframe/tensor/datasource/from_dense.py,sha256=txyxNBD0oXr3Ama9me2ay1_ASuDu1QK3
|
|
|
488
508
|
maxframe/tensor/datasource/from_sparse.py,sha256=le-Wfno7Z8XY71TLwEOhO80fkvKXwKXbDgsrOfmDM8s,1593
|
|
489
509
|
maxframe/tensor/datasource/full.py,sha256=-54C2YwqIEP3rPGsY0rnbgMBp15_NqgDJ7lxOJJuXGU,6462
|
|
490
510
|
maxframe/tensor/datasource/ones.py,sha256=0UuYAwMLGfjF-O_90vkwsMqQlAAfJ98TdxbfgC1y6Fk,5182
|
|
491
|
-
maxframe/tensor/datasource/scalar.py,sha256=
|
|
511
|
+
maxframe/tensor/datasource/scalar.py,sha256=g2dsnmOEzV30I0UK3ytMtkiosdfH3NJ6wacZuxBpmbk,1196
|
|
492
512
|
maxframe/tensor/datasource/zeros.py,sha256=DJZK_kraSn820O17GSHLFHV43x1JL3Gt_HdlN0p5o7k,5860
|
|
493
513
|
maxframe/tensor/datasource/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
494
514
|
maxframe/tensor/datasource/tests/test_datasource.py,sha256=C9sOu8rpDNpu3yMhgln4UzkqW5SklL63IJXRwrwOCYc,7931
|
|
@@ -571,7 +591,7 @@ maxframe/tensor/reduction/argmax.py,sha256=UqPBCgnyLFpIjaNPWxcyLGynpOzYnaVj23PQy
|
|
|
571
591
|
maxframe/tensor/reduction/argmin.py,sha256=Gy_O7kEcJosGQImqkR5S7N5ygs-bXnYcpljj3TSe5Ho,3202
|
|
572
592
|
maxframe/tensor/reduction/array_equal.py,sha256=1otUnsacNdSgkdP1hHs3NcAdqtJNyY3F1oOVItrmv70,1859
|
|
573
593
|
maxframe/tensor/reduction/core.py,sha256=NwASayI1P1uCCFCyNltH-cVezefW3Th2qS6viSuSKMQ,5257
|
|
574
|
-
maxframe/tensor/reduction/count_nonzero.py,sha256=
|
|
594
|
+
maxframe/tensor/reduction/count_nonzero.py,sha256=82Q6vm4_2eFcdFsPSUw6PD1eUV_4geKVckvs7GnRsfE,2802
|
|
575
595
|
maxframe/tensor/reduction/cumprod.py,sha256=zitvIvh2Sb4iL7yL2Spenoe7NQndV9LJ4qrejd_ul48,3369
|
|
576
596
|
maxframe/tensor/reduction/cumsum.py,sha256=IUOvbrVEgjDOdd3nsxnDy3Fx0eJC0EfOGt0PIfik_PM,3592
|
|
577
597
|
maxframe/tensor/reduction/max.py,sha256=8B5k9n89orftEYLI_Lwl10O0zbN6vq5SxUpX0W9L7Bo,4099
|
|
@@ -605,26 +625,25 @@ maxframe/tensor/ufunc/__init__.py,sha256=8QUi-cPvvbsD7i7LOeZ9sc0v1XXd7lt-XV5pQKb
|
|
|
605
625
|
maxframe/tensor/ufunc/ufunc.py,sha256=XRtGlhdrW7H--mrc8fTBOlUP0mzKpd9tdRtCuLDymtc,7383
|
|
606
626
|
maxframe/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
607
627
|
maxframe/tests/test_codegen.py,sha256=h3TKqP4zghxTn1twH7gR9jOe6NKXdCC1B4u0chlUrpY,2277
|
|
608
|
-
maxframe/tests/test_protocol.py,sha256=
|
|
609
|
-
maxframe/tests/test_utils.py,sha256=
|
|
610
|
-
maxframe/tests/utils.py,sha256=
|
|
611
|
-
maxframe_client/__init__.py,sha256=
|
|
628
|
+
maxframe/tests/test_protocol.py,sha256=JkvsgGnbVSLu3VsUd_XT_qstcHPnKLzmoDBEXetaWT8,6281
|
|
629
|
+
maxframe/tests/test_utils.py,sha256=5Z2cym1tlpnF73f4I3WC1eBocsbNEDGzDErJL_fKWx8,11868
|
|
630
|
+
maxframe/tests/utils.py,sha256=nZeSDh0jLWo1hKPkuq8Y2uwQhLwjaKok4wcnq9vhyn8,4740
|
|
631
|
+
maxframe_client/__init__.py,sha256=hIVOnxj6AoN2zIMxQCzRb10k0LSoYS_DrQevXO9KPBg,705
|
|
612
632
|
maxframe_client/conftest.py,sha256=UWWMYjmohHL13hLl4adb0gZPLRdBVOYVvsFo6VZruI0,658
|
|
613
|
-
maxframe_client/fetcher.py,sha256=
|
|
633
|
+
maxframe_client/fetcher.py,sha256=yFP6Hgz01-qPqBwmTX5-5ECU-G6q-TX5SUktplcJgcU,9213
|
|
614
634
|
maxframe_client/clients/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
615
635
|
maxframe_client/clients/framedriver.py,sha256=upN6C1eZrCpLTsS6fihWOMy392psWfo0bw2XgSLI_Yg,4581
|
|
616
|
-
maxframe_client/clients/spe.py,sha256=uizNBejhU_FrMhsgsFgDnq7gL7Cxk803LeLYmr3nmxs,3697
|
|
617
636
|
maxframe_client/session/__init__.py,sha256=9zFCd3zkSADESAFc4SPoQ2nkvRwsIhhpNNO2TtSaWbU,854
|
|
618
637
|
maxframe_client/session/consts.py,sha256=nD-D0zHXumbQI8w3aUyltJS59K5ftipf3xCtHNLmtc8,1380
|
|
619
638
|
maxframe_client/session/graph.py,sha256=GSZaJ-PV4DK8bTcNtoSoY5kDTyyIRAKleh4tOCSUbsI,4470
|
|
620
|
-
maxframe_client/session/odps.py,sha256=
|
|
621
|
-
maxframe_client/session/task.py,sha256=
|
|
639
|
+
maxframe_client/session/odps.py,sha256=rOQJokPpA_hczjWsXyvYnl9m9o1DlZLMnoDIsQtmbnc,19885
|
|
640
|
+
maxframe_client/session/task.py,sha256=8_ZN2xbMdkRy2XdgJpEmB35vhGxfL0Qluzd0NVTjPwE,11402
|
|
622
641
|
maxframe_client/session/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
623
642
|
maxframe_client/session/tests/test_task.py,sha256=861usEURVXeTUzfJYZmBfwsHfZFexG23mMtT5IJOOm4,3364
|
|
624
643
|
maxframe_client/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
|
|
625
644
|
maxframe_client/tests/test_fetcher.py,sha256=7iYXLMIoCJLfgUkjB2HBkV-sqQ-xGlhtzfp9hRJz_kM,3605
|
|
626
|
-
maxframe_client/tests/test_session.py,sha256=
|
|
627
|
-
maxframe-0.
|
|
628
|
-
maxframe-0.
|
|
629
|
-
maxframe-0.
|
|
630
|
-
maxframe-0.
|
|
645
|
+
maxframe_client/tests/test_session.py,sha256=ZrZCYVbqtCOJZigGoyGube-EtLYE8SQxTSckbMQmgds,9616
|
|
646
|
+
maxframe-1.0.0rc1.dist-info/METADATA,sha256=lbj0kDpDDcdf43LuG_y2tgyKSs38tbOE0YeufvQWk84,3157
|
|
647
|
+
maxframe-1.0.0rc1.dist-info/WHEEL,sha256=57hb2VMKfzdcZEFKIri3BxIFhvran9ahu4uVnDJqFIU,96
|
|
648
|
+
maxframe-1.0.0rc1.dist-info/top_level.txt,sha256=64x-fc2q59c_vXwNUkehyjF1vb8JWqFSdYmUqIFqoTM,31
|
|
649
|
+
maxframe-1.0.0rc1.dist-info/RECORD,,
|
maxframe_client/__init__.py
CHANGED
maxframe_client/fetcher.py
CHANGED
|
@@ -12,16 +12,21 @@
|
|
|
12
12
|
# See the License for the specific language governing permissions and
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
|
|
15
|
+
import base64
|
|
16
|
+
import json
|
|
15
17
|
from abc import ABC, abstractmethod
|
|
16
18
|
from numbers import Integral
|
|
17
|
-
from typing import Any, Dict, List, Type, Union
|
|
19
|
+
from typing import Any, Dict, List, Optional, Type, Union
|
|
18
20
|
|
|
21
|
+
import pandas as pd
|
|
19
22
|
import pyarrow as pa
|
|
20
23
|
from odps import ODPS
|
|
21
24
|
from odps.models import ExternalVolume, PartedVolume
|
|
25
|
+
from odps.tunnel import TableTunnel
|
|
22
26
|
from tornado import httpclient
|
|
23
27
|
|
|
24
28
|
from maxframe.core import OBJECT_TYPE
|
|
29
|
+
from maxframe.dataframe.core import DATAFRAME_TYPE
|
|
25
30
|
from maxframe.lib import wrapped_pickle as pickle
|
|
26
31
|
from maxframe.odpsio import HaloTableIO, arrow_to_pandas, build_dataframe_table_meta
|
|
27
32
|
from maxframe.protocol import (
|
|
@@ -31,8 +36,9 @@ from maxframe.protocol import (
|
|
|
31
36
|
ResultInfo,
|
|
32
37
|
ResultType,
|
|
33
38
|
)
|
|
39
|
+
from maxframe.tensor.core import TENSOR_TYPE
|
|
34
40
|
from maxframe.typing_ import PandasObjectTypes, TileableType
|
|
35
|
-
from maxframe.utils import ToThreadMixin
|
|
41
|
+
from maxframe.utils import ToThreadMixin, deserialize_serializable
|
|
36
42
|
|
|
37
43
|
_result_fetchers: Dict[ResultType, Type["ResultFetcher"]] = dict()
|
|
38
44
|
|
|
@@ -52,6 +58,14 @@ class ResultFetcher(ABC):
|
|
|
52
58
|
def __init__(self, odps_entry: ODPS):
|
|
53
59
|
self._odps_entry = odps_entry
|
|
54
60
|
|
|
61
|
+
@abstractmethod
|
|
62
|
+
async def update_tileable_meta(
|
|
63
|
+
self,
|
|
64
|
+
tileable: TileableType,
|
|
65
|
+
info: ResultInfo,
|
|
66
|
+
) -> None:
|
|
67
|
+
raise NotImplementedError
|
|
68
|
+
|
|
55
69
|
@abstractmethod
|
|
56
70
|
async def fetch(
|
|
57
71
|
self,
|
|
@@ -66,6 +80,13 @@ class ResultFetcher(ABC):
|
|
|
66
80
|
class NullFetcher(ResultFetcher):
|
|
67
81
|
result_type = ResultType.NULL
|
|
68
82
|
|
|
83
|
+
async def update_tileable_meta(
|
|
84
|
+
self,
|
|
85
|
+
tileable: TileableType,
|
|
86
|
+
info: ResultInfo,
|
|
87
|
+
) -> None:
|
|
88
|
+
return
|
|
89
|
+
|
|
69
90
|
async def fetch(
|
|
70
91
|
self,
|
|
71
92
|
tileable: TileableType,
|
|
@@ -79,6 +100,40 @@ class NullFetcher(ResultFetcher):
|
|
|
79
100
|
class ODPSTableFetcher(ToThreadMixin, ResultFetcher):
|
|
80
101
|
result_type = ResultType.ODPS_TABLE
|
|
81
102
|
|
|
103
|
+
def _get_table_comment(self, table_name: str) -> Optional[str]:
|
|
104
|
+
table = self._odps_entry.get_table(table_name)
|
|
105
|
+
return getattr(table, "comment", None)
|
|
106
|
+
|
|
107
|
+
async def update_tileable_meta(
|
|
108
|
+
self,
|
|
109
|
+
tileable: TileableType,
|
|
110
|
+
info: ODPSTableResultInfo,
|
|
111
|
+
) -> None:
|
|
112
|
+
if isinstance(tileable, DATAFRAME_TYPE) and tileable.dtypes is None:
|
|
113
|
+
tb_comment = await self.to_thread(
|
|
114
|
+
self._get_table_comment, info.full_table_name
|
|
115
|
+
)
|
|
116
|
+
if tb_comment: # pragma: no branch
|
|
117
|
+
comment_data = json.loads(tb_comment)
|
|
118
|
+
|
|
119
|
+
table_meta: DataFrameTableMeta = deserialize_serializable(
|
|
120
|
+
base64.b64decode(comment_data["table_meta"])
|
|
121
|
+
)
|
|
122
|
+
tileable.refresh_from_table_meta(table_meta)
|
|
123
|
+
|
|
124
|
+
if tileable.shape and any(pd.isna(x) for x in tileable.shape):
|
|
125
|
+
part_specs = [None] if not info.partition_specs else info.partition_specs
|
|
126
|
+
tunnel = TableTunnel(self._odps_entry)
|
|
127
|
+
total_records = 0
|
|
128
|
+
for part_spec in part_specs:
|
|
129
|
+
session = tunnel.create_download_session(
|
|
130
|
+
info.full_table_name, part_spec
|
|
131
|
+
)
|
|
132
|
+
total_records += session.count
|
|
133
|
+
new_shape_list = list(tileable.shape)
|
|
134
|
+
new_shape_list[-1] = total_records
|
|
135
|
+
tileable.params = {"shape": tuple(new_shape_list)}
|
|
136
|
+
|
|
82
137
|
def _read_single_source(
|
|
83
138
|
self,
|
|
84
139
|
table_meta: DataFrameTableMeta,
|
|
@@ -149,6 +204,13 @@ class ODPSTableFetcher(ToThreadMixin, ResultFetcher):
|
|
|
149
204
|
class ODPSVolumeFetcher(ToThreadMixin, ResultFetcher):
|
|
150
205
|
result_type = ResultType.ODPS_VOLUME
|
|
151
206
|
|
|
207
|
+
async def update_tileable_meta(
|
|
208
|
+
self,
|
|
209
|
+
tileable: TileableType,
|
|
210
|
+
info: ODPSVolumeResultInfo,
|
|
211
|
+
) -> None:
|
|
212
|
+
return
|
|
213
|
+
|
|
152
214
|
async def _read_parted_volume_data(
|
|
153
215
|
self, volume: PartedVolume, partition: str, file_name: str
|
|
154
216
|
) -> bytes:
|
|
@@ -197,6 +259,6 @@ class ODPSVolumeFetcher(ToThreadMixin, ResultFetcher):
|
|
|
197
259
|
info: ODPSVolumeResultInfo,
|
|
198
260
|
indexes: List[Union[Integral, slice]],
|
|
199
261
|
) -> Any:
|
|
200
|
-
if isinstance(tileable, OBJECT_TYPE):
|
|
262
|
+
if isinstance(tileable, (OBJECT_TYPE, TENSOR_TYPE)):
|
|
201
263
|
return await self._fetch_object(info)
|
|
202
264
|
raise NotImplementedError(f"Fetching {type(tileable)} not implemented")
|
maxframe_client/session/odps.py
CHANGED
|
@@ -31,6 +31,11 @@ from maxframe.dataframe import read_odps_table
|
|
|
31
31
|
from maxframe.dataframe.core import DATAFRAME_TYPE, SERIES_TYPE
|
|
32
32
|
from maxframe.dataframe.datasource import PandasDataSourceOperator
|
|
33
33
|
from maxframe.dataframe.datasource.read_odps_table import DataFrameReadODPSTable
|
|
34
|
+
from maxframe.errors import (
|
|
35
|
+
MaxFrameError,
|
|
36
|
+
NoTaskServerResponseError,
|
|
37
|
+
SessionAlreadyClosedError,
|
|
38
|
+
)
|
|
34
39
|
from maxframe.odpsio import HaloTableIO, pandas_to_arrow, pandas_to_odps_schema
|
|
35
40
|
from maxframe.protocol import (
|
|
36
41
|
DagInfo,
|
|
@@ -84,6 +89,9 @@ class MaxFrameServiceCaller(metaclass=abc.ABCMeta):
|
|
|
84
89
|
def decref(self, tileable_keys: List[str]) -> None:
|
|
85
90
|
raise NotImplementedError
|
|
86
91
|
|
|
92
|
+
def get_logview_address(self, dag_id=None, hours=None) -> Optional[str]:
|
|
93
|
+
return None
|
|
94
|
+
|
|
87
95
|
|
|
88
96
|
class MaxFrameSession(ToThreadMixin, IsolatedAsyncSession):
|
|
89
97
|
_odps_entry: Optional[ODPS]
|
|
@@ -129,6 +137,7 @@ class MaxFrameSession(ToThreadMixin, IsolatedAsyncSession):
|
|
|
129
137
|
async def _init(self, _address: str):
|
|
130
138
|
session_info = await self.ensure_async_call(self._caller.create_session)
|
|
131
139
|
self._session_id = session_info.session_id
|
|
140
|
+
await self._show_logview_address()
|
|
132
141
|
|
|
133
142
|
def _upload_and_get_read_tileable(self, t: TileableType) -> Optional[TileableType]:
|
|
134
143
|
if (
|
|
@@ -140,9 +149,16 @@ class MaxFrameSession(ToThreadMixin, IsolatedAsyncSession):
|
|
|
140
149
|
|
|
141
150
|
schema, table_meta = pandas_to_odps_schema(t, unknown_as_string=True)
|
|
142
151
|
if self._odps_entry.exist_table(table_meta.table_name):
|
|
143
|
-
self._odps_entry.delete_table(
|
|
152
|
+
self._odps_entry.delete_table(
|
|
153
|
+
table_meta.table_name, hints=options.sql.settings
|
|
154
|
+
)
|
|
144
155
|
table_name = build_temp_table_name(self.session_id, t.key)
|
|
145
|
-
table_obj = self._odps_entry.create_table(
|
|
156
|
+
table_obj = self._odps_entry.create_table(
|
|
157
|
+
table_name,
|
|
158
|
+
schema,
|
|
159
|
+
lifecycle=options.session.temp_table_lifecycle,
|
|
160
|
+
hints=options.sql.settings,
|
|
161
|
+
)
|
|
146
162
|
|
|
147
163
|
data = t.op.get_data()
|
|
148
164
|
batch_size = options.session.upload_batch_size
|
|
@@ -239,6 +255,8 @@ class MaxFrameSession(ToThreadMixin, IsolatedAsyncSession):
|
|
|
239
255
|
self._caller.submit_dag, tileable_graph, replaced_infos
|
|
240
256
|
)
|
|
241
257
|
|
|
258
|
+
await self._show_logview_address(dag_info.dag_id)
|
|
259
|
+
|
|
242
260
|
progress = Progress()
|
|
243
261
|
profiling = Profiling()
|
|
244
262
|
aio_task = asyncio.create_task(
|
|
@@ -256,8 +274,10 @@ class MaxFrameSession(ToThreadMixin, IsolatedAsyncSession):
|
|
|
256
274
|
self, dag_info: DagInfo, tileables: List, progress: Progress
|
|
257
275
|
):
|
|
258
276
|
start_time = time.time()
|
|
277
|
+
session_id = dag_info.session_id
|
|
259
278
|
dag_id = dag_info.dag_id
|
|
260
279
|
wait_timeout = 10
|
|
280
|
+
server_no_response_time = None
|
|
261
281
|
with enter_mode(build=True, kernel=True):
|
|
262
282
|
key_to_tileables = {t.key: t for t in tileables}
|
|
263
283
|
|
|
@@ -272,9 +292,37 @@ class MaxFrameSession(ToThreadMixin, IsolatedAsyncSession):
|
|
|
272
292
|
if timeout_val <= 0:
|
|
273
293
|
raise TimeoutError("Running DAG timed out")
|
|
274
294
|
|
|
275
|
-
|
|
276
|
-
self.
|
|
277
|
-
|
|
295
|
+
try:
|
|
296
|
+
dag_info: DagInfo = await self.ensure_async_call(
|
|
297
|
+
self._caller.get_dag_info, dag_id
|
|
298
|
+
)
|
|
299
|
+
server_no_response_time = None
|
|
300
|
+
except (NoTaskServerResponseError, SessionAlreadyClosedError) as ex:
|
|
301
|
+
# when we receive SessionAlreadyClosedError after NoTaskServerResponseError
|
|
302
|
+
# is received, it is possible that task server is restarted and
|
|
303
|
+
# SessionAlreadyClosedError might be flaky. Otherwise, the error
|
|
304
|
+
# should be raised.
|
|
305
|
+
if (
|
|
306
|
+
isinstance(ex, SessionAlreadyClosedError)
|
|
307
|
+
and not server_no_response_time
|
|
308
|
+
):
|
|
309
|
+
raise
|
|
310
|
+
server_no_response_time = server_no_response_time or time.time()
|
|
311
|
+
if (
|
|
312
|
+
time.time() - server_no_response_time
|
|
313
|
+
> options.client.task_restart_timeout
|
|
314
|
+
):
|
|
315
|
+
raise MaxFrameError(
|
|
316
|
+
"Failed to get valid response from service. "
|
|
317
|
+
f"Session {self._session_id}."
|
|
318
|
+
) from None
|
|
319
|
+
await asyncio.sleep(timeout_val)
|
|
320
|
+
continue
|
|
321
|
+
|
|
322
|
+
if dag_info is None:
|
|
323
|
+
raise SystemError(
|
|
324
|
+
f"Cannot find DAG with ID {dag_id} in session {session_id}"
|
|
325
|
+
)
|
|
278
326
|
progress.value = dag_info.progress
|
|
279
327
|
if dag_info.status != DagStatus.RUNNING:
|
|
280
328
|
break
|
|
@@ -294,6 +342,8 @@ class MaxFrameSession(ToThreadMixin, IsolatedAsyncSession):
|
|
|
294
342
|
|
|
295
343
|
for key, result_info in dag_info.tileable_to_result_infos.items():
|
|
296
344
|
t = key_to_tileables[key]
|
|
345
|
+
fetcher = get_fetcher_cls(result_info.result_type)(self._odps_entry)
|
|
346
|
+
await fetcher.update_tileable_meta(t, result_info)
|
|
297
347
|
self._tileable_to_infos[t] = result_info
|
|
298
348
|
|
|
299
349
|
def _get_data_tileable_and_indexes(
|
|
@@ -388,6 +438,25 @@ class MaxFrameSession(ToThreadMixin, IsolatedAsyncSession):
|
|
|
388
438
|
async def get_mutable_tensor(self, name: str):
|
|
389
439
|
raise NotImplementedError
|
|
390
440
|
|
|
441
|
+
async def get_logview_address(self, hours=None) -> Optional[str]:
|
|
442
|
+
return await self.get_dag_logview_address(None, hours)
|
|
443
|
+
|
|
444
|
+
async def get_dag_logview_address(self, dag_id=None, hours=None) -> Optional[str]:
|
|
445
|
+
return await self.ensure_async_call(
|
|
446
|
+
self._caller.get_logview_address, dag_id, hours
|
|
447
|
+
)
|
|
448
|
+
|
|
449
|
+
async def _show_logview_address(self, dag_id=None, hours=None):
|
|
450
|
+
identity = f"Session ID: {self._session_id}"
|
|
451
|
+
if dag_id:
|
|
452
|
+
identity += f", DAG ID: {dag_id}"
|
|
453
|
+
|
|
454
|
+
logview_addr = await self.get_dag_logview_address(dag_id, hours)
|
|
455
|
+
if logview_addr:
|
|
456
|
+
logger.info("%s, Logview: %s", identity, logview_addr)
|
|
457
|
+
else:
|
|
458
|
+
logger.info("%s, Logview address does not exist", identity)
|
|
459
|
+
|
|
391
460
|
|
|
392
461
|
class MaxFrameRestCaller(MaxFrameServiceCaller):
|
|
393
462
|
_client: FrameDriverClient
|