apache-iotdb 2.0.2__py3-none-any.whl → 2.0.4.dev0__py3-none-any.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.
- {apache_iotdb-2.0.2.dist-info → apache_iotdb-2.0.4.dev0.dist-info}/METADATA +6 -6
- {apache_iotdb-2.0.2.dist-info → apache_iotdb-2.0.4.dev0.dist-info}/RECORD +34 -22
- {apache_iotdb-2.0.2.dist-info → apache_iotdb-2.0.4.dev0.dist-info}/WHEEL +1 -1
- iotdb/Session.py +158 -184
- iotdb/SessionPool.py +3 -1
- iotdb/template/MeasurementNode.py +1 -1
- iotdb/template/Template.py +3 -3
- iotdb/thrift/common/ttypes.py +18 -1
- iotdb/thrift/confignode/IConfigNodeRPCService.py +28290 -0
- iotdb/thrift/confignode/__init__.py +1 -0
- iotdb/thrift/confignode/constants.py +14 -0
- iotdb/thrift/confignode/ttypes.py +17249 -0
- iotdb/thrift/datanode/IDataNodeRPCService.py +17960 -0
- iotdb/thrift/datanode/MPPDataExchangeService.py +1071 -0
- iotdb/thrift/datanode/__init__.py +1 -0
- iotdb/thrift/datanode/constants.py +14 -0
- iotdb/thrift/datanode/ttypes.py +10920 -0
- iotdb/tsfile/utils/tsblock_serde.py +266 -0
- iotdb/utils/Field.py +30 -5
- iotdb/utils/NumpyTablet.py +1 -1
- iotdb/utils/SessionDataSet.py +43 -24
- iotdb/utils/Tablet.py +1 -1
- iotdb/utils/{IoTDBConnectionException.py → exception.py} +20 -0
- iotdb/utils/iotdb_rpc_dataset.py +406 -0
- iotdb/utils/rpc_utils.py +110 -0
- tests/integration/tablet_performance_comparison.py +3 -1
- tests/integration/test_new_data_types.py +6 -6
- tests/integration/test_tablemodel_query.py +476 -0
- iotdb/utils/IoTDBRpcDataSet.py +0 -463
- {apache_iotdb-2.0.2.dist-info → apache_iotdb-2.0.4.dev0.dist-info}/entry_points.txt +0 -0
- {apache_iotdb-2.0.2.dist-info → apache_iotdb-2.0.4.dev0.dist-info}/top_level.txt +0 -0
- /iotdb/tsfile/common/constant/{TsFileConstant.py → tsfile_constant.py} +0 -0
- /iotdb/tsfile/utils/{DateUtils.py → date_utils.py} +0 -0
- /iotdb/tsfile/utils/{Pair.py → pair.py} +0 -0
- /iotdb/tsfile/utils/{ReadWriteIOUtils.py → read_write_io_utils.py} +0 -0
iotdb/Session.py
CHANGED
|
@@ -20,15 +20,15 @@ import logging
|
|
|
20
20
|
import random
|
|
21
21
|
import sys
|
|
22
22
|
import struct
|
|
23
|
-
import time
|
|
24
23
|
import warnings
|
|
25
24
|
from thrift.protocol import TBinaryProtocol, TCompactProtocol
|
|
26
25
|
from thrift.transport import TSocket, TTransport
|
|
26
|
+
from tzlocal import get_localzone_name
|
|
27
27
|
|
|
28
28
|
from iotdb.utils.SessionDataSet import SessionDataSet
|
|
29
29
|
from .template.Template import Template
|
|
30
30
|
from .template.TemplateQueryType import TemplateQueryType
|
|
31
|
-
from .thrift.common.ttypes import TEndPoint
|
|
31
|
+
from .thrift.common.ttypes import TEndPoint
|
|
32
32
|
from .thrift.rpc.IClientRPCService import (
|
|
33
33
|
Client,
|
|
34
34
|
TSCreateTimeseriesReq,
|
|
@@ -59,21 +59,19 @@ from .thrift.rpc.ttypes import (
|
|
|
59
59
|
TSLastDataQueryReq,
|
|
60
60
|
TSInsertStringRecordsOfOneDeviceReq,
|
|
61
61
|
)
|
|
62
|
-
from .tsfile.utils.
|
|
63
|
-
from .utils
|
|
62
|
+
from .tsfile.utils.date_utils import parse_date_to_int
|
|
63
|
+
from .utils import rpc_utils
|
|
64
|
+
from .utils.exception import IoTDBConnectionException, RedirectException
|
|
64
65
|
|
|
65
66
|
logger = logging.getLogger("IoTDB")
|
|
66
67
|
warnings.simplefilter("always", DeprecationWarning)
|
|
67
68
|
|
|
68
69
|
|
|
69
70
|
class Session(object):
|
|
70
|
-
SUCCESS_STATUS = 200
|
|
71
|
-
MULTIPLE_ERROR = 302
|
|
72
|
-
REDIRECTION_RECOMMEND = 400
|
|
73
71
|
DEFAULT_FETCH_SIZE = 5000
|
|
74
72
|
DEFAULT_USER = "root"
|
|
75
73
|
DEFAULT_PASSWORD = "root"
|
|
76
|
-
DEFAULT_ZONE_ID =
|
|
74
|
+
DEFAULT_ZONE_ID = get_localzone_name()
|
|
77
75
|
RETRY_NUM = 3
|
|
78
76
|
SQL_DIALECT = "tree"
|
|
79
77
|
|
|
@@ -114,6 +112,7 @@ class Session(object):
|
|
|
114
112
|
self.__use_ssl = use_ssl
|
|
115
113
|
self.__ca_certs = ca_certs
|
|
116
114
|
self.__connection_timeout_in_ms = connection_timeout_in_ms
|
|
115
|
+
self.__time_precision = "ms"
|
|
117
116
|
|
|
118
117
|
@classmethod
|
|
119
118
|
def init_from_node_urls(
|
|
@@ -207,7 +206,12 @@ class Session(object):
|
|
|
207
206
|
|
|
208
207
|
try:
|
|
209
208
|
open_resp = client.openSession(open_req)
|
|
210
|
-
|
|
209
|
+
rpc_utils.verify_success(open_resp.status)
|
|
210
|
+
if open_resp.configuration is not None:
|
|
211
|
+
if "timestamp_precision" in open_resp.configuration:
|
|
212
|
+
self.__time_precision = open_resp.configuration[
|
|
213
|
+
"timestamp_precision"
|
|
214
|
+
]
|
|
211
215
|
|
|
212
216
|
if self.protocol_version != open_resp.serverProtocolVersion:
|
|
213
217
|
logger.exception(
|
|
@@ -288,13 +292,13 @@ class Session(object):
|
|
|
288
292
|
:param group_name: String, database name (starts from root)
|
|
289
293
|
"""
|
|
290
294
|
try:
|
|
291
|
-
return
|
|
295
|
+
return rpc_utils.verify_success(
|
|
292
296
|
self.__client.setStorageGroup(self.__session_id, group_name)
|
|
293
297
|
)
|
|
294
298
|
except TTransport.TException as e:
|
|
295
299
|
if self.reconnect():
|
|
296
300
|
try:
|
|
297
|
-
return
|
|
301
|
+
return rpc_utils.verify_success(
|
|
298
302
|
self.__client.setStorageGroup(self.__session_id, group_name)
|
|
299
303
|
)
|
|
300
304
|
except TTransport.TException as e1:
|
|
@@ -316,13 +320,13 @@ class Session(object):
|
|
|
316
320
|
:param storage_group_lst: List, paths of the target databases.
|
|
317
321
|
"""
|
|
318
322
|
try:
|
|
319
|
-
return
|
|
323
|
+
return rpc_utils.verify_success(
|
|
320
324
|
self.__client.deleteStorageGroups(self.__session_id, storage_group_lst)
|
|
321
325
|
)
|
|
322
326
|
except TTransport.TException as e:
|
|
323
327
|
if self.reconnect():
|
|
324
328
|
try:
|
|
325
|
-
return
|
|
329
|
+
return rpc_utils.verify_success(
|
|
326
330
|
self.__client.deleteStorageGroups(
|
|
327
331
|
self.__session_id, storage_group_lst
|
|
328
332
|
)
|
|
@@ -366,12 +370,12 @@ class Session(object):
|
|
|
366
370
|
alias,
|
|
367
371
|
)
|
|
368
372
|
try:
|
|
369
|
-
return
|
|
373
|
+
return rpc_utils.verify_success(self.__client.createTimeseries(request))
|
|
370
374
|
except TTransport.TException as e:
|
|
371
375
|
if self.reconnect():
|
|
372
376
|
try:
|
|
373
377
|
request.sessionId = self.__session_id
|
|
374
|
-
return
|
|
378
|
+
return rpc_utils.verify_success(
|
|
375
379
|
self.__client.createTimeseries(request)
|
|
376
380
|
)
|
|
377
381
|
except TTransport.TException as e1:
|
|
@@ -400,14 +404,14 @@ class Session(object):
|
|
|
400
404
|
compressor_lst,
|
|
401
405
|
)
|
|
402
406
|
try:
|
|
403
|
-
return
|
|
407
|
+
return rpc_utils.verify_success(
|
|
404
408
|
self.__client.createAlignedTimeseries(request)
|
|
405
409
|
)
|
|
406
410
|
except TTransport.TException as e:
|
|
407
411
|
if self.reconnect():
|
|
408
412
|
try:
|
|
409
413
|
request.sessionId = self.__session_id
|
|
410
|
-
return
|
|
414
|
+
return rpc_utils.verify_success(
|
|
411
415
|
self.__client.createAlignedTimeseries(request)
|
|
412
416
|
)
|
|
413
417
|
except TTransport.TException as e1:
|
|
@@ -450,12 +454,14 @@ class Session(object):
|
|
|
450
454
|
alias_lst,
|
|
451
455
|
)
|
|
452
456
|
try:
|
|
453
|
-
return
|
|
457
|
+
return rpc_utils.verify_success(
|
|
458
|
+
self.__client.createMultiTimeseries(request)
|
|
459
|
+
)
|
|
454
460
|
except TTransport.TException as e:
|
|
455
461
|
if self.reconnect():
|
|
456
462
|
try:
|
|
457
463
|
request.sessionId = self.__session_id
|
|
458
|
-
return
|
|
464
|
+
return rpc_utils.verify_success(
|
|
459
465
|
self.__client.createMultiTimeseries(request)
|
|
460
466
|
)
|
|
461
467
|
except TTransport.TException as e1:
|
|
@@ -469,13 +475,13 @@ class Session(object):
|
|
|
469
475
|
:param paths_list: List of time series path, which should be complete (starts from root)
|
|
470
476
|
"""
|
|
471
477
|
try:
|
|
472
|
-
return
|
|
478
|
+
return rpc_utils.verify_success(
|
|
473
479
|
self.__client.deleteTimeseries(self.__session_id, paths_list)
|
|
474
480
|
)
|
|
475
481
|
except TTransport.TException as e:
|
|
476
482
|
if self.reconnect():
|
|
477
483
|
try:
|
|
478
|
-
return
|
|
484
|
+
return rpc_utils.verify_success(
|
|
479
485
|
self.__client.deleteTimeseries(self.__session_id, paths_list)
|
|
480
486
|
)
|
|
481
487
|
except TTransport.TException as e1:
|
|
@@ -504,12 +510,12 @@ class Session(object):
|
|
|
504
510
|
self.__session_id, paths_list, -9223372036854775808, end_time
|
|
505
511
|
)
|
|
506
512
|
try:
|
|
507
|
-
return
|
|
513
|
+
return rpc_utils.verify_success(self.__client.deleteData(request))
|
|
508
514
|
except TTransport.TException as e:
|
|
509
515
|
if self.reconnect():
|
|
510
516
|
try:
|
|
511
517
|
request.sessionId = self.__session_id
|
|
512
|
-
return
|
|
518
|
+
return rpc_utils.verify_success(self.__client.deleteData(request))
|
|
513
519
|
except TTransport.TException as e1:
|
|
514
520
|
raise IoTDBConnectionException(e1) from None
|
|
515
521
|
else:
|
|
@@ -524,12 +530,12 @@ class Session(object):
|
|
|
524
530
|
"""
|
|
525
531
|
request = TSDeleteDataReq(self.__session_id, paths_list, start_time, end_time)
|
|
526
532
|
try:
|
|
527
|
-
return
|
|
533
|
+
return rpc_utils.verify_success(self.__client.deleteData(request))
|
|
528
534
|
except TTransport.TException as e:
|
|
529
535
|
if self.reconnect():
|
|
530
536
|
try:
|
|
531
537
|
request.sessionId = self.__session_id
|
|
532
|
-
return
|
|
538
|
+
return rpc_utils.verify_success(self.__client.deleteData(request))
|
|
533
539
|
except TTransport.TException as e1:
|
|
534
540
|
raise IoTDBConnectionException(e1) from None
|
|
535
541
|
else:
|
|
@@ -556,7 +562,7 @@ class Session(object):
|
|
|
556
562
|
try:
|
|
557
563
|
connection = self.get_connection(device_id)
|
|
558
564
|
request.sessionId = connection.session_id
|
|
559
|
-
return
|
|
565
|
+
return rpc_utils.verify_success_with_redirection(
|
|
560
566
|
connection.client.insertStringRecord(request)
|
|
561
567
|
)
|
|
562
568
|
except RedirectException as e:
|
|
@@ -565,7 +571,7 @@ class Session(object):
|
|
|
565
571
|
if self.reconnect():
|
|
566
572
|
try:
|
|
567
573
|
request.sessionId = self.__session_id
|
|
568
|
-
return
|
|
574
|
+
return rpc_utils.verify_success(
|
|
569
575
|
self.__client.insertStringRecord(request)
|
|
570
576
|
)
|
|
571
577
|
except TTransport.TException as e1:
|
|
@@ -596,7 +602,7 @@ class Session(object):
|
|
|
596
602
|
try:
|
|
597
603
|
connection = self.get_connection(device_id)
|
|
598
604
|
request.sessionId = connection.session_id
|
|
599
|
-
return
|
|
605
|
+
return rpc_utils.verify_success_with_redirection(
|
|
600
606
|
connection.client.insertStringRecord(request)
|
|
601
607
|
)
|
|
602
608
|
except RedirectException as e:
|
|
@@ -605,7 +611,7 @@ class Session(object):
|
|
|
605
611
|
if self.reconnect():
|
|
606
612
|
try:
|
|
607
613
|
request.sessionId = self.__session_id
|
|
608
|
-
return
|
|
614
|
+
return rpc_utils.verify_success(
|
|
609
615
|
self.__client.insertStringRecord(request)
|
|
610
616
|
)
|
|
611
617
|
except TTransport.TException as e1:
|
|
@@ -645,7 +651,7 @@ class Session(object):
|
|
|
645
651
|
try:
|
|
646
652
|
connection = self.get_connection(device_id)
|
|
647
653
|
request.sessionId = connection.session_id
|
|
648
|
-
return
|
|
654
|
+
return rpc_utils.verify_success_with_redirection(
|
|
649
655
|
connection.client.insertRecord(request)
|
|
650
656
|
)
|
|
651
657
|
except RedirectException as e:
|
|
@@ -654,7 +660,7 @@ class Session(object):
|
|
|
654
660
|
if self.reconnect():
|
|
655
661
|
try:
|
|
656
662
|
request.sessionId = self.__session_id
|
|
657
|
-
return
|
|
663
|
+
return rpc_utils.verify_success(self.__client.insertRecord(request))
|
|
658
664
|
except TTransport.TException as e1:
|
|
659
665
|
raise IoTDBConnectionException(e1) from None
|
|
660
666
|
else:
|
|
@@ -701,7 +707,7 @@ class Session(object):
|
|
|
701
707
|
)
|
|
702
708
|
for client, request in request_group.items():
|
|
703
709
|
try:
|
|
704
|
-
|
|
710
|
+
rpc_utils.verify_success_with_redirection_for_multi_devices(
|
|
705
711
|
client.insertRecords(request), request.prefixPaths
|
|
706
712
|
)
|
|
707
713
|
except RedirectException as e:
|
|
@@ -711,7 +717,9 @@ class Session(object):
|
|
|
711
717
|
if self.reconnect():
|
|
712
718
|
try:
|
|
713
719
|
request.sessionId = self.__session_id
|
|
714
|
-
|
|
720
|
+
rpc_utils.verify_success(
|
|
721
|
+
self.__client.insertRecords(request)
|
|
722
|
+
)
|
|
715
723
|
except TTransport.TException as e1:
|
|
716
724
|
raise IoTDBConnectionException(e1) from None
|
|
717
725
|
else:
|
|
@@ -725,12 +733,12 @@ class Session(object):
|
|
|
725
733
|
device_ids, times, measurements_lst, types_lst, values_lst
|
|
726
734
|
)
|
|
727
735
|
try:
|
|
728
|
-
return
|
|
736
|
+
return rpc_utils.verify_success(self.__client.insertRecords(request))
|
|
729
737
|
except TTransport.TException as e:
|
|
730
738
|
if self.reconnect():
|
|
731
739
|
try:
|
|
732
740
|
request.sessionId = self.__session_id
|
|
733
|
-
return
|
|
741
|
+
return rpc_utils.verify_success(
|
|
734
742
|
self.__client.insertRecords(request)
|
|
735
743
|
)
|
|
736
744
|
except TTransport.TException as e1:
|
|
@@ -774,7 +782,7 @@ class Session(object):
|
|
|
774
782
|
try:
|
|
775
783
|
connection = self.get_connection(device_id)
|
|
776
784
|
request.sessionId = connection.session_id
|
|
777
|
-
return
|
|
785
|
+
return rpc_utils.verify_success_with_redirection(
|
|
778
786
|
connection.client.insertRecord(request)
|
|
779
787
|
)
|
|
780
788
|
except RedirectException as e:
|
|
@@ -783,7 +791,7 @@ class Session(object):
|
|
|
783
791
|
if self.reconnect():
|
|
784
792
|
try:
|
|
785
793
|
request.sessionId = self.__session_id
|
|
786
|
-
return
|
|
794
|
+
return rpc_utils.verify_success(self.__client.insertRecord(request))
|
|
787
795
|
except TTransport.TException as e1:
|
|
788
796
|
raise IoTDBConnectionException(e1) from None
|
|
789
797
|
else:
|
|
@@ -830,7 +838,7 @@ class Session(object):
|
|
|
830
838
|
)
|
|
831
839
|
for client, request in request_group.items():
|
|
832
840
|
try:
|
|
833
|
-
|
|
841
|
+
rpc_utils.verify_success_with_redirection_for_multi_devices(
|
|
834
842
|
client.insertRecords(request), request.prefixPaths
|
|
835
843
|
)
|
|
836
844
|
except RedirectException as e:
|
|
@@ -840,7 +848,9 @@ class Session(object):
|
|
|
840
848
|
if self.reconnect():
|
|
841
849
|
try:
|
|
842
850
|
request.sessionId = self.__session_id
|
|
843
|
-
|
|
851
|
+
rpc_utils.verify_success(
|
|
852
|
+
self.__client.insertRecords(request)
|
|
853
|
+
)
|
|
844
854
|
except TTransport.TException as e1:
|
|
845
855
|
raise IoTDBConnectionException(e1) from None
|
|
846
856
|
else:
|
|
@@ -854,12 +864,12 @@ class Session(object):
|
|
|
854
864
|
device_ids, times, measurements_lst, types_lst, values_lst, True
|
|
855
865
|
)
|
|
856
866
|
try:
|
|
857
|
-
return
|
|
867
|
+
return rpc_utils.verify_success(self.__client.insertRecords(request))
|
|
858
868
|
except TTransport.TException as e:
|
|
859
869
|
if self.reconnect():
|
|
860
870
|
try:
|
|
861
871
|
request.sessionId = self.__session_id
|
|
862
|
-
return
|
|
872
|
+
return rpc_utils.verify_success(
|
|
863
873
|
self.__client.insertRecords(request)
|
|
864
874
|
)
|
|
865
875
|
except TTransport.TException as e1:
|
|
@@ -885,11 +895,11 @@ class Session(object):
|
|
|
885
895
|
device_id, timestamp, measurements, data_types, values
|
|
886
896
|
)
|
|
887
897
|
try:
|
|
888
|
-
return
|
|
898
|
+
return rpc_utils.verify_success(self.__client.testInsertRecord(request))
|
|
889
899
|
except TTransport.TException as e:
|
|
890
900
|
if self.reconnect():
|
|
891
901
|
try:
|
|
892
|
-
return
|
|
902
|
+
return rpc_utils.verify_success(
|
|
893
903
|
self.__client.testInsertRecord(request)
|
|
894
904
|
)
|
|
895
905
|
except TTransport.TException as e1:
|
|
@@ -913,11 +923,11 @@ class Session(object):
|
|
|
913
923
|
device_ids, times, measurements_lst, types_lst, values_lst
|
|
914
924
|
)
|
|
915
925
|
try:
|
|
916
|
-
return
|
|
926
|
+
return rpc_utils.verify_success(self.__client.testInsertRecords(request))
|
|
917
927
|
except TTransport.TException as e:
|
|
918
928
|
if self.reconnect():
|
|
919
929
|
try:
|
|
920
|
-
return
|
|
930
|
+
return rpc_utils.verify_success(
|
|
921
931
|
self.__client.testInsertRecords(request)
|
|
922
932
|
)
|
|
923
933
|
except TTransport.TException as e1:
|
|
@@ -1008,7 +1018,7 @@ class Session(object):
|
|
|
1008
1018
|
try:
|
|
1009
1019
|
connection = self.get_connection(tablet.get_insert_target_name())
|
|
1010
1020
|
request.sessionId = connection.session_id
|
|
1011
|
-
return
|
|
1021
|
+
return rpc_utils.verify_success_with_redirection(
|
|
1012
1022
|
connection.client.insertTablet(request)
|
|
1013
1023
|
)
|
|
1014
1024
|
except RedirectException as e:
|
|
@@ -1019,7 +1029,7 @@ class Session(object):
|
|
|
1019
1029
|
if self.reconnect():
|
|
1020
1030
|
try:
|
|
1021
1031
|
request.sessionId = self.__session_id
|
|
1022
|
-
return
|
|
1032
|
+
return rpc_utils.verify_success(self.__client.insertTablet(request))
|
|
1023
1033
|
except TTransport.TException as e1:
|
|
1024
1034
|
raise IoTDBConnectionException(e1) from None
|
|
1025
1035
|
else:
|
|
@@ -1048,7 +1058,7 @@ class Session(object):
|
|
|
1048
1058
|
request.typesList.append(tablet_lst[i].get_data_types())
|
|
1049
1059
|
for client, request in request_group.items():
|
|
1050
1060
|
try:
|
|
1051
|
-
|
|
1061
|
+
rpc_utils.verify_success_with_redirection_for_multi_devices(
|
|
1052
1062
|
client.insertTablets(request), request.prefixPaths
|
|
1053
1063
|
)
|
|
1054
1064
|
except RedirectException as e:
|
|
@@ -1058,7 +1068,9 @@ class Session(object):
|
|
|
1058
1068
|
if self.reconnect():
|
|
1059
1069
|
try:
|
|
1060
1070
|
request.sessionId = self.__session_id
|
|
1061
|
-
|
|
1071
|
+
rpc_utils.verify_success(
|
|
1072
|
+
self.__client.insertTablets(request)
|
|
1073
|
+
)
|
|
1062
1074
|
except TTransport.TException as e1:
|
|
1063
1075
|
raise IoTDBConnectionException(e1) from None
|
|
1064
1076
|
else:
|
|
@@ -1070,12 +1082,12 @@ class Session(object):
|
|
|
1070
1082
|
else:
|
|
1071
1083
|
request = self.gen_insert_tablets_req(tablet_lst)
|
|
1072
1084
|
try:
|
|
1073
|
-
return
|
|
1085
|
+
return rpc_utils.verify_success(self.__client.insertTablets(request))
|
|
1074
1086
|
except TTransport.TException as e:
|
|
1075
1087
|
if self.reconnect():
|
|
1076
1088
|
try:
|
|
1077
1089
|
request.sessionId = self.__session_id
|
|
1078
|
-
return
|
|
1090
|
+
return rpc_utils.verify_success(
|
|
1079
1091
|
self.__client.insertTablets(request)
|
|
1080
1092
|
)
|
|
1081
1093
|
except TTransport.TException as e1:
|
|
@@ -1101,7 +1113,7 @@ class Session(object):
|
|
|
1101
1113
|
try:
|
|
1102
1114
|
connection = self.get_connection(tablet.get_insert_target_name())
|
|
1103
1115
|
request.sessionId = connection.session_id
|
|
1104
|
-
return
|
|
1116
|
+
return rpc_utils.verify_success_with_redirection(
|
|
1105
1117
|
connection.client.insertTablet(request)
|
|
1106
1118
|
)
|
|
1107
1119
|
except RedirectException as e:
|
|
@@ -1112,7 +1124,7 @@ class Session(object):
|
|
|
1112
1124
|
if self.reconnect():
|
|
1113
1125
|
try:
|
|
1114
1126
|
request.sessionId = self.__session_id
|
|
1115
|
-
return
|
|
1127
|
+
return rpc_utils.verify_success(self.__client.insertTablet(request))
|
|
1116
1128
|
except TTransport.TException as e1:
|
|
1117
1129
|
raise IoTDBConnectionException(e1) from None
|
|
1118
1130
|
else:
|
|
@@ -1141,7 +1153,7 @@ class Session(object):
|
|
|
1141
1153
|
request.typesList.append(tablet_lst[i].get_data_types())
|
|
1142
1154
|
for client, request in request_group.items():
|
|
1143
1155
|
try:
|
|
1144
|
-
|
|
1156
|
+
rpc_utils.verify_success_with_redirection_for_multi_devices(
|
|
1145
1157
|
client.insertTablets(request), request.prefixPaths
|
|
1146
1158
|
)
|
|
1147
1159
|
except RedirectException as e:
|
|
@@ -1151,7 +1163,9 @@ class Session(object):
|
|
|
1151
1163
|
if self.reconnect():
|
|
1152
1164
|
try:
|
|
1153
1165
|
request.sessionId = self.__session_id
|
|
1154
|
-
|
|
1166
|
+
rpc_utils.verify_success(
|
|
1167
|
+
self.__client.insertTablets(request)
|
|
1168
|
+
)
|
|
1155
1169
|
except TTransport.TException as e1:
|
|
1156
1170
|
raise IoTDBConnectionException(e1) from None
|
|
1157
1171
|
else:
|
|
@@ -1163,12 +1177,12 @@ class Session(object):
|
|
|
1163
1177
|
else:
|
|
1164
1178
|
request = self.gen_insert_tablets_req(tablet_lst, True)
|
|
1165
1179
|
try:
|
|
1166
|
-
return
|
|
1180
|
+
return rpc_utils.verify_success(self.__client.insertTablets(request))
|
|
1167
1181
|
except TTransport.TException as e:
|
|
1168
1182
|
if self.reconnect():
|
|
1169
1183
|
try:
|
|
1170
1184
|
request.sessionId = self.__session_id
|
|
1171
|
-
return
|
|
1185
|
+
return rpc_utils.verify_success(
|
|
1172
1186
|
self.__client.insertTablets(request)
|
|
1173
1187
|
)
|
|
1174
1188
|
except TTransport.TException as e1:
|
|
@@ -1191,7 +1205,7 @@ class Session(object):
|
|
|
1191
1205
|
try:
|
|
1192
1206
|
connection = self.get_connection(tablet.get_insert_target_name())
|
|
1193
1207
|
request.sessionId = connection.session_id
|
|
1194
|
-
return
|
|
1208
|
+
return rpc_utils.verify_success_with_redirection(
|
|
1195
1209
|
connection.client.insertTablet(request)
|
|
1196
1210
|
)
|
|
1197
1211
|
except RedirectException as e:
|
|
@@ -1202,7 +1216,7 @@ class Session(object):
|
|
|
1202
1216
|
if self.reconnect():
|
|
1203
1217
|
try:
|
|
1204
1218
|
request.sessionId = self.__session_id
|
|
1205
|
-
return
|
|
1219
|
+
return rpc_utils.verify_success(self.__client.insertTablet(request))
|
|
1206
1220
|
except TTransport.TException as e1:
|
|
1207
1221
|
raise IoTDBConnectionException(e1) from None
|
|
1208
1222
|
else:
|
|
@@ -1261,7 +1275,7 @@ class Session(object):
|
|
|
1261
1275
|
try:
|
|
1262
1276
|
connection = self.get_connection(device_id)
|
|
1263
1277
|
request.sessionId = connection.session_id
|
|
1264
|
-
return
|
|
1278
|
+
return rpc_utils.verify_success_with_redirection(
|
|
1265
1279
|
connection.client.insertRecordsOfOneDevice(request)
|
|
1266
1280
|
)
|
|
1267
1281
|
except RedirectException as e:
|
|
@@ -1270,7 +1284,7 @@ class Session(object):
|
|
|
1270
1284
|
if self.reconnect():
|
|
1271
1285
|
try:
|
|
1272
1286
|
request.sessionId = self.__session_id
|
|
1273
|
-
return
|
|
1287
|
+
return rpc_utils.verify_success(
|
|
1274
1288
|
self.__client.insertRecordsOfOneDevice(request)
|
|
1275
1289
|
)
|
|
1276
1290
|
except TTransport.TException as e1:
|
|
@@ -1333,7 +1347,7 @@ class Session(object):
|
|
|
1333
1347
|
try:
|
|
1334
1348
|
connection = self.get_connection(device_id)
|
|
1335
1349
|
request.sessionId = connection.session_id
|
|
1336
|
-
return
|
|
1350
|
+
return rpc_utils.verify_success_with_redirection(
|
|
1337
1351
|
connection.client.insertRecordsOfOneDevice(request)
|
|
1338
1352
|
)
|
|
1339
1353
|
except RedirectException as e:
|
|
@@ -1342,7 +1356,7 @@ class Session(object):
|
|
|
1342
1356
|
if self.reconnect():
|
|
1343
1357
|
try:
|
|
1344
1358
|
request.sessionId = self.__session_id
|
|
1345
|
-
return
|
|
1359
|
+
return rpc_utils.verify_success(
|
|
1346
1360
|
self.__client.insertRecordsOfOneDevice(request)
|
|
1347
1361
|
)
|
|
1348
1362
|
except TTransport.TException as e1:
|
|
@@ -1387,12 +1401,12 @@ class Session(object):
|
|
|
1387
1401
|
"""
|
|
1388
1402
|
request = self.gen_insert_tablet_req(tablet)
|
|
1389
1403
|
try:
|
|
1390
|
-
return
|
|
1404
|
+
return rpc_utils.verify_success(self.__client.testInsertTablet(request))
|
|
1391
1405
|
except TTransport.TException as e:
|
|
1392
1406
|
if self.reconnect():
|
|
1393
1407
|
try:
|
|
1394
1408
|
request.sessionId = self.__session_id
|
|
1395
|
-
return
|
|
1409
|
+
return rpc_utils.verify_success(
|
|
1396
1410
|
self.__client.testInsertTablet(request)
|
|
1397
1411
|
)
|
|
1398
1412
|
except TTransport.TException as e1:
|
|
@@ -1408,12 +1422,12 @@ class Session(object):
|
|
|
1408
1422
|
"""
|
|
1409
1423
|
request = self.gen_insert_tablets_req(tablet_list)
|
|
1410
1424
|
try:
|
|
1411
|
-
return
|
|
1425
|
+
return rpc_utils.verify_success(self.__client.testInsertTablets(request))
|
|
1412
1426
|
except TTransport.TException as e:
|
|
1413
1427
|
if self.reconnect():
|
|
1414
1428
|
try:
|
|
1415
1429
|
request.sessionId = self.__session_id
|
|
1416
|
-
return
|
|
1430
|
+
return rpc_utils.verify_success(
|
|
1417
1431
|
self.__client.testInsertTablets(request)
|
|
1418
1432
|
)
|
|
1419
1433
|
except TTransport.TException as e1:
|
|
@@ -1483,30 +1497,36 @@ class Session(object):
|
|
|
1483
1497
|
self.__session_id, sql, self.__statement_id, self.__fetch_size, timeout
|
|
1484
1498
|
)
|
|
1485
1499
|
try:
|
|
1486
|
-
resp = self.__client.
|
|
1500
|
+
resp = self.__client.executeQueryStatementV2(request)
|
|
1487
1501
|
except TTransport.TException as e:
|
|
1488
1502
|
if self.reconnect():
|
|
1489
1503
|
try:
|
|
1490
1504
|
request.sessionId = self.__session_id
|
|
1491
1505
|
request.statementId = self.__statement_id
|
|
1492
|
-
resp = self.__client.
|
|
1506
|
+
resp = self.__client.executeQueryStatementV2(request)
|
|
1493
1507
|
except TTransport.TException as e1:
|
|
1494
1508
|
raise IoTDBConnectionException(e1) from None
|
|
1495
1509
|
else:
|
|
1496
1510
|
raise IoTDBConnectionException(self.connection_error_msg()) from None
|
|
1497
1511
|
|
|
1498
|
-
|
|
1512
|
+
rpc_utils.verify_success(resp.status)
|
|
1499
1513
|
return SessionDataSet(
|
|
1500
1514
|
sql,
|
|
1501
1515
|
resp.columns,
|
|
1502
1516
|
resp.dataTypeList,
|
|
1503
1517
|
resp.columnNameIndexMap,
|
|
1504
1518
|
resp.queryId,
|
|
1519
|
+
self.__session_id,
|
|
1505
1520
|
self.__client,
|
|
1506
1521
|
self.__statement_id,
|
|
1507
|
-
|
|
1508
|
-
resp.queryDataSet,
|
|
1522
|
+
resp.queryResult,
|
|
1509
1523
|
resp.ignoreTimeStamp,
|
|
1524
|
+
timeout,
|
|
1525
|
+
resp.moreData,
|
|
1526
|
+
self.__fetch_size,
|
|
1527
|
+
self.__zone_id,
|
|
1528
|
+
self.__time_precision,
|
|
1529
|
+
resp.columnIndex2TsBlockColumnIndexList,
|
|
1510
1530
|
)
|
|
1511
1531
|
|
|
1512
1532
|
def execute_non_query_statement(self, sql):
|
|
@@ -1516,13 +1536,13 @@ class Session(object):
|
|
|
1516
1536
|
"""
|
|
1517
1537
|
request = TSExecuteStatementReq(self.__session_id, sql, self.__statement_id)
|
|
1518
1538
|
try:
|
|
1519
|
-
resp = self.__client.
|
|
1539
|
+
resp = self.__client.executeUpdateStatementV2(request)
|
|
1520
1540
|
except TTransport.TException as e:
|
|
1521
1541
|
if self.reconnect():
|
|
1522
1542
|
try:
|
|
1523
1543
|
request.sessionId = self.__session_id
|
|
1524
1544
|
request.statementId = self.__statement_id
|
|
1525
|
-
resp = self.__client.
|
|
1545
|
+
resp = self.__client.executeUpdateStatementV2(request)
|
|
1526
1546
|
except TTransport.TException as e1:
|
|
1527
1547
|
raise IoTDBConnectionException(e1) from None
|
|
1528
1548
|
else:
|
|
@@ -1540,26 +1560,26 @@ class Session(object):
|
|
|
1540
1560
|
connection.change_database(sql)
|
|
1541
1561
|
except Exception as e:
|
|
1542
1562
|
self.__endpoint_to_connection.pop(endpoint)
|
|
1543
|
-
return
|
|
1563
|
+
return rpc_utils.verify_success(resp.status)
|
|
1544
1564
|
|
|
1545
1565
|
def execute_statement(self, sql: str, timeout=0):
|
|
1546
1566
|
request = TSExecuteStatementReq(
|
|
1547
1567
|
self.__session_id, sql, self.__statement_id, timeout
|
|
1548
1568
|
)
|
|
1549
1569
|
try:
|
|
1550
|
-
resp = self.__client.
|
|
1570
|
+
resp = self.__client.executeStatementV2(request)
|
|
1551
1571
|
except TTransport.TException as e:
|
|
1552
1572
|
if self.reconnect():
|
|
1553
1573
|
try:
|
|
1554
1574
|
request.sessionId = self.__session_id
|
|
1555
1575
|
request.statementId = self.__statement_id
|
|
1556
|
-
resp = self.__client.
|
|
1576
|
+
resp = self.__client.executeStatementV2(request)
|
|
1557
1577
|
except TTransport.TException as e1:
|
|
1558
1578
|
raise IoTDBConnectionException(e1) from None
|
|
1559
1579
|
else:
|
|
1560
1580
|
raise IoTDBConnectionException(self.connection_error_msg()) from None
|
|
1561
1581
|
|
|
1562
|
-
|
|
1582
|
+
rpc_utils.verify_success(resp.status)
|
|
1563
1583
|
if resp.columns:
|
|
1564
1584
|
return SessionDataSet(
|
|
1565
1585
|
sql,
|
|
@@ -1567,11 +1587,17 @@ class Session(object):
|
|
|
1567
1587
|
resp.dataTypeList,
|
|
1568
1588
|
resp.columnNameIndexMap,
|
|
1569
1589
|
resp.queryId,
|
|
1590
|
+
self.__session_id,
|
|
1570
1591
|
self.__client,
|
|
1571
1592
|
self.__statement_id,
|
|
1572
|
-
|
|
1573
|
-
resp.queryDataSet,
|
|
1593
|
+
resp.queryResult,
|
|
1574
1594
|
resp.ignoreTimeStamp,
|
|
1595
|
+
timeout,
|
|
1596
|
+
resp.moreData,
|
|
1597
|
+
self.__fetch_size,
|
|
1598
|
+
self.__zone_id,
|
|
1599
|
+
self.__time_precision,
|
|
1600
|
+
resp.columnIndex2TsBlockColumnIndexList,
|
|
1575
1601
|
)
|
|
1576
1602
|
else:
|
|
1577
1603
|
return None
|
|
@@ -1686,61 +1712,6 @@ class Session(object):
|
|
|
1686
1712
|
return False
|
|
1687
1713
|
return True
|
|
1688
1714
|
|
|
1689
|
-
@staticmethod
|
|
1690
|
-
def verify_success(status: TSStatus):
|
|
1691
|
-
"""
|
|
1692
|
-
verify success of operation
|
|
1693
|
-
:param status: execution result status
|
|
1694
|
-
"""
|
|
1695
|
-
if status.code == Session.MULTIPLE_ERROR:
|
|
1696
|
-
Session.verify_success_by_list(status.subStatus)
|
|
1697
|
-
return 0
|
|
1698
|
-
if (
|
|
1699
|
-
status.code == Session.SUCCESS_STATUS
|
|
1700
|
-
or status.code == Session.REDIRECTION_RECOMMEND
|
|
1701
|
-
):
|
|
1702
|
-
return 0
|
|
1703
|
-
|
|
1704
|
-
raise RuntimeError(f"{status.code}: {status.message}")
|
|
1705
|
-
|
|
1706
|
-
@staticmethod
|
|
1707
|
-
def verify_success_by_list(status_list: list):
|
|
1708
|
-
"""
|
|
1709
|
-
verify success of operation
|
|
1710
|
-
:param status_list: execution result status
|
|
1711
|
-
"""
|
|
1712
|
-
error_messages = [
|
|
1713
|
-
status.message
|
|
1714
|
-
for status in status_list
|
|
1715
|
-
if status.code
|
|
1716
|
-
not in {Session.SUCCESS_STATUS, Session.REDIRECTION_RECOMMEND}
|
|
1717
|
-
]
|
|
1718
|
-
if error_messages:
|
|
1719
|
-
message = f"{Session.MULTIPLE_ERROR}: {'; '.join(error_messages)}"
|
|
1720
|
-
raise RuntimeError(message)
|
|
1721
|
-
|
|
1722
|
-
@staticmethod
|
|
1723
|
-
def verify_success_with_redirection(status: TSStatus):
|
|
1724
|
-
Session.verify_success(status)
|
|
1725
|
-
if status.redirectNode is not None:
|
|
1726
|
-
raise RedirectException(status.redirectNode)
|
|
1727
|
-
return 0
|
|
1728
|
-
|
|
1729
|
-
@staticmethod
|
|
1730
|
-
def verify_success_with_redirection_for_multi_devices(
|
|
1731
|
-
status: TSStatus, devices: list
|
|
1732
|
-
):
|
|
1733
|
-
Session.verify_success(status)
|
|
1734
|
-
if (
|
|
1735
|
-
status.code == Session.MULTIPLE_ERROR
|
|
1736
|
-
or status.code == Session.REDIRECTION_RECOMMEND
|
|
1737
|
-
):
|
|
1738
|
-
device_to_endpoint = {}
|
|
1739
|
-
for i in range(len(status.subStatus)):
|
|
1740
|
-
if status.subStatus[i].redirectNode is not None:
|
|
1741
|
-
device_to_endpoint[devices[i]] = status.subStatus[i].redirectNode
|
|
1742
|
-
raise RedirectException(device_to_endpoint)
|
|
1743
|
-
|
|
1744
1715
|
def execute_raw_data_query(
|
|
1745
1716
|
self, paths: list, start_time: int, end_time: int
|
|
1746
1717
|
) -> SessionDataSet:
|
|
@@ -1761,29 +1732,35 @@ class Session(object):
|
|
|
1761
1732
|
enableRedirectQuery=False,
|
|
1762
1733
|
)
|
|
1763
1734
|
try:
|
|
1764
|
-
resp = self.__client.
|
|
1735
|
+
resp = self.__client.executeRawDataQueryV2(request)
|
|
1765
1736
|
except TTransport.TException as e:
|
|
1766
1737
|
if self.reconnect():
|
|
1767
1738
|
try:
|
|
1768
1739
|
request.sessionId = self.__session_id
|
|
1769
1740
|
request.statementId = self.__statement_id
|
|
1770
|
-
resp = self.__client.
|
|
1741
|
+
resp = self.__client.executeRawDataQueryV2(request)
|
|
1771
1742
|
except TTransport.TException as e1:
|
|
1772
1743
|
raise IoTDBConnectionException(e1) from None
|
|
1773
1744
|
else:
|
|
1774
1745
|
raise IoTDBConnectionException(self.connection_error_msg()) from None
|
|
1775
|
-
|
|
1746
|
+
rpc_utils.verify_success(resp.status)
|
|
1776
1747
|
return SessionDataSet(
|
|
1777
1748
|
"",
|
|
1778
1749
|
resp.columns,
|
|
1779
1750
|
resp.dataTypeList,
|
|
1780
1751
|
resp.columnNameIndexMap,
|
|
1781
1752
|
resp.queryId,
|
|
1753
|
+
self.__session_id,
|
|
1782
1754
|
self.__client,
|
|
1783
1755
|
self.__statement_id,
|
|
1784
|
-
|
|
1785
|
-
resp.queryDataSet,
|
|
1756
|
+
resp.queryResult,
|
|
1786
1757
|
resp.ignoreTimeStamp,
|
|
1758
|
+
0,
|
|
1759
|
+
resp.moreData,
|
|
1760
|
+
self.__fetch_size,
|
|
1761
|
+
self.__zone_id,
|
|
1762
|
+
self.__time_precision,
|
|
1763
|
+
resp.columnIndex2TsBlockColumnIndexList,
|
|
1787
1764
|
)
|
|
1788
1765
|
|
|
1789
1766
|
def execute_last_data_query(self, paths: list, last_time: int) -> SessionDataSet:
|
|
@@ -1802,29 +1779,35 @@ class Session(object):
|
|
|
1802
1779
|
enableRedirectQuery=False,
|
|
1803
1780
|
)
|
|
1804
1781
|
try:
|
|
1805
|
-
resp = self.__client.
|
|
1782
|
+
resp = self.__client.executeLastDataQueryV2(request)
|
|
1806
1783
|
except TTransport.TException as e:
|
|
1807
1784
|
if self.reconnect():
|
|
1808
1785
|
try:
|
|
1809
1786
|
request.sessionId = self.__session_id
|
|
1810
1787
|
request.statementId = self.__statement_id
|
|
1811
|
-
resp = self.__client.
|
|
1788
|
+
resp = self.__client.executeLastDataQueryV2(request)
|
|
1812
1789
|
except TTransport.TException as e1:
|
|
1813
1790
|
raise IoTDBConnectionException(e1) from None
|
|
1814
1791
|
else:
|
|
1815
1792
|
raise IoTDBConnectionException(self.connection_error_msg()) from None
|
|
1816
|
-
|
|
1793
|
+
rpc_utils.verify_success(resp.status)
|
|
1817
1794
|
return SessionDataSet(
|
|
1818
1795
|
"",
|
|
1819
1796
|
resp.columns,
|
|
1820
1797
|
resp.dataTypeList,
|
|
1821
1798
|
resp.columnNameIndexMap,
|
|
1822
1799
|
resp.queryId,
|
|
1823
|
-
self.__client,
|
|
1824
1800
|
self.__statement_id,
|
|
1801
|
+
self.__client,
|
|
1825
1802
|
self.__session_id,
|
|
1826
|
-
resp.
|
|
1803
|
+
resp.queryResult,
|
|
1827
1804
|
resp.ignoreTimeStamp,
|
|
1805
|
+
0,
|
|
1806
|
+
resp.moreData,
|
|
1807
|
+
self.__fetch_size,
|
|
1808
|
+
self.__zone_id,
|
|
1809
|
+
self.__time_precision,
|
|
1810
|
+
resp.columnIndex2TsBlockColumnIndexList,
|
|
1828
1811
|
)
|
|
1829
1812
|
|
|
1830
1813
|
def insert_string_records_of_one_device(
|
|
@@ -1855,7 +1838,7 @@ class Session(object):
|
|
|
1855
1838
|
try:
|
|
1856
1839
|
connection = self.get_connection(device_id)
|
|
1857
1840
|
request.sessionId = connection.session_id
|
|
1858
|
-
return
|
|
1841
|
+
return rpc_utils.verify_success_with_redirection(
|
|
1859
1842
|
connection.client.insertStringRecordsOfOneDevice(request)
|
|
1860
1843
|
)
|
|
1861
1844
|
except RedirectException as e:
|
|
@@ -1864,7 +1847,7 @@ class Session(object):
|
|
|
1864
1847
|
if self.reconnect():
|
|
1865
1848
|
try:
|
|
1866
1849
|
request.sessionId = self.__session_id
|
|
1867
|
-
return
|
|
1850
|
+
return rpc_utils.verify_success(
|
|
1868
1851
|
self.__client.insertStringRecordsOfOneDevice(request)
|
|
1869
1852
|
)
|
|
1870
1853
|
except TTransport.TException as e1:
|
|
@@ -1890,7 +1873,7 @@ class Session(object):
|
|
|
1890
1873
|
try:
|
|
1891
1874
|
connection = self.get_connection(device_id)
|
|
1892
1875
|
request.sessionId = connection.session_id
|
|
1893
|
-
return
|
|
1876
|
+
return rpc_utils.verify_success_with_redirection(
|
|
1894
1877
|
connection.client.insertStringRecordsOfOneDevice(request)
|
|
1895
1878
|
)
|
|
1896
1879
|
except RedirectException as e:
|
|
@@ -1899,7 +1882,7 @@ class Session(object):
|
|
|
1899
1882
|
if self.reconnect():
|
|
1900
1883
|
try:
|
|
1901
1884
|
request.sessionId = self.__session_id
|
|
1902
|
-
return
|
|
1885
|
+
return rpc_utils.verify_success(
|
|
1903
1886
|
self.__client.insertStringRecordsOfOneDevice(request)
|
|
1904
1887
|
)
|
|
1905
1888
|
except TTransport.TException as e1:
|
|
@@ -2076,12 +2059,12 @@ class Session(object):
|
|
|
2076
2059
|
self.__session_id, template.get_name(), bytes_array
|
|
2077
2060
|
)
|
|
2078
2061
|
try:
|
|
2079
|
-
return
|
|
2062
|
+
return rpc_utils.verify_success(self.__client.createSchemaTemplate(request))
|
|
2080
2063
|
except TTransport.TException as e:
|
|
2081
2064
|
if self.reconnect():
|
|
2082
2065
|
try:
|
|
2083
2066
|
request.sessionId = self.__session_id
|
|
2084
|
-
return
|
|
2067
|
+
return rpc_utils.verify_success(
|
|
2085
2068
|
self.__client.createSchemaTemplate(request)
|
|
2086
2069
|
)
|
|
2087
2070
|
except TTransport.TException as e1:
|
|
@@ -2101,12 +2084,12 @@ class Session(object):
|
|
|
2101
2084
|
"""
|
|
2102
2085
|
request = TSDropSchemaTemplateReq(self.__session_id, template_name)
|
|
2103
2086
|
try:
|
|
2104
|
-
return
|
|
2087
|
+
return rpc_utils.verify_success(self.__client.dropSchemaTemplate(request))
|
|
2105
2088
|
except TTransport.TException as e:
|
|
2106
2089
|
if self.reconnect():
|
|
2107
2090
|
try:
|
|
2108
2091
|
request.sessionId = self.__session_id
|
|
2109
|
-
return
|
|
2092
|
+
return rpc_utils.verify_success(
|
|
2110
2093
|
self.__client.dropSchemaTemplate(request)
|
|
2111
2094
|
)
|
|
2112
2095
|
except TTransport.TException as e1:
|
|
@@ -2148,12 +2131,12 @@ class Session(object):
|
|
|
2148
2131
|
compressors,
|
|
2149
2132
|
)
|
|
2150
2133
|
try:
|
|
2151
|
-
return
|
|
2134
|
+
return rpc_utils.verify_success(self.__client.appendSchemaTemplate(request))
|
|
2152
2135
|
except TTransport.TException as e:
|
|
2153
2136
|
if self.reconnect():
|
|
2154
2137
|
try:
|
|
2155
2138
|
request.sessionId = self.__session_id
|
|
2156
|
-
return
|
|
2139
|
+
return rpc_utils.verify_success(
|
|
2157
2140
|
self.__client.appendSchemaTemplate(request)
|
|
2158
2141
|
)
|
|
2159
2142
|
except TTransport.TException as e1:
|
|
@@ -2174,12 +2157,12 @@ class Session(object):
|
|
|
2174
2157
|
"""
|
|
2175
2158
|
request = TSPruneSchemaTemplateReq(self.__session_id, template_name, path)
|
|
2176
2159
|
try:
|
|
2177
|
-
return
|
|
2160
|
+
return rpc_utils.verify_success(self.__client.pruneSchemaTemplate(request))
|
|
2178
2161
|
except TTransport.TException as e:
|
|
2179
2162
|
if self.reconnect():
|
|
2180
2163
|
try:
|
|
2181
2164
|
request.sessionId = self.__session_id
|
|
2182
|
-
return
|
|
2165
|
+
return rpc_utils.verify_success(
|
|
2183
2166
|
self.__client.pruneSchemaTemplate(request)
|
|
2184
2167
|
)
|
|
2185
2168
|
except TTransport.TException as e1:
|
|
@@ -2200,12 +2183,12 @@ class Session(object):
|
|
|
2200
2183
|
"""
|
|
2201
2184
|
request = TSSetSchemaTemplateReq(self.__session_id, template_name, prefix_path)
|
|
2202
2185
|
try:
|
|
2203
|
-
return
|
|
2186
|
+
return rpc_utils.verify_success(self.__client.setSchemaTemplate(request))
|
|
2204
2187
|
except TTransport.TException as e:
|
|
2205
2188
|
if self.reconnect():
|
|
2206
2189
|
try:
|
|
2207
2190
|
request.sessionId = self.__session_id
|
|
2208
|
-
return
|
|
2191
|
+
return rpc_utils.verify_success(
|
|
2209
2192
|
self.__client.setSchemaTemplate(request)
|
|
2210
2193
|
)
|
|
2211
2194
|
except TTransport.TException as e1:
|
|
@@ -2229,12 +2212,12 @@ class Session(object):
|
|
|
2229
2212
|
self.__session_id, prefix_path, template_name
|
|
2230
2213
|
)
|
|
2231
2214
|
try:
|
|
2232
|
-
return
|
|
2215
|
+
return rpc_utils.verify_success(self.__client.unsetSchemaTemplate(request))
|
|
2233
2216
|
except TTransport.TException as e:
|
|
2234
2217
|
if self.reconnect():
|
|
2235
2218
|
try:
|
|
2236
2219
|
request.sessionId = self.__session_id
|
|
2237
|
-
return
|
|
2220
|
+
return rpc_utils.verify_success(
|
|
2238
2221
|
self.__client.unsetSchemaTemplate(request)
|
|
2239
2222
|
)
|
|
2240
2223
|
except TTransport.TException as e1:
|
|
@@ -2265,7 +2248,7 @@ class Session(object):
|
|
|
2265
2248
|
try:
|
|
2266
2249
|
request.sessionId = self.__session_id
|
|
2267
2250
|
response = self.__client.querySchemaTemplate(request)
|
|
2268
|
-
|
|
2251
|
+
rpc_utils.verify_success(response.status)
|
|
2269
2252
|
return response.count
|
|
2270
2253
|
except TTransport.TException as e1:
|
|
2271
2254
|
raise IoTDBConnectionException(e1) from None
|
|
@@ -2291,14 +2274,14 @@ class Session(object):
|
|
|
2291
2274
|
)
|
|
2292
2275
|
try:
|
|
2293
2276
|
response = self.__client.querySchemaTemplate(request)
|
|
2294
|
-
|
|
2277
|
+
rpc_utils.verify_success(response.status)
|
|
2295
2278
|
return response.result
|
|
2296
2279
|
except TTransport.TException as e:
|
|
2297
2280
|
if self.reconnect():
|
|
2298
2281
|
try:
|
|
2299
2282
|
request.sessionId = self.__session_id
|
|
2300
2283
|
response = self.__client.querySchemaTemplate(request)
|
|
2301
|
-
|
|
2284
|
+
rpc_utils.verify_success(response.status)
|
|
2302
2285
|
return response.result
|
|
2303
2286
|
except TTransport.TException as e1:
|
|
2304
2287
|
raise IoTDBConnectionException(e1) from None
|
|
@@ -2321,14 +2304,14 @@ class Session(object):
|
|
|
2321
2304
|
)
|
|
2322
2305
|
try:
|
|
2323
2306
|
response = self.__client.querySchemaTemplate(request)
|
|
2324
|
-
|
|
2307
|
+
rpc_utils.verify_success(response.status)
|
|
2325
2308
|
return response.result
|
|
2326
2309
|
except TTransport.TException as e:
|
|
2327
2310
|
if self.reconnect():
|
|
2328
2311
|
try:
|
|
2329
2312
|
request.sessionId = self.__session_id
|
|
2330
2313
|
response = self.__client.querySchemaTemplate(request)
|
|
2331
|
-
|
|
2314
|
+
rpc_utils.verify_success(response.status)
|
|
2332
2315
|
return response.result
|
|
2333
2316
|
except TTransport.TException as e1:
|
|
2334
2317
|
raise IoTDBConnectionException(e1) from None
|
|
@@ -2354,14 +2337,14 @@ class Session(object):
|
|
|
2354
2337
|
)
|
|
2355
2338
|
try:
|
|
2356
2339
|
response = self.__client.querySchemaTemplate(request)
|
|
2357
|
-
|
|
2340
|
+
rpc_utils.verify_success(response.status)
|
|
2358
2341
|
return response.measurements
|
|
2359
2342
|
except TTransport.TException as e:
|
|
2360
2343
|
if self.reconnect():
|
|
2361
2344
|
try:
|
|
2362
2345
|
request.sessionId = self.__session_id
|
|
2363
2346
|
response = self.__client.querySchemaTemplate(request)
|
|
2364
|
-
|
|
2347
|
+
rpc_utils.verify_success(response.status)
|
|
2365
2348
|
return response.measurements
|
|
2366
2349
|
except TTransport.TException as e1:
|
|
2367
2350
|
raise IoTDBConnectionException(e1) from None
|
|
@@ -2384,14 +2367,14 @@ class Session(object):
|
|
|
2384
2367
|
)
|
|
2385
2368
|
try:
|
|
2386
2369
|
response = self.__client.querySchemaTemplate(request)
|
|
2387
|
-
|
|
2370
|
+
rpc_utils.verify_success(response.status)
|
|
2388
2371
|
return response.measurements
|
|
2389
2372
|
except TTransport.TException as e:
|
|
2390
2373
|
if self.reconnect():
|
|
2391
2374
|
try:
|
|
2392
2375
|
request.sessionId = self.__session_id
|
|
2393
2376
|
response = self.__client.querySchemaTemplate(request)
|
|
2394
|
-
|
|
2377
|
+
rpc_utils.verify_success(response.status)
|
|
2395
2378
|
return response.measurements
|
|
2396
2379
|
except TTransport.TException as e1:
|
|
2397
2380
|
raise IoTDBConnectionException(e1) from None
|
|
@@ -2413,14 +2396,14 @@ class Session(object):
|
|
|
2413
2396
|
)
|
|
2414
2397
|
try:
|
|
2415
2398
|
response = self.__client.querySchemaTemplate(request)
|
|
2416
|
-
|
|
2399
|
+
rpc_utils.verify_success(response.status)
|
|
2417
2400
|
return response.measurements
|
|
2418
2401
|
except TTransport.TException as e:
|
|
2419
2402
|
if self.reconnect():
|
|
2420
2403
|
try:
|
|
2421
2404
|
request.sessionId = self.__session_id
|
|
2422
2405
|
response = self.__client.querySchemaTemplate(request)
|
|
2423
|
-
|
|
2406
|
+
rpc_utils.verify_success(response.status)
|
|
2424
2407
|
return response.measurements
|
|
2425
2408
|
except TTransport.TException as e1:
|
|
2426
2409
|
raise IoTDBConnectionException(e1) from None
|
|
@@ -2444,14 +2427,14 @@ class Session(object):
|
|
|
2444
2427
|
)
|
|
2445
2428
|
try:
|
|
2446
2429
|
response = self.__client.querySchemaTemplate(request)
|
|
2447
|
-
|
|
2430
|
+
rpc_utils.verify_success(response.status)
|
|
2448
2431
|
return response.measurements
|
|
2449
2432
|
except TTransport.TException as e:
|
|
2450
2433
|
if self.reconnect():
|
|
2451
2434
|
try:
|
|
2452
2435
|
request.sessionId = self.__session_id
|
|
2453
2436
|
response = self.__client.querySchemaTemplate(request)
|
|
2454
|
-
|
|
2437
|
+
rpc_utils.verify_success(response.status)
|
|
2455
2438
|
return response.measurements
|
|
2456
2439
|
except TTransport.TException as e1:
|
|
2457
2440
|
raise IoTDBConnectionException(e1) from None
|
|
@@ -2474,7 +2457,7 @@ class SessionConnection(object):
|
|
|
2474
2457
|
|
|
2475
2458
|
def change_database(self, sql):
|
|
2476
2459
|
try:
|
|
2477
|
-
self.client.
|
|
2460
|
+
self.client.executeUpdateStatementV2(
|
|
2478
2461
|
TSExecuteStatementReq(self.session_id, sql, self.statement_id)
|
|
2479
2462
|
)
|
|
2480
2463
|
except TTransport.TException as e:
|
|
@@ -2494,12 +2477,3 @@ class SessionConnection(object):
|
|
|
2494
2477
|
finally:
|
|
2495
2478
|
if self.transport is not None:
|
|
2496
2479
|
self.transport.close()
|
|
2497
|
-
|
|
2498
|
-
|
|
2499
|
-
class RedirectException(Exception):
|
|
2500
|
-
def __init__(self, redirect_info):
|
|
2501
|
-
Exception.__init__(self)
|
|
2502
|
-
if isinstance(redirect_info, TEndPoint):
|
|
2503
|
-
self.redirect_node = redirect_info
|
|
2504
|
-
else:
|
|
2505
|
-
self.device_to_endpoint = redirect_info
|