awx-zipline-ai 0.0.32__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.
Files changed (96) hide show
  1. __init__.py +0 -0
  2. agent/__init__.py +1 -0
  3. agent/constants.py +15 -0
  4. agent/ttypes.py +1684 -0
  5. ai/__init__.py +0 -0
  6. ai/chronon/__init__.py +0 -0
  7. ai/chronon/airflow_helpers.py +248 -0
  8. ai/chronon/cli/__init__.py +0 -0
  9. ai/chronon/cli/compile/__init__.py +0 -0
  10. ai/chronon/cli/compile/column_hashing.py +336 -0
  11. ai/chronon/cli/compile/compile_context.py +173 -0
  12. ai/chronon/cli/compile/compiler.py +183 -0
  13. ai/chronon/cli/compile/conf_validator.py +742 -0
  14. ai/chronon/cli/compile/display/__init__.py +0 -0
  15. ai/chronon/cli/compile/display/class_tracker.py +102 -0
  16. ai/chronon/cli/compile/display/compile_status.py +95 -0
  17. ai/chronon/cli/compile/display/compiled_obj.py +12 -0
  18. ai/chronon/cli/compile/display/console.py +3 -0
  19. ai/chronon/cli/compile/display/diff_result.py +111 -0
  20. ai/chronon/cli/compile/fill_templates.py +35 -0
  21. ai/chronon/cli/compile/parse_configs.py +134 -0
  22. ai/chronon/cli/compile/parse_teams.py +242 -0
  23. ai/chronon/cli/compile/serializer.py +109 -0
  24. ai/chronon/cli/compile/version_utils.py +42 -0
  25. ai/chronon/cli/git_utils.py +145 -0
  26. ai/chronon/cli/logger.py +59 -0
  27. ai/chronon/constants.py +3 -0
  28. ai/chronon/group_by.py +692 -0
  29. ai/chronon/join.py +580 -0
  30. ai/chronon/logger.py +23 -0
  31. ai/chronon/model.py +40 -0
  32. ai/chronon/query.py +126 -0
  33. ai/chronon/repo/__init__.py +39 -0
  34. ai/chronon/repo/aws.py +284 -0
  35. ai/chronon/repo/cluster.py +136 -0
  36. ai/chronon/repo/compile.py +62 -0
  37. ai/chronon/repo/constants.py +164 -0
  38. ai/chronon/repo/default_runner.py +269 -0
  39. ai/chronon/repo/explore.py +418 -0
  40. ai/chronon/repo/extract_objects.py +134 -0
  41. ai/chronon/repo/gcp.py +586 -0
  42. ai/chronon/repo/gitpython_utils.py +15 -0
  43. ai/chronon/repo/hub_runner.py +261 -0
  44. ai/chronon/repo/hub_uploader.py +109 -0
  45. ai/chronon/repo/init.py +60 -0
  46. ai/chronon/repo/join_backfill.py +119 -0
  47. ai/chronon/repo/run.py +296 -0
  48. ai/chronon/repo/serializer.py +133 -0
  49. ai/chronon/repo/team_json_utils.py +46 -0
  50. ai/chronon/repo/utils.py +481 -0
  51. ai/chronon/repo/zipline.py +35 -0
  52. ai/chronon/repo/zipline_hub.py +277 -0
  53. ai/chronon/resources/__init__.py +0 -0
  54. ai/chronon/resources/gcp/__init__.py +0 -0
  55. ai/chronon/resources/gcp/group_bys/__init__.py +0 -0
  56. ai/chronon/resources/gcp/group_bys/test/__init__.py +0 -0
  57. ai/chronon/resources/gcp/group_bys/test/data.py +30 -0
  58. ai/chronon/resources/gcp/joins/__init__.py +0 -0
  59. ai/chronon/resources/gcp/joins/test/__init__.py +0 -0
  60. ai/chronon/resources/gcp/joins/test/data.py +26 -0
  61. ai/chronon/resources/gcp/sources/__init__.py +0 -0
  62. ai/chronon/resources/gcp/sources/test/__init__.py +0 -0
  63. ai/chronon/resources/gcp/sources/test/data.py +26 -0
  64. ai/chronon/resources/gcp/teams.py +58 -0
  65. ai/chronon/source.py +86 -0
  66. ai/chronon/staging_query.py +226 -0
  67. ai/chronon/types.py +58 -0
  68. ai/chronon/utils.py +510 -0
  69. ai/chronon/windows.py +48 -0
  70. awx_zipline_ai-0.0.32.dist-info/METADATA +197 -0
  71. awx_zipline_ai-0.0.32.dist-info/RECORD +96 -0
  72. awx_zipline_ai-0.0.32.dist-info/WHEEL +5 -0
  73. awx_zipline_ai-0.0.32.dist-info/entry_points.txt +2 -0
  74. awx_zipline_ai-0.0.32.dist-info/top_level.txt +4 -0
  75. gen_thrift/__init__.py +0 -0
  76. gen_thrift/api/__init__.py +1 -0
  77. gen_thrift/api/constants.py +15 -0
  78. gen_thrift/api/ttypes.py +3754 -0
  79. gen_thrift/common/__init__.py +1 -0
  80. gen_thrift/common/constants.py +15 -0
  81. gen_thrift/common/ttypes.py +1814 -0
  82. gen_thrift/eval/__init__.py +1 -0
  83. gen_thrift/eval/constants.py +15 -0
  84. gen_thrift/eval/ttypes.py +660 -0
  85. gen_thrift/fetcher/__init__.py +1 -0
  86. gen_thrift/fetcher/constants.py +15 -0
  87. gen_thrift/fetcher/ttypes.py +127 -0
  88. gen_thrift/hub/__init__.py +1 -0
  89. gen_thrift/hub/constants.py +15 -0
  90. gen_thrift/hub/ttypes.py +1109 -0
  91. gen_thrift/observability/__init__.py +1 -0
  92. gen_thrift/observability/constants.py +15 -0
  93. gen_thrift/observability/ttypes.py +2355 -0
  94. gen_thrift/planner/__init__.py +1 -0
  95. gen_thrift/planner/constants.py +15 -0
  96. gen_thrift/planner/ttypes.py +1967 -0
@@ -0,0 +1,1967 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (0.22.0)
3
+ #
4
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
5
+ #
6
+ # options string: py
7
+ #
8
+
9
+ from thrift.Thrift import TType, TMessageType, TFrozenDict, TException, TApplicationException
10
+ from thrift.protocol.TProtocol import TProtocolException
11
+ from thrift.TRecursive import fix_spec
12
+ from uuid import UUID
13
+
14
+ import sys
15
+ import gen_thrift.common.ttypes
16
+ import gen_thrift.api.ttypes
17
+
18
+ from thrift.transport import TTransport
19
+ all_structs = []
20
+
21
+
22
+ class Mode(object):
23
+ BACKFILL = 0
24
+ DEPLOY = 1
25
+ MONITOR = 2
26
+
27
+ _VALUES_TO_NAMES = {
28
+ 0: "BACKFILL",
29
+ 1: "DEPLOY",
30
+ 2: "MONITOR",
31
+ }
32
+
33
+ _NAMES_TO_VALUES = {
34
+ "BACKFILL": 0,
35
+ "DEPLOY": 1,
36
+ "MONITOR": 2,
37
+ }
38
+
39
+
40
+ class SourceWithFilterNode(object):
41
+ """
42
+ Attributes:
43
+ - source
44
+ - excludeKeys
45
+
46
+ """
47
+ thrift_spec = None
48
+
49
+
50
+ def __init__(self, source = None, excludeKeys = None,):
51
+ self.source = source
52
+ self.excludeKeys = excludeKeys
53
+
54
+ def read(self, iprot):
55
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
56
+ iprot._fast_decode(self, iprot, [self.__class__, self.thrift_spec])
57
+ return
58
+ iprot.readStructBegin()
59
+ while True:
60
+ (fname, ftype, fid) = iprot.readFieldBegin()
61
+ if ftype == TType.STOP:
62
+ break
63
+ if fid == 2:
64
+ if ftype == TType.STRUCT:
65
+ self.source = gen_thrift.api.ttypes.Source()
66
+ self.source.read(iprot)
67
+ else:
68
+ iprot.skip(ftype)
69
+ elif fid == 3:
70
+ if ftype == TType.MAP:
71
+ self.excludeKeys = {}
72
+ (_ktype1, _vtype2, _size0) = iprot.readMapBegin()
73
+ for _i4 in range(_size0):
74
+ _key5 = iprot.readString().decode('utf-8', errors='replace') if sys.version_info[0] == 2 else iprot.readString()
75
+ _val6 = []
76
+ (_etype10, _size7) = iprot.readListBegin()
77
+ for _i11 in range(_size7):
78
+ _elem12 = iprot.readString().decode('utf-8', errors='replace') if sys.version_info[0] == 2 else iprot.readString()
79
+ _val6.append(_elem12)
80
+ iprot.readListEnd()
81
+ self.excludeKeys[_key5] = _val6
82
+ iprot.readMapEnd()
83
+ else:
84
+ iprot.skip(ftype)
85
+ else:
86
+ iprot.skip(ftype)
87
+ iprot.readFieldEnd()
88
+ iprot.readStructEnd()
89
+
90
+ def write(self, oprot):
91
+ self.validate()
92
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
93
+ oprot.trans.write(oprot._fast_encode(self, [self.__class__, self.thrift_spec]))
94
+ return
95
+ oprot.writeStructBegin('SourceWithFilterNode')
96
+ if self.source is not None:
97
+ oprot.writeFieldBegin('source', TType.STRUCT, 2)
98
+ self.source.write(oprot)
99
+ oprot.writeFieldEnd()
100
+ if self.excludeKeys is not None:
101
+ oprot.writeFieldBegin('excludeKeys', TType.MAP, 3)
102
+ oprot.writeMapBegin(TType.STRING, TType.LIST, len(self.excludeKeys))
103
+ for kiter13, viter14 in self.excludeKeys.items():
104
+ oprot.writeString(kiter13.encode('utf-8') if sys.version_info[0] == 2 else kiter13)
105
+ oprot.writeListBegin(TType.STRING, len(viter14))
106
+ for iter15 in viter14:
107
+ oprot.writeString(iter15.encode('utf-8') if sys.version_info[0] == 2 else iter15)
108
+ oprot.writeListEnd()
109
+ oprot.writeMapEnd()
110
+ oprot.writeFieldEnd()
111
+ oprot.writeFieldStop()
112
+ oprot.writeStructEnd()
113
+
114
+ def validate(self):
115
+ return
116
+
117
+ def __repr__(self):
118
+ L = ['%s=%r' % (key, value)
119
+ for key, value in self.__dict__.items()]
120
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
121
+
122
+ def __eq__(self, other):
123
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
124
+
125
+ def __ne__(self, other):
126
+ return not (self == other)
127
+
128
+
129
+ class JoinBootstrapNode(object):
130
+ """
131
+ Attributes:
132
+ - join
133
+
134
+ """
135
+ thrift_spec = None
136
+
137
+
138
+ def __init__(self, join = None,):
139
+ self.join = join
140
+
141
+ def read(self, iprot):
142
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
143
+ iprot._fast_decode(self, iprot, [self.__class__, self.thrift_spec])
144
+ return
145
+ iprot.readStructBegin()
146
+ while True:
147
+ (fname, ftype, fid) = iprot.readFieldBegin()
148
+ if ftype == TType.STOP:
149
+ break
150
+ if fid == 2:
151
+ if ftype == TType.STRUCT:
152
+ self.join = gen_thrift.api.ttypes.Join()
153
+ self.join.read(iprot)
154
+ else:
155
+ iprot.skip(ftype)
156
+ else:
157
+ iprot.skip(ftype)
158
+ iprot.readFieldEnd()
159
+ iprot.readStructEnd()
160
+
161
+ def write(self, oprot):
162
+ self.validate()
163
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
164
+ oprot.trans.write(oprot._fast_encode(self, [self.__class__, self.thrift_spec]))
165
+ return
166
+ oprot.writeStructBegin('JoinBootstrapNode')
167
+ if self.join is not None:
168
+ oprot.writeFieldBegin('join', TType.STRUCT, 2)
169
+ self.join.write(oprot)
170
+ oprot.writeFieldEnd()
171
+ oprot.writeFieldStop()
172
+ oprot.writeStructEnd()
173
+
174
+ def validate(self):
175
+ return
176
+
177
+ def __repr__(self):
178
+ L = ['%s=%r' % (key, value)
179
+ for key, value in self.__dict__.items()]
180
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
181
+
182
+ def __eq__(self, other):
183
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
184
+
185
+ def __ne__(self, other):
186
+ return not (self == other)
187
+
188
+
189
+ class JoinMergeNode(object):
190
+ """
191
+ Attributes:
192
+ - join
193
+ - productionJoin
194
+
195
+ """
196
+ thrift_spec = None
197
+
198
+
199
+ def __init__(self, join = None, productionJoin = None,):
200
+ self.join = join
201
+ self.productionJoin = productionJoin
202
+
203
+ def read(self, iprot):
204
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
205
+ iprot._fast_decode(self, iprot, [self.__class__, self.thrift_spec])
206
+ return
207
+ iprot.readStructBegin()
208
+ while True:
209
+ (fname, ftype, fid) = iprot.readFieldBegin()
210
+ if ftype == TType.STOP:
211
+ break
212
+ if fid == 2:
213
+ if ftype == TType.STRUCT:
214
+ self.join = gen_thrift.api.ttypes.Join()
215
+ self.join.read(iprot)
216
+ else:
217
+ iprot.skip(ftype)
218
+ elif fid == 3:
219
+ if ftype == TType.STRUCT:
220
+ self.productionJoin = gen_thrift.api.ttypes.Join()
221
+ self.productionJoin.read(iprot)
222
+ else:
223
+ iprot.skip(ftype)
224
+ else:
225
+ iprot.skip(ftype)
226
+ iprot.readFieldEnd()
227
+ iprot.readStructEnd()
228
+
229
+ def write(self, oprot):
230
+ self.validate()
231
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
232
+ oprot.trans.write(oprot._fast_encode(self, [self.__class__, self.thrift_spec]))
233
+ return
234
+ oprot.writeStructBegin('JoinMergeNode')
235
+ if self.join is not None:
236
+ oprot.writeFieldBegin('join', TType.STRUCT, 2)
237
+ self.join.write(oprot)
238
+ oprot.writeFieldEnd()
239
+ if self.productionJoin is not None:
240
+ oprot.writeFieldBegin('productionJoin', TType.STRUCT, 3)
241
+ self.productionJoin.write(oprot)
242
+ oprot.writeFieldEnd()
243
+ oprot.writeFieldStop()
244
+ oprot.writeStructEnd()
245
+
246
+ def validate(self):
247
+ return
248
+
249
+ def __repr__(self):
250
+ L = ['%s=%r' % (key, value)
251
+ for key, value in self.__dict__.items()]
252
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
253
+
254
+ def __eq__(self, other):
255
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
256
+
257
+ def __ne__(self, other):
258
+ return not (self == other)
259
+
260
+
261
+ class JoinDerivationNode(object):
262
+ """
263
+ Attributes:
264
+ - join
265
+
266
+ """
267
+ thrift_spec = None
268
+
269
+
270
+ def __init__(self, join = None,):
271
+ self.join = join
272
+
273
+ def read(self, iprot):
274
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
275
+ iprot._fast_decode(self, iprot, [self.__class__, self.thrift_spec])
276
+ return
277
+ iprot.readStructBegin()
278
+ while True:
279
+ (fname, ftype, fid) = iprot.readFieldBegin()
280
+ if ftype == TType.STOP:
281
+ break
282
+ if fid == 2:
283
+ if ftype == TType.STRUCT:
284
+ self.join = gen_thrift.api.ttypes.Join()
285
+ self.join.read(iprot)
286
+ else:
287
+ iprot.skip(ftype)
288
+ else:
289
+ iprot.skip(ftype)
290
+ iprot.readFieldEnd()
291
+ iprot.readStructEnd()
292
+
293
+ def write(self, oprot):
294
+ self.validate()
295
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
296
+ oprot.trans.write(oprot._fast_encode(self, [self.__class__, self.thrift_spec]))
297
+ return
298
+ oprot.writeStructBegin('JoinDerivationNode')
299
+ if self.join is not None:
300
+ oprot.writeFieldBegin('join', TType.STRUCT, 2)
301
+ self.join.write(oprot)
302
+ oprot.writeFieldEnd()
303
+ oprot.writeFieldStop()
304
+ oprot.writeStructEnd()
305
+
306
+ def validate(self):
307
+ return
308
+
309
+ def __repr__(self):
310
+ L = ['%s=%r' % (key, value)
311
+ for key, value in self.__dict__.items()]
312
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
313
+
314
+ def __eq__(self, other):
315
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
316
+
317
+ def __ne__(self, other):
318
+ return not (self == other)
319
+
320
+
321
+ class JoinPartNode(object):
322
+ """
323
+ Attributes:
324
+ - leftSourceTable
325
+ - leftDataModel
326
+ - joinPart
327
+ - skewKeys
328
+ - productionJoinPart
329
+
330
+ """
331
+ thrift_spec = None
332
+
333
+
334
+ def __init__(self, leftSourceTable = None, leftDataModel = None, joinPart = None, skewKeys = None, productionJoinPart = None,):
335
+ self.leftSourceTable = leftSourceTable
336
+ self.leftDataModel = leftDataModel
337
+ self.joinPart = joinPart
338
+ self.skewKeys = skewKeys
339
+ self.productionJoinPart = productionJoinPart
340
+
341
+ def read(self, iprot):
342
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
343
+ iprot._fast_decode(self, iprot, [self.__class__, self.thrift_spec])
344
+ return
345
+ iprot.readStructBegin()
346
+ while True:
347
+ (fname, ftype, fid) = iprot.readFieldBegin()
348
+ if ftype == TType.STOP:
349
+ break
350
+ if fid == 2:
351
+ if ftype == TType.STRING:
352
+ self.leftSourceTable = iprot.readString().decode('utf-8', errors='replace') if sys.version_info[0] == 2 else iprot.readString()
353
+ else:
354
+ iprot.skip(ftype)
355
+ elif fid == 3:
356
+ if ftype == TType.I32:
357
+ self.leftDataModel = iprot.readI32()
358
+ else:
359
+ iprot.skip(ftype)
360
+ elif fid == 4:
361
+ if ftype == TType.STRUCT:
362
+ self.joinPart = gen_thrift.api.ttypes.JoinPart()
363
+ self.joinPart.read(iprot)
364
+ else:
365
+ iprot.skip(ftype)
366
+ elif fid == 5:
367
+ if ftype == TType.MAP:
368
+ self.skewKeys = {}
369
+ (_ktype17, _vtype18, _size16) = iprot.readMapBegin()
370
+ for _i20 in range(_size16):
371
+ _key21 = iprot.readString().decode('utf-8', errors='replace') if sys.version_info[0] == 2 else iprot.readString()
372
+ _val22 = []
373
+ (_etype26, _size23) = iprot.readListBegin()
374
+ for _i27 in range(_size23):
375
+ _elem28 = iprot.readString().decode('utf-8', errors='replace') if sys.version_info[0] == 2 else iprot.readString()
376
+ _val22.append(_elem28)
377
+ iprot.readListEnd()
378
+ self.skewKeys[_key21] = _val22
379
+ iprot.readMapEnd()
380
+ else:
381
+ iprot.skip(ftype)
382
+ elif fid == 6:
383
+ if ftype == TType.STRUCT:
384
+ self.productionJoinPart = gen_thrift.api.ttypes.JoinPart()
385
+ self.productionJoinPart.read(iprot)
386
+ else:
387
+ iprot.skip(ftype)
388
+ else:
389
+ iprot.skip(ftype)
390
+ iprot.readFieldEnd()
391
+ iprot.readStructEnd()
392
+
393
+ def write(self, oprot):
394
+ self.validate()
395
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
396
+ oprot.trans.write(oprot._fast_encode(self, [self.__class__, self.thrift_spec]))
397
+ return
398
+ oprot.writeStructBegin('JoinPartNode')
399
+ if self.leftSourceTable is not None:
400
+ oprot.writeFieldBegin('leftSourceTable', TType.STRING, 2)
401
+ oprot.writeString(self.leftSourceTable.encode('utf-8') if sys.version_info[0] == 2 else self.leftSourceTable)
402
+ oprot.writeFieldEnd()
403
+ if self.leftDataModel is not None:
404
+ oprot.writeFieldBegin('leftDataModel', TType.I32, 3)
405
+ oprot.writeI32(self.leftDataModel)
406
+ oprot.writeFieldEnd()
407
+ if self.joinPart is not None:
408
+ oprot.writeFieldBegin('joinPart', TType.STRUCT, 4)
409
+ self.joinPart.write(oprot)
410
+ oprot.writeFieldEnd()
411
+ if self.skewKeys is not None:
412
+ oprot.writeFieldBegin('skewKeys', TType.MAP, 5)
413
+ oprot.writeMapBegin(TType.STRING, TType.LIST, len(self.skewKeys))
414
+ for kiter29, viter30 in self.skewKeys.items():
415
+ oprot.writeString(kiter29.encode('utf-8') if sys.version_info[0] == 2 else kiter29)
416
+ oprot.writeListBegin(TType.STRING, len(viter30))
417
+ for iter31 in viter30:
418
+ oprot.writeString(iter31.encode('utf-8') if sys.version_info[0] == 2 else iter31)
419
+ oprot.writeListEnd()
420
+ oprot.writeMapEnd()
421
+ oprot.writeFieldEnd()
422
+ if self.productionJoinPart is not None:
423
+ oprot.writeFieldBegin('productionJoinPart', TType.STRUCT, 6)
424
+ self.productionJoinPart.write(oprot)
425
+ oprot.writeFieldEnd()
426
+ oprot.writeFieldStop()
427
+ oprot.writeStructEnd()
428
+
429
+ def validate(self):
430
+ return
431
+
432
+ def __repr__(self):
433
+ L = ['%s=%r' % (key, value)
434
+ for key, value in self.__dict__.items()]
435
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
436
+
437
+ def __eq__(self, other):
438
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
439
+
440
+ def __ne__(self, other):
441
+ return not (self == other)
442
+
443
+
444
+ class LabelJoinNode(object):
445
+ """
446
+ Attributes:
447
+ - join
448
+
449
+ """
450
+ thrift_spec = None
451
+
452
+
453
+ def __init__(self, join = None,):
454
+ self.join = join
455
+
456
+ def read(self, iprot):
457
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
458
+ iprot._fast_decode(self, iprot, [self.__class__, self.thrift_spec])
459
+ return
460
+ iprot.readStructBegin()
461
+ while True:
462
+ (fname, ftype, fid) = iprot.readFieldBegin()
463
+ if ftype == TType.STOP:
464
+ break
465
+ if fid == 2:
466
+ if ftype == TType.STRUCT:
467
+ self.join = gen_thrift.api.ttypes.Join()
468
+ self.join.read(iprot)
469
+ else:
470
+ iprot.skip(ftype)
471
+ else:
472
+ iprot.skip(ftype)
473
+ iprot.readFieldEnd()
474
+ iprot.readStructEnd()
475
+
476
+ def write(self, oprot):
477
+ self.validate()
478
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
479
+ oprot.trans.write(oprot._fast_encode(self, [self.__class__, self.thrift_spec]))
480
+ return
481
+ oprot.writeStructBegin('LabelJoinNode')
482
+ if self.join is not None:
483
+ oprot.writeFieldBegin('join', TType.STRUCT, 2)
484
+ self.join.write(oprot)
485
+ oprot.writeFieldEnd()
486
+ oprot.writeFieldStop()
487
+ oprot.writeStructEnd()
488
+
489
+ def validate(self):
490
+ return
491
+
492
+ def __repr__(self):
493
+ L = ['%s=%r' % (key, value)
494
+ for key, value in self.__dict__.items()]
495
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
496
+
497
+ def __eq__(self, other):
498
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
499
+
500
+ def __ne__(self, other):
501
+ return not (self == other)
502
+
503
+
504
+ class MonolithJoinNode(object):
505
+ """
506
+ Attributes:
507
+ - join
508
+
509
+ """
510
+ thrift_spec = None
511
+
512
+
513
+ def __init__(self, join = None,):
514
+ self.join = join
515
+
516
+ def read(self, iprot):
517
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
518
+ iprot._fast_decode(self, iprot, [self.__class__, self.thrift_spec])
519
+ return
520
+ iprot.readStructBegin()
521
+ while True:
522
+ (fname, ftype, fid) = iprot.readFieldBegin()
523
+ if ftype == TType.STOP:
524
+ break
525
+ if fid == 1:
526
+ if ftype == TType.STRUCT:
527
+ self.join = gen_thrift.api.ttypes.Join()
528
+ self.join.read(iprot)
529
+ else:
530
+ iprot.skip(ftype)
531
+ else:
532
+ iprot.skip(ftype)
533
+ iprot.readFieldEnd()
534
+ iprot.readStructEnd()
535
+
536
+ def write(self, oprot):
537
+ self.validate()
538
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
539
+ oprot.trans.write(oprot._fast_encode(self, [self.__class__, self.thrift_spec]))
540
+ return
541
+ oprot.writeStructBegin('MonolithJoinNode')
542
+ if self.join is not None:
543
+ oprot.writeFieldBegin('join', TType.STRUCT, 1)
544
+ self.join.write(oprot)
545
+ oprot.writeFieldEnd()
546
+ oprot.writeFieldStop()
547
+ oprot.writeStructEnd()
548
+
549
+ def validate(self):
550
+ return
551
+
552
+ def __repr__(self):
553
+ L = ['%s=%r' % (key, value)
554
+ for key, value in self.__dict__.items()]
555
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
556
+
557
+ def __eq__(self, other):
558
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
559
+
560
+ def __ne__(self, other):
561
+ return not (self == other)
562
+
563
+
564
+ class StagingQueryNode(object):
565
+ """
566
+ Attributes:
567
+ - stagingQuery
568
+
569
+ """
570
+ thrift_spec = None
571
+
572
+
573
+ def __init__(self, stagingQuery = None,):
574
+ self.stagingQuery = stagingQuery
575
+
576
+ def read(self, iprot):
577
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
578
+ iprot._fast_decode(self, iprot, [self.__class__, self.thrift_spec])
579
+ return
580
+ iprot.readStructBegin()
581
+ while True:
582
+ (fname, ftype, fid) = iprot.readFieldBegin()
583
+ if ftype == TType.STOP:
584
+ break
585
+ if fid == 2:
586
+ if ftype == TType.STRUCT:
587
+ self.stagingQuery = gen_thrift.api.ttypes.StagingQuery()
588
+ self.stagingQuery.read(iprot)
589
+ else:
590
+ iprot.skip(ftype)
591
+ else:
592
+ iprot.skip(ftype)
593
+ iprot.readFieldEnd()
594
+ iprot.readStructEnd()
595
+
596
+ def write(self, oprot):
597
+ self.validate()
598
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
599
+ oprot.trans.write(oprot._fast_encode(self, [self.__class__, self.thrift_spec]))
600
+ return
601
+ oprot.writeStructBegin('StagingQueryNode')
602
+ if self.stagingQuery is not None:
603
+ oprot.writeFieldBegin('stagingQuery', TType.STRUCT, 2)
604
+ self.stagingQuery.write(oprot)
605
+ oprot.writeFieldEnd()
606
+ oprot.writeFieldStop()
607
+ oprot.writeStructEnd()
608
+
609
+ def validate(self):
610
+ return
611
+
612
+ def __repr__(self):
613
+ L = ['%s=%r' % (key, value)
614
+ for key, value in self.__dict__.items()]
615
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
616
+
617
+ def __eq__(self, other):
618
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
619
+
620
+ def __ne__(self, other):
621
+ return not (self == other)
622
+
623
+
624
+ class GroupByBackfillNode(object):
625
+ """
626
+ Attributes:
627
+ - groupBy
628
+
629
+ """
630
+ thrift_spec = None
631
+
632
+
633
+ def __init__(self, groupBy = None,):
634
+ self.groupBy = groupBy
635
+
636
+ def read(self, iprot):
637
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
638
+ iprot._fast_decode(self, iprot, [self.__class__, self.thrift_spec])
639
+ return
640
+ iprot.readStructBegin()
641
+ while True:
642
+ (fname, ftype, fid) = iprot.readFieldBegin()
643
+ if ftype == TType.STOP:
644
+ break
645
+ if fid == 2:
646
+ if ftype == TType.STRUCT:
647
+ self.groupBy = gen_thrift.api.ttypes.GroupBy()
648
+ self.groupBy.read(iprot)
649
+ else:
650
+ iprot.skip(ftype)
651
+ else:
652
+ iprot.skip(ftype)
653
+ iprot.readFieldEnd()
654
+ iprot.readStructEnd()
655
+
656
+ def write(self, oprot):
657
+ self.validate()
658
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
659
+ oprot.trans.write(oprot._fast_encode(self, [self.__class__, self.thrift_spec]))
660
+ return
661
+ oprot.writeStructBegin('GroupByBackfillNode')
662
+ if self.groupBy is not None:
663
+ oprot.writeFieldBegin('groupBy', TType.STRUCT, 2)
664
+ self.groupBy.write(oprot)
665
+ oprot.writeFieldEnd()
666
+ oprot.writeFieldStop()
667
+ oprot.writeStructEnd()
668
+
669
+ def validate(self):
670
+ return
671
+
672
+ def __repr__(self):
673
+ L = ['%s=%r' % (key, value)
674
+ for key, value in self.__dict__.items()]
675
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
676
+
677
+ def __eq__(self, other):
678
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
679
+
680
+ def __ne__(self, other):
681
+ return not (self == other)
682
+
683
+
684
+ class GroupByUploadNode(object):
685
+ """
686
+ Attributes:
687
+ - groupBy
688
+
689
+ """
690
+ thrift_spec = None
691
+
692
+
693
+ def __init__(self, groupBy = None,):
694
+ self.groupBy = groupBy
695
+
696
+ def read(self, iprot):
697
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
698
+ iprot._fast_decode(self, iprot, [self.__class__, self.thrift_spec])
699
+ return
700
+ iprot.readStructBegin()
701
+ while True:
702
+ (fname, ftype, fid) = iprot.readFieldBegin()
703
+ if ftype == TType.STOP:
704
+ break
705
+ if fid == 2:
706
+ if ftype == TType.STRUCT:
707
+ self.groupBy = gen_thrift.api.ttypes.GroupBy()
708
+ self.groupBy.read(iprot)
709
+ else:
710
+ iprot.skip(ftype)
711
+ else:
712
+ iprot.skip(ftype)
713
+ iprot.readFieldEnd()
714
+ iprot.readStructEnd()
715
+
716
+ def write(self, oprot):
717
+ self.validate()
718
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
719
+ oprot.trans.write(oprot._fast_encode(self, [self.__class__, self.thrift_spec]))
720
+ return
721
+ oprot.writeStructBegin('GroupByUploadNode')
722
+ if self.groupBy is not None:
723
+ oprot.writeFieldBegin('groupBy', TType.STRUCT, 2)
724
+ self.groupBy.write(oprot)
725
+ oprot.writeFieldEnd()
726
+ oprot.writeFieldStop()
727
+ oprot.writeStructEnd()
728
+
729
+ def validate(self):
730
+ return
731
+
732
+ def __repr__(self):
733
+ L = ['%s=%r' % (key, value)
734
+ for key, value in self.__dict__.items()]
735
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
736
+
737
+ def __eq__(self, other):
738
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
739
+
740
+ def __ne__(self, other):
741
+ return not (self == other)
742
+
743
+
744
+ class GroupByUploadToKVNode(object):
745
+ """
746
+ Attributes:
747
+ - groupBy
748
+
749
+ """
750
+ thrift_spec = None
751
+
752
+
753
+ def __init__(self, groupBy = None,):
754
+ self.groupBy = groupBy
755
+
756
+ def read(self, iprot):
757
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
758
+ iprot._fast_decode(self, iprot, [self.__class__, self.thrift_spec])
759
+ return
760
+ iprot.readStructBegin()
761
+ while True:
762
+ (fname, ftype, fid) = iprot.readFieldBegin()
763
+ if ftype == TType.STOP:
764
+ break
765
+ if fid == 2:
766
+ if ftype == TType.STRUCT:
767
+ self.groupBy = gen_thrift.api.ttypes.GroupBy()
768
+ self.groupBy.read(iprot)
769
+ else:
770
+ iprot.skip(ftype)
771
+ else:
772
+ iprot.skip(ftype)
773
+ iprot.readFieldEnd()
774
+ iprot.readStructEnd()
775
+
776
+ def write(self, oprot):
777
+ self.validate()
778
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
779
+ oprot.trans.write(oprot._fast_encode(self, [self.__class__, self.thrift_spec]))
780
+ return
781
+ oprot.writeStructBegin('GroupByUploadToKVNode')
782
+ if self.groupBy is not None:
783
+ oprot.writeFieldBegin('groupBy', TType.STRUCT, 2)
784
+ self.groupBy.write(oprot)
785
+ oprot.writeFieldEnd()
786
+ oprot.writeFieldStop()
787
+ oprot.writeStructEnd()
788
+
789
+ def validate(self):
790
+ return
791
+
792
+ def __repr__(self):
793
+ L = ['%s=%r' % (key, value)
794
+ for key, value in self.__dict__.items()]
795
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
796
+
797
+ def __eq__(self, other):
798
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
799
+
800
+ def __ne__(self, other):
801
+ return not (self == other)
802
+
803
+
804
+ class GroupByStreamingNode(object):
805
+ """
806
+ Attributes:
807
+ - groupBy
808
+
809
+ """
810
+ thrift_spec = None
811
+
812
+
813
+ def __init__(self, groupBy = None,):
814
+ self.groupBy = groupBy
815
+
816
+ def read(self, iprot):
817
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
818
+ iprot._fast_decode(self, iprot, [self.__class__, self.thrift_spec])
819
+ return
820
+ iprot.readStructBegin()
821
+ while True:
822
+ (fname, ftype, fid) = iprot.readFieldBegin()
823
+ if ftype == TType.STOP:
824
+ break
825
+ if fid == 2:
826
+ if ftype == TType.STRUCT:
827
+ self.groupBy = gen_thrift.api.ttypes.GroupBy()
828
+ self.groupBy.read(iprot)
829
+ else:
830
+ iprot.skip(ftype)
831
+ else:
832
+ iprot.skip(ftype)
833
+ iprot.readFieldEnd()
834
+ iprot.readStructEnd()
835
+
836
+ def write(self, oprot):
837
+ self.validate()
838
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
839
+ oprot.trans.write(oprot._fast_encode(self, [self.__class__, self.thrift_spec]))
840
+ return
841
+ oprot.writeStructBegin('GroupByStreamingNode')
842
+ if self.groupBy is not None:
843
+ oprot.writeFieldBegin('groupBy', TType.STRUCT, 2)
844
+ self.groupBy.write(oprot)
845
+ oprot.writeFieldEnd()
846
+ oprot.writeFieldStop()
847
+ oprot.writeStructEnd()
848
+
849
+ def validate(self):
850
+ return
851
+
852
+ def __repr__(self):
853
+ L = ['%s=%r' % (key, value)
854
+ for key, value in self.__dict__.items()]
855
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
856
+
857
+ def __eq__(self, other):
858
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
859
+
860
+ def __ne__(self, other):
861
+ return not (self == other)
862
+
863
+
864
+ class JoinMetadataUpload(object):
865
+ """
866
+ Attributes:
867
+ - join
868
+
869
+ """
870
+ thrift_spec = None
871
+
872
+
873
+ def __init__(self, join = None,):
874
+ self.join = join
875
+
876
+ def read(self, iprot):
877
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
878
+ iprot._fast_decode(self, iprot, [self.__class__, self.thrift_spec])
879
+ return
880
+ iprot.readStructBegin()
881
+ while True:
882
+ (fname, ftype, fid) = iprot.readFieldBegin()
883
+ if ftype == TType.STOP:
884
+ break
885
+ if fid == 2:
886
+ if ftype == TType.STRUCT:
887
+ self.join = gen_thrift.api.ttypes.Join()
888
+ self.join.read(iprot)
889
+ else:
890
+ iprot.skip(ftype)
891
+ else:
892
+ iprot.skip(ftype)
893
+ iprot.readFieldEnd()
894
+ iprot.readStructEnd()
895
+
896
+ def write(self, oprot):
897
+ self.validate()
898
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
899
+ oprot.trans.write(oprot._fast_encode(self, [self.__class__, self.thrift_spec]))
900
+ return
901
+ oprot.writeStructBegin('JoinMetadataUpload')
902
+ if self.join is not None:
903
+ oprot.writeFieldBegin('join', TType.STRUCT, 2)
904
+ self.join.write(oprot)
905
+ oprot.writeFieldEnd()
906
+ oprot.writeFieldStop()
907
+ oprot.writeStructEnd()
908
+
909
+ def validate(self):
910
+ return
911
+
912
+ def __repr__(self):
913
+ L = ['%s=%r' % (key, value)
914
+ for key, value in self.__dict__.items()]
915
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
916
+
917
+ def __eq__(self, other):
918
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
919
+
920
+ def __ne__(self, other):
921
+ return not (self == other)
922
+
923
+
924
+ class ExternalSourceSensorNode(object):
925
+ """
926
+ Attributes:
927
+ - metaData
928
+ - sourceTableDependency
929
+ - retryCount
930
+ - retryIntervalMin
931
+
932
+ """
933
+ thrift_spec = None
934
+
935
+
936
+ def __init__(self, metaData = None, sourceTableDependency = None, retryCount = None, retryIntervalMin = None,):
937
+ self.metaData = metaData
938
+ self.sourceTableDependency = sourceTableDependency
939
+ self.retryCount = retryCount
940
+ self.retryIntervalMin = retryIntervalMin
941
+
942
+ def read(self, iprot):
943
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
944
+ iprot._fast_decode(self, iprot, [self.__class__, self.thrift_spec])
945
+ return
946
+ iprot.readStructBegin()
947
+ while True:
948
+ (fname, ftype, fid) = iprot.readFieldBegin()
949
+ if ftype == TType.STOP:
950
+ break
951
+ if fid == 1:
952
+ if ftype == TType.STRUCT:
953
+ self.metaData = gen_thrift.api.ttypes.MetaData()
954
+ self.metaData.read(iprot)
955
+ else:
956
+ iprot.skip(ftype)
957
+ elif fid == 2:
958
+ if ftype == TType.STRUCT:
959
+ self.sourceTableDependency = gen_thrift.common.ttypes.TableDependency()
960
+ self.sourceTableDependency.read(iprot)
961
+ else:
962
+ iprot.skip(ftype)
963
+ elif fid == 3:
964
+ if ftype == TType.I64:
965
+ self.retryCount = iprot.readI64()
966
+ else:
967
+ iprot.skip(ftype)
968
+ elif fid == 4:
969
+ if ftype == TType.I64:
970
+ self.retryIntervalMin = iprot.readI64()
971
+ else:
972
+ iprot.skip(ftype)
973
+ else:
974
+ iprot.skip(ftype)
975
+ iprot.readFieldEnd()
976
+ iprot.readStructEnd()
977
+
978
+ def write(self, oprot):
979
+ self.validate()
980
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
981
+ oprot.trans.write(oprot._fast_encode(self, [self.__class__, self.thrift_spec]))
982
+ return
983
+ oprot.writeStructBegin('ExternalSourceSensorNode')
984
+ if self.metaData is not None:
985
+ oprot.writeFieldBegin('metaData', TType.STRUCT, 1)
986
+ self.metaData.write(oprot)
987
+ oprot.writeFieldEnd()
988
+ if self.sourceTableDependency is not None:
989
+ oprot.writeFieldBegin('sourceTableDependency', TType.STRUCT, 2)
990
+ self.sourceTableDependency.write(oprot)
991
+ oprot.writeFieldEnd()
992
+ if self.retryCount is not None:
993
+ oprot.writeFieldBegin('retryCount', TType.I64, 3)
994
+ oprot.writeI64(self.retryCount)
995
+ oprot.writeFieldEnd()
996
+ if self.retryIntervalMin is not None:
997
+ oprot.writeFieldBegin('retryIntervalMin', TType.I64, 4)
998
+ oprot.writeI64(self.retryIntervalMin)
999
+ oprot.writeFieldEnd()
1000
+ oprot.writeFieldStop()
1001
+ oprot.writeStructEnd()
1002
+
1003
+ def validate(self):
1004
+ return
1005
+
1006
+ def __repr__(self):
1007
+ L = ['%s=%r' % (key, value)
1008
+ for key, value in self.__dict__.items()]
1009
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
1010
+
1011
+ def __eq__(self, other):
1012
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
1013
+
1014
+ def __ne__(self, other):
1015
+ return not (self == other)
1016
+
1017
+
1018
+ class NodeContent(object):
1019
+ """
1020
+ Attributes:
1021
+ - sourceWithFilter
1022
+ - joinBootstrap
1023
+ - joinPart
1024
+ - joinMerge
1025
+ - joinDerivation
1026
+ - labelJoin
1027
+ - monolithJoin
1028
+ - stagingQuery
1029
+ - joinMetadataUpload
1030
+ - externalSourceSensor
1031
+ - groupByBackfill
1032
+ - groupByUpload
1033
+ - groupByStreaming
1034
+ - groupByUploadToKV
1035
+ - stagingQueryBackfill
1036
+
1037
+ """
1038
+ thrift_spec = None
1039
+
1040
+
1041
+ def __init__(self, sourceWithFilter = None, joinBootstrap = None, joinPart = None, joinMerge = None, joinDerivation = None, labelJoin = None, monolithJoin = None, stagingQuery = None, joinMetadataUpload = None, externalSourceSensor = None, groupByBackfill = None, groupByUpload = None, groupByStreaming = None, groupByUploadToKV = None, stagingQueryBackfill = None,):
1042
+ self.sourceWithFilter = sourceWithFilter
1043
+ self.joinBootstrap = joinBootstrap
1044
+ self.joinPart = joinPart
1045
+ self.joinMerge = joinMerge
1046
+ self.joinDerivation = joinDerivation
1047
+ self.labelJoin = labelJoin
1048
+ self.monolithJoin = monolithJoin
1049
+ self.stagingQuery = stagingQuery
1050
+ self.joinMetadataUpload = joinMetadataUpload
1051
+ self.externalSourceSensor = externalSourceSensor
1052
+ self.groupByBackfill = groupByBackfill
1053
+ self.groupByUpload = groupByUpload
1054
+ self.groupByStreaming = groupByStreaming
1055
+ self.groupByUploadToKV = groupByUploadToKV
1056
+ self.stagingQueryBackfill = stagingQueryBackfill
1057
+
1058
+ def read(self, iprot):
1059
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
1060
+ iprot._fast_decode(self, iprot, [self.__class__, self.thrift_spec])
1061
+ return
1062
+ iprot.readStructBegin()
1063
+ while True:
1064
+ (fname, ftype, fid) = iprot.readFieldBegin()
1065
+ if ftype == TType.STOP:
1066
+ break
1067
+ if fid == 1:
1068
+ if ftype == TType.STRUCT:
1069
+ self.sourceWithFilter = SourceWithFilterNode()
1070
+ self.sourceWithFilter.read(iprot)
1071
+ else:
1072
+ iprot.skip(ftype)
1073
+ elif fid == 2:
1074
+ if ftype == TType.STRUCT:
1075
+ self.joinBootstrap = JoinBootstrapNode()
1076
+ self.joinBootstrap.read(iprot)
1077
+ else:
1078
+ iprot.skip(ftype)
1079
+ elif fid == 3:
1080
+ if ftype == TType.STRUCT:
1081
+ self.joinPart = JoinPartNode()
1082
+ self.joinPart.read(iprot)
1083
+ else:
1084
+ iprot.skip(ftype)
1085
+ elif fid == 4:
1086
+ if ftype == TType.STRUCT:
1087
+ self.joinMerge = JoinMergeNode()
1088
+ self.joinMerge.read(iprot)
1089
+ else:
1090
+ iprot.skip(ftype)
1091
+ elif fid == 5:
1092
+ if ftype == TType.STRUCT:
1093
+ self.joinDerivation = JoinDerivationNode()
1094
+ self.joinDerivation.read(iprot)
1095
+ else:
1096
+ iprot.skip(ftype)
1097
+ elif fid == 6:
1098
+ if ftype == TType.STRUCT:
1099
+ self.labelJoin = LabelJoinNode()
1100
+ self.labelJoin.read(iprot)
1101
+ else:
1102
+ iprot.skip(ftype)
1103
+ elif fid == 7:
1104
+ if ftype == TType.STRUCT:
1105
+ self.monolithJoin = MonolithJoinNode()
1106
+ self.monolithJoin.read(iprot)
1107
+ else:
1108
+ iprot.skip(ftype)
1109
+ elif fid == 8:
1110
+ if ftype == TType.STRUCT:
1111
+ self.stagingQuery = StagingQueryNode()
1112
+ self.stagingQuery.read(iprot)
1113
+ else:
1114
+ iprot.skip(ftype)
1115
+ elif fid == 10:
1116
+ if ftype == TType.STRUCT:
1117
+ self.joinMetadataUpload = JoinMetadataUpload()
1118
+ self.joinMetadataUpload.read(iprot)
1119
+ else:
1120
+ iprot.skip(ftype)
1121
+ elif fid == 11:
1122
+ if ftype == TType.STRUCT:
1123
+ self.externalSourceSensor = ExternalSourceSensorNode()
1124
+ self.externalSourceSensor.read(iprot)
1125
+ else:
1126
+ iprot.skip(ftype)
1127
+ elif fid == 100:
1128
+ if ftype == TType.STRUCT:
1129
+ self.groupByBackfill = GroupByBackfillNode()
1130
+ self.groupByBackfill.read(iprot)
1131
+ else:
1132
+ iprot.skip(ftype)
1133
+ elif fid == 101:
1134
+ if ftype == TType.STRUCT:
1135
+ self.groupByUpload = GroupByUploadNode()
1136
+ self.groupByUpload.read(iprot)
1137
+ else:
1138
+ iprot.skip(ftype)
1139
+ elif fid == 102:
1140
+ if ftype == TType.STRUCT:
1141
+ self.groupByStreaming = GroupByStreamingNode()
1142
+ self.groupByStreaming.read(iprot)
1143
+ else:
1144
+ iprot.skip(ftype)
1145
+ elif fid == 103:
1146
+ if ftype == TType.STRUCT:
1147
+ self.groupByUploadToKV = GroupByUploadToKVNode()
1148
+ self.groupByUploadToKV.read(iprot)
1149
+ else:
1150
+ iprot.skip(ftype)
1151
+ elif fid == 200:
1152
+ if ftype == TType.STRUCT:
1153
+ self.stagingQueryBackfill = gen_thrift.api.ttypes.StagingQuery()
1154
+ self.stagingQueryBackfill.read(iprot)
1155
+ else:
1156
+ iprot.skip(ftype)
1157
+ else:
1158
+ iprot.skip(ftype)
1159
+ iprot.readFieldEnd()
1160
+ iprot.readStructEnd()
1161
+
1162
+ def write(self, oprot):
1163
+ self.validate()
1164
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
1165
+ oprot.trans.write(oprot._fast_encode(self, [self.__class__, self.thrift_spec]))
1166
+ return
1167
+ oprot.writeStructBegin('NodeContent')
1168
+ if self.sourceWithFilter is not None:
1169
+ oprot.writeFieldBegin('sourceWithFilter', TType.STRUCT, 1)
1170
+ self.sourceWithFilter.write(oprot)
1171
+ oprot.writeFieldEnd()
1172
+ if self.joinBootstrap is not None:
1173
+ oprot.writeFieldBegin('joinBootstrap', TType.STRUCT, 2)
1174
+ self.joinBootstrap.write(oprot)
1175
+ oprot.writeFieldEnd()
1176
+ if self.joinPart is not None:
1177
+ oprot.writeFieldBegin('joinPart', TType.STRUCT, 3)
1178
+ self.joinPart.write(oprot)
1179
+ oprot.writeFieldEnd()
1180
+ if self.joinMerge is not None:
1181
+ oprot.writeFieldBegin('joinMerge', TType.STRUCT, 4)
1182
+ self.joinMerge.write(oprot)
1183
+ oprot.writeFieldEnd()
1184
+ if self.joinDerivation is not None:
1185
+ oprot.writeFieldBegin('joinDerivation', TType.STRUCT, 5)
1186
+ self.joinDerivation.write(oprot)
1187
+ oprot.writeFieldEnd()
1188
+ if self.labelJoin is not None:
1189
+ oprot.writeFieldBegin('labelJoin', TType.STRUCT, 6)
1190
+ self.labelJoin.write(oprot)
1191
+ oprot.writeFieldEnd()
1192
+ if self.monolithJoin is not None:
1193
+ oprot.writeFieldBegin('monolithJoin', TType.STRUCT, 7)
1194
+ self.monolithJoin.write(oprot)
1195
+ oprot.writeFieldEnd()
1196
+ if self.stagingQuery is not None:
1197
+ oprot.writeFieldBegin('stagingQuery', TType.STRUCT, 8)
1198
+ self.stagingQuery.write(oprot)
1199
+ oprot.writeFieldEnd()
1200
+ if self.joinMetadataUpload is not None:
1201
+ oprot.writeFieldBegin('joinMetadataUpload', TType.STRUCT, 10)
1202
+ self.joinMetadataUpload.write(oprot)
1203
+ oprot.writeFieldEnd()
1204
+ if self.externalSourceSensor is not None:
1205
+ oprot.writeFieldBegin('externalSourceSensor', TType.STRUCT, 11)
1206
+ self.externalSourceSensor.write(oprot)
1207
+ oprot.writeFieldEnd()
1208
+ if self.groupByBackfill is not None:
1209
+ oprot.writeFieldBegin('groupByBackfill', TType.STRUCT, 100)
1210
+ self.groupByBackfill.write(oprot)
1211
+ oprot.writeFieldEnd()
1212
+ if self.groupByUpload is not None:
1213
+ oprot.writeFieldBegin('groupByUpload', TType.STRUCT, 101)
1214
+ self.groupByUpload.write(oprot)
1215
+ oprot.writeFieldEnd()
1216
+ if self.groupByStreaming is not None:
1217
+ oprot.writeFieldBegin('groupByStreaming', TType.STRUCT, 102)
1218
+ self.groupByStreaming.write(oprot)
1219
+ oprot.writeFieldEnd()
1220
+ if self.groupByUploadToKV is not None:
1221
+ oprot.writeFieldBegin('groupByUploadToKV', TType.STRUCT, 103)
1222
+ self.groupByUploadToKV.write(oprot)
1223
+ oprot.writeFieldEnd()
1224
+ if self.stagingQueryBackfill is not None:
1225
+ oprot.writeFieldBegin('stagingQueryBackfill', TType.STRUCT, 200)
1226
+ self.stagingQueryBackfill.write(oprot)
1227
+ oprot.writeFieldEnd()
1228
+ oprot.writeFieldStop()
1229
+ oprot.writeStructEnd()
1230
+
1231
+ def validate(self):
1232
+ return
1233
+
1234
+ def __repr__(self):
1235
+ L = ['%s=%r' % (key, value)
1236
+ for key, value in self.__dict__.items()]
1237
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
1238
+
1239
+ def __eq__(self, other):
1240
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
1241
+
1242
+ def __ne__(self, other):
1243
+ return not (self == other)
1244
+
1245
+
1246
+ class Node(object):
1247
+ """
1248
+ Attributes:
1249
+ - metaData
1250
+ - content
1251
+ - semanticHash
1252
+ - isLongRunning
1253
+
1254
+ """
1255
+ thrift_spec = None
1256
+
1257
+
1258
+ def __init__(self, metaData = None, content = None, semanticHash = None, isLongRunning = None,):
1259
+ self.metaData = metaData
1260
+ self.content = content
1261
+ self.semanticHash = semanticHash
1262
+ self.isLongRunning = isLongRunning
1263
+
1264
+ def read(self, iprot):
1265
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
1266
+ iprot._fast_decode(self, iprot, [self.__class__, self.thrift_spec])
1267
+ return
1268
+ iprot.readStructBegin()
1269
+ while True:
1270
+ (fname, ftype, fid) = iprot.readFieldBegin()
1271
+ if ftype == TType.STOP:
1272
+ break
1273
+ if fid == 1:
1274
+ if ftype == TType.STRUCT:
1275
+ self.metaData = gen_thrift.api.ttypes.MetaData()
1276
+ self.metaData.read(iprot)
1277
+ else:
1278
+ iprot.skip(ftype)
1279
+ elif fid == 2:
1280
+ if ftype == TType.STRUCT:
1281
+ self.content = NodeContent()
1282
+ self.content.read(iprot)
1283
+ else:
1284
+ iprot.skip(ftype)
1285
+ elif fid == 3:
1286
+ if ftype == TType.STRING:
1287
+ self.semanticHash = iprot.readString().decode('utf-8', errors='replace') if sys.version_info[0] == 2 else iprot.readString()
1288
+ else:
1289
+ iprot.skip(ftype)
1290
+ elif fid == 4:
1291
+ if ftype == TType.BOOL:
1292
+ self.isLongRunning = iprot.readBool()
1293
+ else:
1294
+ iprot.skip(ftype)
1295
+ else:
1296
+ iprot.skip(ftype)
1297
+ iprot.readFieldEnd()
1298
+ iprot.readStructEnd()
1299
+
1300
+ def write(self, oprot):
1301
+ self.validate()
1302
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
1303
+ oprot.trans.write(oprot._fast_encode(self, [self.__class__, self.thrift_spec]))
1304
+ return
1305
+ oprot.writeStructBegin('Node')
1306
+ if self.metaData is not None:
1307
+ oprot.writeFieldBegin('metaData', TType.STRUCT, 1)
1308
+ self.metaData.write(oprot)
1309
+ oprot.writeFieldEnd()
1310
+ if self.content is not None:
1311
+ oprot.writeFieldBegin('content', TType.STRUCT, 2)
1312
+ self.content.write(oprot)
1313
+ oprot.writeFieldEnd()
1314
+ if self.semanticHash is not None:
1315
+ oprot.writeFieldBegin('semanticHash', TType.STRING, 3)
1316
+ oprot.writeString(self.semanticHash.encode('utf-8') if sys.version_info[0] == 2 else self.semanticHash)
1317
+ oprot.writeFieldEnd()
1318
+ if self.isLongRunning is not None:
1319
+ oprot.writeFieldBegin('isLongRunning', TType.BOOL, 4)
1320
+ oprot.writeBool(self.isLongRunning)
1321
+ oprot.writeFieldEnd()
1322
+ oprot.writeFieldStop()
1323
+ oprot.writeStructEnd()
1324
+
1325
+ def validate(self):
1326
+ return
1327
+
1328
+ def __repr__(self):
1329
+ L = ['%s=%r' % (key, value)
1330
+ for key, value in self.__dict__.items()]
1331
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
1332
+
1333
+ def __eq__(self, other):
1334
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
1335
+
1336
+ def __ne__(self, other):
1337
+ return not (self == other)
1338
+
1339
+
1340
+ class ConfPlan(object):
1341
+ """
1342
+ Attributes:
1343
+ - nodes
1344
+ - terminalNodeNames
1345
+
1346
+ """
1347
+ thrift_spec = None
1348
+
1349
+
1350
+ def __init__(self, nodes = None, terminalNodeNames = None,):
1351
+ self.nodes = nodes
1352
+ self.terminalNodeNames = terminalNodeNames
1353
+
1354
+ def read(self, iprot):
1355
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
1356
+ iprot._fast_decode(self, iprot, [self.__class__, self.thrift_spec])
1357
+ return
1358
+ iprot.readStructBegin()
1359
+ while True:
1360
+ (fname, ftype, fid) = iprot.readFieldBegin()
1361
+ if ftype == TType.STOP:
1362
+ break
1363
+ if fid == 1:
1364
+ if ftype == TType.LIST:
1365
+ self.nodes = []
1366
+ (_etype35, _size32) = iprot.readListBegin()
1367
+ for _i36 in range(_size32):
1368
+ _elem37 = Node()
1369
+ _elem37.read(iprot)
1370
+ self.nodes.append(_elem37)
1371
+ iprot.readListEnd()
1372
+ else:
1373
+ iprot.skip(ftype)
1374
+ elif fid == 2:
1375
+ if ftype == TType.MAP:
1376
+ self.terminalNodeNames = {}
1377
+ (_ktype39, _vtype40, _size38) = iprot.readMapBegin()
1378
+ for _i42 in range(_size38):
1379
+ _key43 = iprot.readI32()
1380
+ _val44 = iprot.readString().decode('utf-8', errors='replace') if sys.version_info[0] == 2 else iprot.readString()
1381
+ self.terminalNodeNames[_key43] = _val44
1382
+ iprot.readMapEnd()
1383
+ else:
1384
+ iprot.skip(ftype)
1385
+ else:
1386
+ iprot.skip(ftype)
1387
+ iprot.readFieldEnd()
1388
+ iprot.readStructEnd()
1389
+
1390
+ def write(self, oprot):
1391
+ self.validate()
1392
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
1393
+ oprot.trans.write(oprot._fast_encode(self, [self.__class__, self.thrift_spec]))
1394
+ return
1395
+ oprot.writeStructBegin('ConfPlan')
1396
+ if self.nodes is not None:
1397
+ oprot.writeFieldBegin('nodes', TType.LIST, 1)
1398
+ oprot.writeListBegin(TType.STRUCT, len(self.nodes))
1399
+ for iter45 in self.nodes:
1400
+ iter45.write(oprot)
1401
+ oprot.writeListEnd()
1402
+ oprot.writeFieldEnd()
1403
+ if self.terminalNodeNames is not None:
1404
+ oprot.writeFieldBegin('terminalNodeNames', TType.MAP, 2)
1405
+ oprot.writeMapBegin(TType.I32, TType.STRING, len(self.terminalNodeNames))
1406
+ for kiter46, viter47 in self.terminalNodeNames.items():
1407
+ oprot.writeI32(kiter46)
1408
+ oprot.writeString(viter47.encode('utf-8') if sys.version_info[0] == 2 else viter47)
1409
+ oprot.writeMapEnd()
1410
+ oprot.writeFieldEnd()
1411
+ oprot.writeFieldStop()
1412
+ oprot.writeStructEnd()
1413
+
1414
+ def validate(self):
1415
+ return
1416
+
1417
+ def __repr__(self):
1418
+ L = ['%s=%r' % (key, value)
1419
+ for key, value in self.__dict__.items()]
1420
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
1421
+
1422
+ def __eq__(self, other):
1423
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
1424
+
1425
+ def __ne__(self, other):
1426
+ return not (self == other)
1427
+
1428
+
1429
+ class NodeMeta(object):
1430
+ """
1431
+ Attributes:
1432
+ - name
1433
+ - hash
1434
+ - deps
1435
+ - continuous
1436
+ - stepSize
1437
+ - outputTable
1438
+ - retries
1439
+
1440
+ """
1441
+ thrift_spec = None
1442
+
1443
+
1444
+ def __init__(self, name = None, hash = None, deps = None, continuous = None, stepSize = None, outputTable = None, retries = None,):
1445
+ self.name = name
1446
+ self.hash = hash
1447
+ self.deps = deps
1448
+ self.continuous = continuous
1449
+ self.stepSize = stepSize
1450
+ self.outputTable = outputTable
1451
+ self.retries = retries
1452
+
1453
+ def read(self, iprot):
1454
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
1455
+ iprot._fast_decode(self, iprot, [self.__class__, self.thrift_spec])
1456
+ return
1457
+ iprot.readStructBegin()
1458
+ while True:
1459
+ (fname, ftype, fid) = iprot.readFieldBegin()
1460
+ if ftype == TType.STOP:
1461
+ break
1462
+ if fid == 1:
1463
+ if ftype == TType.STRING:
1464
+ self.name = iprot.readString().decode('utf-8', errors='replace') if sys.version_info[0] == 2 else iprot.readString()
1465
+ else:
1466
+ iprot.skip(ftype)
1467
+ elif fid == 2:
1468
+ if ftype == TType.STRING:
1469
+ self.hash = iprot.readString().decode('utf-8', errors='replace') if sys.version_info[0] == 2 else iprot.readString()
1470
+ else:
1471
+ iprot.skip(ftype)
1472
+ elif fid == 3:
1473
+ if ftype == TType.LIST:
1474
+ self.deps = []
1475
+ (_etype51, _size48) = iprot.readListBegin()
1476
+ for _i52 in range(_size48):
1477
+ _elem53 = gen_thrift.common.ttypes.TableDependency()
1478
+ _elem53.read(iprot)
1479
+ self.deps.append(_elem53)
1480
+ iprot.readListEnd()
1481
+ else:
1482
+ iprot.skip(ftype)
1483
+ elif fid == 4:
1484
+ if ftype == TType.BOOL:
1485
+ self.continuous = iprot.readBool()
1486
+ else:
1487
+ iprot.skip(ftype)
1488
+ elif fid == 5:
1489
+ if ftype == TType.I32:
1490
+ self.stepSize = iprot.readI32()
1491
+ else:
1492
+ iprot.skip(ftype)
1493
+ elif fid == 6:
1494
+ if ftype == TType.STRING:
1495
+ self.outputTable = iprot.readString().decode('utf-8', errors='replace') if sys.version_info[0] == 2 else iprot.readString()
1496
+ else:
1497
+ iprot.skip(ftype)
1498
+ elif fid == 7:
1499
+ if ftype == TType.I32:
1500
+ self.retries = iprot.readI32()
1501
+ else:
1502
+ iprot.skip(ftype)
1503
+ else:
1504
+ iprot.skip(ftype)
1505
+ iprot.readFieldEnd()
1506
+ iprot.readStructEnd()
1507
+
1508
+ def write(self, oprot):
1509
+ self.validate()
1510
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
1511
+ oprot.trans.write(oprot._fast_encode(self, [self.__class__, self.thrift_spec]))
1512
+ return
1513
+ oprot.writeStructBegin('NodeMeta')
1514
+ if self.name is not None:
1515
+ oprot.writeFieldBegin('name', TType.STRING, 1)
1516
+ oprot.writeString(self.name.encode('utf-8') if sys.version_info[0] == 2 else self.name)
1517
+ oprot.writeFieldEnd()
1518
+ if self.hash is not None:
1519
+ oprot.writeFieldBegin('hash', TType.STRING, 2)
1520
+ oprot.writeString(self.hash.encode('utf-8') if sys.version_info[0] == 2 else self.hash)
1521
+ oprot.writeFieldEnd()
1522
+ if self.deps is not None:
1523
+ oprot.writeFieldBegin('deps', TType.LIST, 3)
1524
+ oprot.writeListBegin(TType.STRUCT, len(self.deps))
1525
+ for iter54 in self.deps:
1526
+ iter54.write(oprot)
1527
+ oprot.writeListEnd()
1528
+ oprot.writeFieldEnd()
1529
+ if self.continuous is not None:
1530
+ oprot.writeFieldBegin('continuous', TType.BOOL, 4)
1531
+ oprot.writeBool(self.continuous)
1532
+ oprot.writeFieldEnd()
1533
+ if self.stepSize is not None:
1534
+ oprot.writeFieldBegin('stepSize', TType.I32, 5)
1535
+ oprot.writeI32(self.stepSize)
1536
+ oprot.writeFieldEnd()
1537
+ if self.outputTable is not None:
1538
+ oprot.writeFieldBegin('outputTable', TType.STRING, 6)
1539
+ oprot.writeString(self.outputTable.encode('utf-8') if sys.version_info[0] == 2 else self.outputTable)
1540
+ oprot.writeFieldEnd()
1541
+ if self.retries is not None:
1542
+ oprot.writeFieldBegin('retries', TType.I32, 7)
1543
+ oprot.writeI32(self.retries)
1544
+ oprot.writeFieldEnd()
1545
+ oprot.writeFieldStop()
1546
+ oprot.writeStructEnd()
1547
+
1548
+ def validate(self):
1549
+ return
1550
+
1551
+ def __repr__(self):
1552
+ L = ['%s=%r' % (key, value)
1553
+ for key, value in self.__dict__.items()]
1554
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
1555
+
1556
+ def __eq__(self, other):
1557
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
1558
+
1559
+ def __ne__(self, other):
1560
+ return not (self == other)
1561
+
1562
+
1563
+ class WorkflowPlan(object):
1564
+ """
1565
+ Attributes:
1566
+ - nodes
1567
+ - terminalNode
1568
+
1569
+ """
1570
+ thrift_spec = None
1571
+
1572
+
1573
+ def __init__(self, nodes = None, terminalNode = None,):
1574
+ self.nodes = nodes
1575
+ self.terminalNode = terminalNode
1576
+
1577
+ def read(self, iprot):
1578
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
1579
+ iprot._fast_decode(self, iprot, [self.__class__, self.thrift_spec])
1580
+ return
1581
+ iprot.readStructBegin()
1582
+ while True:
1583
+ (fname, ftype, fid) = iprot.readFieldBegin()
1584
+ if ftype == TType.STOP:
1585
+ break
1586
+ if fid == 1:
1587
+ if ftype == TType.LIST:
1588
+ self.nodes = []
1589
+ (_etype58, _size55) = iprot.readListBegin()
1590
+ for _i59 in range(_size55):
1591
+ _elem60 = NodeMeta()
1592
+ _elem60.read(iprot)
1593
+ self.nodes.append(_elem60)
1594
+ iprot.readListEnd()
1595
+ else:
1596
+ iprot.skip(ftype)
1597
+ elif fid == 2:
1598
+ if ftype == TType.STRING:
1599
+ self.terminalNode = iprot.readString().decode('utf-8', errors='replace') if sys.version_info[0] == 2 else iprot.readString()
1600
+ else:
1601
+ iprot.skip(ftype)
1602
+ else:
1603
+ iprot.skip(ftype)
1604
+ iprot.readFieldEnd()
1605
+ iprot.readStructEnd()
1606
+
1607
+ def write(self, oprot):
1608
+ self.validate()
1609
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
1610
+ oprot.trans.write(oprot._fast_encode(self, [self.__class__, self.thrift_spec]))
1611
+ return
1612
+ oprot.writeStructBegin('WorkflowPlan')
1613
+ if self.nodes is not None:
1614
+ oprot.writeFieldBegin('nodes', TType.LIST, 1)
1615
+ oprot.writeListBegin(TType.STRUCT, len(self.nodes))
1616
+ for iter61 in self.nodes:
1617
+ iter61.write(oprot)
1618
+ oprot.writeListEnd()
1619
+ oprot.writeFieldEnd()
1620
+ if self.terminalNode is not None:
1621
+ oprot.writeFieldBegin('terminalNode', TType.STRING, 2)
1622
+ oprot.writeString(self.terminalNode.encode('utf-8') if sys.version_info[0] == 2 else self.terminalNode)
1623
+ oprot.writeFieldEnd()
1624
+ oprot.writeFieldStop()
1625
+ oprot.writeStructEnd()
1626
+
1627
+ def validate(self):
1628
+ return
1629
+
1630
+ def __repr__(self):
1631
+ L = ['%s=%r' % (key, value)
1632
+ for key, value in self.__dict__.items()]
1633
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
1634
+
1635
+ def __eq__(self, other):
1636
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
1637
+
1638
+ def __ne__(self, other):
1639
+ return not (self == other)
1640
+ all_structs.append(SourceWithFilterNode)
1641
+ SourceWithFilterNode.thrift_spec = (
1642
+ None, # 0
1643
+ None, # 1
1644
+ (2, TType.STRUCT, 'source', [gen_thrift.api.ttypes.Source, None], None, ), # 2
1645
+ (3, TType.MAP, 'excludeKeys', (TType.STRING, 'UTF8', TType.LIST, (TType.STRING, 'UTF8', False), False), None, ), # 3
1646
+ )
1647
+ all_structs.append(JoinBootstrapNode)
1648
+ JoinBootstrapNode.thrift_spec = (
1649
+ None, # 0
1650
+ None, # 1
1651
+ (2, TType.STRUCT, 'join', [gen_thrift.api.ttypes.Join, None], None, ), # 2
1652
+ )
1653
+ all_structs.append(JoinMergeNode)
1654
+ JoinMergeNode.thrift_spec = (
1655
+ None, # 0
1656
+ None, # 1
1657
+ (2, TType.STRUCT, 'join', [gen_thrift.api.ttypes.Join, None], None, ), # 2
1658
+ (3, TType.STRUCT, 'productionJoin', [gen_thrift.api.ttypes.Join, None], None, ), # 3
1659
+ )
1660
+ all_structs.append(JoinDerivationNode)
1661
+ JoinDerivationNode.thrift_spec = (
1662
+ None, # 0
1663
+ None, # 1
1664
+ (2, TType.STRUCT, 'join', [gen_thrift.api.ttypes.Join, None], None, ), # 2
1665
+ )
1666
+ all_structs.append(JoinPartNode)
1667
+ JoinPartNode.thrift_spec = (
1668
+ None, # 0
1669
+ None, # 1
1670
+ (2, TType.STRING, 'leftSourceTable', 'UTF8', None, ), # 2
1671
+ (3, TType.I32, 'leftDataModel', None, None, ), # 3
1672
+ (4, TType.STRUCT, 'joinPart', [gen_thrift.api.ttypes.JoinPart, None], None, ), # 4
1673
+ (5, TType.MAP, 'skewKeys', (TType.STRING, 'UTF8', TType.LIST, (TType.STRING, 'UTF8', False), False), None, ), # 5
1674
+ (6, TType.STRUCT, 'productionJoinPart', [gen_thrift.api.ttypes.JoinPart, None], None, ), # 6
1675
+ )
1676
+ all_structs.append(LabelJoinNode)
1677
+ LabelJoinNode.thrift_spec = (
1678
+ None, # 0
1679
+ None, # 1
1680
+ (2, TType.STRUCT, 'join', [gen_thrift.api.ttypes.Join, None], None, ), # 2
1681
+ )
1682
+ all_structs.append(MonolithJoinNode)
1683
+ MonolithJoinNode.thrift_spec = (
1684
+ None, # 0
1685
+ (1, TType.STRUCT, 'join', [gen_thrift.api.ttypes.Join, None], None, ), # 1
1686
+ )
1687
+ all_structs.append(StagingQueryNode)
1688
+ StagingQueryNode.thrift_spec = (
1689
+ None, # 0
1690
+ None, # 1
1691
+ (2, TType.STRUCT, 'stagingQuery', [gen_thrift.api.ttypes.StagingQuery, None], None, ), # 2
1692
+ )
1693
+ all_structs.append(GroupByBackfillNode)
1694
+ GroupByBackfillNode.thrift_spec = (
1695
+ None, # 0
1696
+ None, # 1
1697
+ (2, TType.STRUCT, 'groupBy', [gen_thrift.api.ttypes.GroupBy, None], None, ), # 2
1698
+ )
1699
+ all_structs.append(GroupByUploadNode)
1700
+ GroupByUploadNode.thrift_spec = (
1701
+ None, # 0
1702
+ None, # 1
1703
+ (2, TType.STRUCT, 'groupBy', [gen_thrift.api.ttypes.GroupBy, None], None, ), # 2
1704
+ )
1705
+ all_structs.append(GroupByUploadToKVNode)
1706
+ GroupByUploadToKVNode.thrift_spec = (
1707
+ None, # 0
1708
+ None, # 1
1709
+ (2, TType.STRUCT, 'groupBy', [gen_thrift.api.ttypes.GroupBy, None], None, ), # 2
1710
+ )
1711
+ all_structs.append(GroupByStreamingNode)
1712
+ GroupByStreamingNode.thrift_spec = (
1713
+ None, # 0
1714
+ None, # 1
1715
+ (2, TType.STRUCT, 'groupBy', [gen_thrift.api.ttypes.GroupBy, None], None, ), # 2
1716
+ )
1717
+ all_structs.append(JoinMetadataUpload)
1718
+ JoinMetadataUpload.thrift_spec = (
1719
+ None, # 0
1720
+ None, # 1
1721
+ (2, TType.STRUCT, 'join', [gen_thrift.api.ttypes.Join, None], None, ), # 2
1722
+ )
1723
+ all_structs.append(ExternalSourceSensorNode)
1724
+ ExternalSourceSensorNode.thrift_spec = (
1725
+ None, # 0
1726
+ (1, TType.STRUCT, 'metaData', [gen_thrift.api.ttypes.MetaData, None], None, ), # 1
1727
+ (2, TType.STRUCT, 'sourceTableDependency', [gen_thrift.common.ttypes.TableDependency, None], None, ), # 2
1728
+ (3, TType.I64, 'retryCount', None, None, ), # 3
1729
+ (4, TType.I64, 'retryIntervalMin', None, None, ), # 4
1730
+ )
1731
+ all_structs.append(NodeContent)
1732
+ NodeContent.thrift_spec = (
1733
+ None, # 0
1734
+ (1, TType.STRUCT, 'sourceWithFilter', [SourceWithFilterNode, None], None, ), # 1
1735
+ (2, TType.STRUCT, 'joinBootstrap', [JoinBootstrapNode, None], None, ), # 2
1736
+ (3, TType.STRUCT, 'joinPart', [JoinPartNode, None], None, ), # 3
1737
+ (4, TType.STRUCT, 'joinMerge', [JoinMergeNode, None], None, ), # 4
1738
+ (5, TType.STRUCT, 'joinDerivation', [JoinDerivationNode, None], None, ), # 5
1739
+ (6, TType.STRUCT, 'labelJoin', [LabelJoinNode, None], None, ), # 6
1740
+ (7, TType.STRUCT, 'monolithJoin', [MonolithJoinNode, None], None, ), # 7
1741
+ (8, TType.STRUCT, 'stagingQuery', [StagingQueryNode, None], None, ), # 8
1742
+ None, # 9
1743
+ (10, TType.STRUCT, 'joinMetadataUpload', [JoinMetadataUpload, None], None, ), # 10
1744
+ (11, TType.STRUCT, 'externalSourceSensor', [ExternalSourceSensorNode, None], None, ), # 11
1745
+ None, # 12
1746
+ None, # 13
1747
+ None, # 14
1748
+ None, # 15
1749
+ None, # 16
1750
+ None, # 17
1751
+ None, # 18
1752
+ None, # 19
1753
+ None, # 20
1754
+ None, # 21
1755
+ None, # 22
1756
+ None, # 23
1757
+ None, # 24
1758
+ None, # 25
1759
+ None, # 26
1760
+ None, # 27
1761
+ None, # 28
1762
+ None, # 29
1763
+ None, # 30
1764
+ None, # 31
1765
+ None, # 32
1766
+ None, # 33
1767
+ None, # 34
1768
+ None, # 35
1769
+ None, # 36
1770
+ None, # 37
1771
+ None, # 38
1772
+ None, # 39
1773
+ None, # 40
1774
+ None, # 41
1775
+ None, # 42
1776
+ None, # 43
1777
+ None, # 44
1778
+ None, # 45
1779
+ None, # 46
1780
+ None, # 47
1781
+ None, # 48
1782
+ None, # 49
1783
+ None, # 50
1784
+ None, # 51
1785
+ None, # 52
1786
+ None, # 53
1787
+ None, # 54
1788
+ None, # 55
1789
+ None, # 56
1790
+ None, # 57
1791
+ None, # 58
1792
+ None, # 59
1793
+ None, # 60
1794
+ None, # 61
1795
+ None, # 62
1796
+ None, # 63
1797
+ None, # 64
1798
+ None, # 65
1799
+ None, # 66
1800
+ None, # 67
1801
+ None, # 68
1802
+ None, # 69
1803
+ None, # 70
1804
+ None, # 71
1805
+ None, # 72
1806
+ None, # 73
1807
+ None, # 74
1808
+ None, # 75
1809
+ None, # 76
1810
+ None, # 77
1811
+ None, # 78
1812
+ None, # 79
1813
+ None, # 80
1814
+ None, # 81
1815
+ None, # 82
1816
+ None, # 83
1817
+ None, # 84
1818
+ None, # 85
1819
+ None, # 86
1820
+ None, # 87
1821
+ None, # 88
1822
+ None, # 89
1823
+ None, # 90
1824
+ None, # 91
1825
+ None, # 92
1826
+ None, # 93
1827
+ None, # 94
1828
+ None, # 95
1829
+ None, # 96
1830
+ None, # 97
1831
+ None, # 98
1832
+ None, # 99
1833
+ (100, TType.STRUCT, 'groupByBackfill', [GroupByBackfillNode, None], None, ), # 100
1834
+ (101, TType.STRUCT, 'groupByUpload', [GroupByUploadNode, None], None, ), # 101
1835
+ (102, TType.STRUCT, 'groupByStreaming', [GroupByStreamingNode, None], None, ), # 102
1836
+ (103, TType.STRUCT, 'groupByUploadToKV', [GroupByUploadToKVNode, None], None, ), # 103
1837
+ None, # 104
1838
+ None, # 105
1839
+ None, # 106
1840
+ None, # 107
1841
+ None, # 108
1842
+ None, # 109
1843
+ None, # 110
1844
+ None, # 111
1845
+ None, # 112
1846
+ None, # 113
1847
+ None, # 114
1848
+ None, # 115
1849
+ None, # 116
1850
+ None, # 117
1851
+ None, # 118
1852
+ None, # 119
1853
+ None, # 120
1854
+ None, # 121
1855
+ None, # 122
1856
+ None, # 123
1857
+ None, # 124
1858
+ None, # 125
1859
+ None, # 126
1860
+ None, # 127
1861
+ None, # 128
1862
+ None, # 129
1863
+ None, # 130
1864
+ None, # 131
1865
+ None, # 132
1866
+ None, # 133
1867
+ None, # 134
1868
+ None, # 135
1869
+ None, # 136
1870
+ None, # 137
1871
+ None, # 138
1872
+ None, # 139
1873
+ None, # 140
1874
+ None, # 141
1875
+ None, # 142
1876
+ None, # 143
1877
+ None, # 144
1878
+ None, # 145
1879
+ None, # 146
1880
+ None, # 147
1881
+ None, # 148
1882
+ None, # 149
1883
+ None, # 150
1884
+ None, # 151
1885
+ None, # 152
1886
+ None, # 153
1887
+ None, # 154
1888
+ None, # 155
1889
+ None, # 156
1890
+ None, # 157
1891
+ None, # 158
1892
+ None, # 159
1893
+ None, # 160
1894
+ None, # 161
1895
+ None, # 162
1896
+ None, # 163
1897
+ None, # 164
1898
+ None, # 165
1899
+ None, # 166
1900
+ None, # 167
1901
+ None, # 168
1902
+ None, # 169
1903
+ None, # 170
1904
+ None, # 171
1905
+ None, # 172
1906
+ None, # 173
1907
+ None, # 174
1908
+ None, # 175
1909
+ None, # 176
1910
+ None, # 177
1911
+ None, # 178
1912
+ None, # 179
1913
+ None, # 180
1914
+ None, # 181
1915
+ None, # 182
1916
+ None, # 183
1917
+ None, # 184
1918
+ None, # 185
1919
+ None, # 186
1920
+ None, # 187
1921
+ None, # 188
1922
+ None, # 189
1923
+ None, # 190
1924
+ None, # 191
1925
+ None, # 192
1926
+ None, # 193
1927
+ None, # 194
1928
+ None, # 195
1929
+ None, # 196
1930
+ None, # 197
1931
+ None, # 198
1932
+ None, # 199
1933
+ (200, TType.STRUCT, 'stagingQueryBackfill', [gen_thrift.api.ttypes.StagingQuery, None], None, ), # 200
1934
+ )
1935
+ all_structs.append(Node)
1936
+ Node.thrift_spec = (
1937
+ None, # 0
1938
+ (1, TType.STRUCT, 'metaData', [gen_thrift.api.ttypes.MetaData, None], None, ), # 1
1939
+ (2, TType.STRUCT, 'content', [NodeContent, None], None, ), # 2
1940
+ (3, TType.STRING, 'semanticHash', 'UTF8', None, ), # 3
1941
+ (4, TType.BOOL, 'isLongRunning', None, None, ), # 4
1942
+ )
1943
+ all_structs.append(ConfPlan)
1944
+ ConfPlan.thrift_spec = (
1945
+ None, # 0
1946
+ (1, TType.LIST, 'nodes', (TType.STRUCT, [Node, None], False), None, ), # 1
1947
+ (2, TType.MAP, 'terminalNodeNames', (TType.I32, None, TType.STRING, 'UTF8', False), None, ), # 2
1948
+ )
1949
+ all_structs.append(NodeMeta)
1950
+ NodeMeta.thrift_spec = (
1951
+ None, # 0
1952
+ (1, TType.STRING, 'name', 'UTF8', None, ), # 1
1953
+ (2, TType.STRING, 'hash', 'UTF8', None, ), # 2
1954
+ (3, TType.LIST, 'deps', (TType.STRUCT, [gen_thrift.common.ttypes.TableDependency, None], False), None, ), # 3
1955
+ (4, TType.BOOL, 'continuous', None, None, ), # 4
1956
+ (5, TType.I32, 'stepSize', None, None, ), # 5
1957
+ (6, TType.STRING, 'outputTable', 'UTF8', None, ), # 6
1958
+ (7, TType.I32, 'retries', None, None, ), # 7
1959
+ )
1960
+ all_structs.append(WorkflowPlan)
1961
+ WorkflowPlan.thrift_spec = (
1962
+ None, # 0
1963
+ (1, TType.LIST, 'nodes', (TType.STRUCT, [NodeMeta, None], False), None, ), # 1
1964
+ (2, TType.STRING, 'terminalNode', 'UTF8', None, ), # 2
1965
+ )
1966
+ fix_spec(all_structs)
1967
+ del all_structs