Repository: hive Updated Branches: refs/heads/branch-3 b7834e679 -> 3c71687d1
http://git-wip-us.apache.org/repos/asf/hive/blob/3c71687d/ql/src/test/results/clientpositive/masking_disablecbo_2.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/masking_disablecbo_2.q.out b/ql/src/test/results/clientpositive/masking_disablecbo_2.q.out index bb58b08..4ce94b7 100644 --- a/ql/src/test/results/clientpositive/masking_disablecbo_2.q.out +++ b/ql/src/test/results/clientpositive/masking_disablecbo_2.q.out @@ -15,21 +15,41 @@ PREHOOK: type: QUERY POSTHOOK: query: explain select * from masking_test_n13 POSTHOOK: type: QUERY STAGE DEPENDENCIES: - Stage-0 is a root stage + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 STAGE PLANS: + Stage: Stage-1 + Map Reduce + Map Operator Tree: + TableScan + alias: src + Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: UDFToInteger(key) (type: int), value (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE + Filter Operator + predicate: (((_col0 % 2) = 0) and (_col0 < 10)) (type: boolean) + Statistics: Num rows: 83 Data size: 881 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: _col0 (type: int), reverse(_col1) (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 83 Data size: 881 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 83 Data size: 881 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.SequenceFileInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + Execution mode: vectorized + Stage: Stage-0 Fetch Operator limit: -1 Processor Tree: - TableScan - alias: src - Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: UDFToInteger(key) (type: int), value (type: string) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE - ListSink + ListSink PREHOOK: query: select * from masking_test_n13 PREHOOK: type: QUERY @@ -41,506 +61,12 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@masking_test_n13 POSTHOOK: Input: default@src #### A masked pattern was here #### -238 val_238 -86 val_86 -311 val_311 -27 val_27 -165 val_165 -409 val_409 -255 val_255 -278 val_278 -98 val_98 -484 val_484 -265 val_265 -193 val_193 -401 val_401 -150 val_150 -273 val_273 -224 val_224 -369 val_369 -66 val_66 -128 val_128 -213 val_213 -146 val_146 -406 val_406 -429 val_429 -374 val_374 -152 val_152 -469 val_469 -145 val_145 -495 val_495 -37 val_37 -327 val_327 -281 val_281 -277 val_277 -209 val_209 -15 val_15 -82 val_82 -403 val_403 -166 val_166 -417 val_417 -430 val_430 -252 val_252 -292 val_292 -219 val_219 -287 val_287 -153 val_153 -193 val_193 -338 val_338 -446 val_446 -459 val_459 -394 val_394 -237 val_237 -482 val_482 -174 val_174 -413 val_413 -494 val_494 -207 val_207 -199 val_199 -466 val_466 -208 val_208 -174 val_174 -399 val_399 -396 val_396 -247 val_247 -417 val_417 -489 val_489 -162 val_162 -377 val_377 -397 val_397 -309 val_309 -365 val_365 -266 val_266 -439 val_439 -342 val_342 -367 val_367 -325 val_325 -167 val_167 -195 val_195 -475 val_475 -17 val_17 -113 val_113 -155 val_155 -203 val_203 -339 val_339 -0 val_0 -455 val_455 -128 val_128 -311 val_311 -316 val_316 -57 val_57 -302 val_302 -205 val_205 -149 val_149 -438 val_438 -345 val_345 -129 val_129 -170 val_170 -20 val_20 -489 val_489 -157 val_157 -378 val_378 -221 val_221 -92 val_92 -111 val_111 -47 val_47 -72 val_72 -4 val_4 -280 val_280 -35 val_35 -427 val_427 -277 val_277 -208 val_208 -356 val_356 -399 val_399 -169 val_169 -382 val_382 -498 val_498 -125 val_125 -386 val_386 -437 val_437 -469 val_469 -192 val_192 -286 val_286 -187 val_187 -176 val_176 -54 val_54 -459 val_459 -51 val_51 -138 val_138 -103 val_103 -239 val_239 -213 val_213 -216 val_216 -430 val_430 -278 val_278 -176 val_176 -289 val_289 -221 val_221 -65 val_65 -318 val_318 -332 val_332 -311 val_311 -275 val_275 -137 val_137 -241 val_241 -83 val_83 -333 val_333 -180 val_180 -284 val_284 -12 val_12 -230 val_230 -181 val_181 -67 val_67 -260 val_260 -404 val_404 -384 val_384 -489 val_489 -353 val_353 -373 val_373 -272 val_272 -138 val_138 -217 val_217 -84 val_84 -348 val_348 -466 val_466 -58 val_58 -8 val_8 -411 val_411 -230 val_230 -208 val_208 -348 val_348 -24 val_24 -463 val_463 -431 val_431 -179 val_179 -172 val_172 -42 val_42 -129 val_129 -158 val_158 -119 val_119 -496 val_496 -0 val_0 -322 val_322 -197 val_197 -468 val_468 -393 val_393 -454 val_454 -100 val_100 -298 val_298 -199 val_199 -191 val_191 -418 val_418 -96 val_96 -26 val_26 -165 val_165 -327 val_327 -230 val_230 -205 val_205 -120 val_120 -131 val_131 -51 val_51 -404 val_404 -43 val_43 -436 val_436 -156 val_156 -469 val_469 -468 val_468 -308 val_308 -95 val_95 -196 val_196 -288 val_288 -481 val_481 -457 val_457 -98 val_98 -282 val_282 -197 val_197 -187 val_187 -318 val_318 -318 val_318 -409 val_409 -470 val_470 -137 val_137 -369 val_369 -316 val_316 -169 val_169 -413 val_413 -85 val_85 -77 val_77 -0 val_0 -490 val_490 -87 val_87 -364 val_364 -179 val_179 -118 val_118 -134 val_134 -395 val_395 -282 val_282 -138 val_138 -238 val_238 -419 val_419 -15 val_15 -118 val_118 -72 val_72 -90 val_90 -307 val_307 -19 val_19 -435 val_435 -10 val_10 -277 val_277 -273 val_273 -306 val_306 -224 val_224 -309 val_309 -389 val_389 -327 val_327 -242 val_242 -369 val_369 -392 val_392 -272 val_272 -331 val_331 -401 val_401 -242 val_242 -452 val_452 -177 val_177 -226 val_226 -5 val_5 -497 val_497 -402 val_402 -396 val_396 -317 val_317 -395 val_395 -58 val_58 -35 val_35 -336 val_336 -95 val_95 -11 val_11 -168 val_168 -34 val_34 -229 val_229 -233 val_233 -143 val_143 -472 val_472 -322 val_322 -498 val_498 -160 val_160 -195 val_195 -42 val_42 -321 val_321 -430 val_430 -119 val_119 -489 val_489 -458 val_458 -78 val_78 -76 val_76 -41 val_41 -223 val_223 -492 val_492 -149 val_149 -449 val_449 -218 val_218 -228 val_228 -138 val_138 -453 val_453 -30 val_30 -209 val_209 -64 val_64 -468 val_468 -76 val_76 -74 val_74 -342 val_342 -69 val_69 -230 val_230 -33 val_33 -368 val_368 -103 val_103 -296 val_296 -113 val_113 -216 val_216 -367 val_367 -344 val_344 -167 val_167 -274 val_274 -219 val_219 -239 val_239 -485 val_485 -116 val_116 -223 val_223 -256 val_256 -263 val_263 -70 val_70 -487 val_487 -480 val_480 -401 val_401 -288 val_288 -191 val_191 -5 val_5 -244 val_244 -438 val_438 -128 val_128 -467 val_467 -432 val_432 -202 val_202 -316 val_316 -229 val_229 -469 val_469 -463 val_463 -280 val_280 -2 val_2 -35 val_35 -283 val_283 -331 val_331 -235 val_235 -80 val_80 -44 val_44 -193 val_193 -321 val_321 -335 val_335 -104 val_104 -466 val_466 -366 val_366 -175 val_175 -403 val_403 -483 val_483 -53 val_53 -105 val_105 -257 val_257 -406 val_406 -409 val_409 -190 val_190 -406 val_406 -401 val_401 -114 val_114 -258 val_258 -90 val_90 -203 val_203 -262 val_262 -348 val_348 -424 val_424 -12 val_12 -396 val_396 -201 val_201 -217 val_217 -164 val_164 -431 val_431 -454 val_454 -478 val_478 -298 val_298 -125 val_125 -431 val_431 -164 val_164 -424 val_424 -187 val_187 -382 val_382 -5 val_5 -70 val_70 -397 val_397 -480 val_480 -291 val_291 -24 val_24 -351 val_351 -255 val_255 -104 val_104 -70 val_70 -163 val_163 -438 val_438 -119 val_119 -414 val_414 -200 val_200 -491 val_491 -237 val_237 -439 val_439 -360 val_360 -248 val_248 -479 val_479 -305 val_305 -417 val_417 -199 val_199 -444 val_444 -120 val_120 -429 val_429 -169 val_169 -443 val_443 -323 val_323 -325 val_325 -277 val_277 -230 val_230 -478 val_478 -178 val_178 -468 val_468 -310 val_310 -317 val_317 -333 val_333 -493 val_493 -460 val_460 -207 val_207 -249 val_249 -265 val_265 -480 val_480 -83 val_83 -136 val_136 -353 val_353 -172 val_172 -214 val_214 -462 val_462 -233 val_233 -406 val_406 -133 val_133 -175 val_175 -189 val_189 -454 val_454 -375 val_375 -401 val_401 -421 val_421 -407 val_407 -384 val_384 -256 val_256 -26 val_26 -134 val_134 -67 val_67 -384 val_384 -379 val_379 -18 val_18 -462 val_462 -492 val_492 -100 val_100 -298 val_298 -9 val_9 -341 val_341 -498 val_498 -146 val_146 -458 val_458 -362 val_362 -186 val_186 -285 val_285 -348 val_348 -167 val_167 -18 val_18 -273 val_273 -183 val_183 -281 val_281 -344 val_344 -97 val_97 -469 val_469 -315 val_315 -84 val_84 -28 val_28 -37 val_37 -448 val_448 -152 val_152 -348 val_348 -307 val_307 -194 val_194 -414 val_414 -477 val_477 -222 val_222 -126 val_126 -90 val_90 -169 val_169 -403 val_403 -400 val_400 -200 val_200 -97 val_97 +0 0_lav +4 4_lav +8 8_lav +0 0_lav +0 0_lav +2 2_lav PREHOOK: query: explain select * from masking_test_n13 where key > 0 PREHOOK: type: QUERY POSTHOOK: query: explain select * from masking_test_n13 where key > 0 @@ -561,15 +87,19 @@ STAGE PLANS: outputColumnNames: _col0, _col1 Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE Filter Operator - predicate: (_col0 > 0) (type: boolean) - Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE - File Output Operator - compressed: false - Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE - table: - input format: org.apache.hadoop.mapred.SequenceFileInputFormat - output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat - serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + predicate: (((_col0 % 2) = 0) and (_col0 < 10) and (_col0 > 0)) (type: boolean) + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: _col0 (type: int), reverse(_col1) (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.SequenceFileInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe Execution mode: vectorized Stage: Stage-0 @@ -588,503 +118,9 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@masking_test_n13 POSTHOOK: Input: default@src #### A masked pattern was here #### -238 val_238 -86 val_86 -311 val_311 -27 val_27 -165 val_165 -409 val_409 -255 val_255 -278 val_278 -98 val_98 -484 val_484 -265 val_265 -193 val_193 -401 val_401 -150 val_150 -273 val_273 -224 val_224 -369 val_369 -66 val_66 -128 val_128 -213 val_213 -146 val_146 -406 val_406 -429 val_429 -374 val_374 -152 val_152 -469 val_469 -145 val_145 -495 val_495 -37 val_37 -327 val_327 -281 val_281 -277 val_277 -209 val_209 -15 val_15 -82 val_82 -403 val_403 -166 val_166 -417 val_417 -430 val_430 -252 val_252 -292 val_292 -219 val_219 -287 val_287 -153 val_153 -193 val_193 -338 val_338 -446 val_446 -459 val_459 -394 val_394 -237 val_237 -482 val_482 -174 val_174 -413 val_413 -494 val_494 -207 val_207 -199 val_199 -466 val_466 -208 val_208 -174 val_174 -399 val_399 -396 val_396 -247 val_247 -417 val_417 -489 val_489 -162 val_162 -377 val_377 -397 val_397 -309 val_309 -365 val_365 -266 val_266 -439 val_439 -342 val_342 -367 val_367 -325 val_325 -167 val_167 -195 val_195 -475 val_475 -17 val_17 -113 val_113 -155 val_155 -203 val_203 -339 val_339 -455 val_455 -128 val_128 -311 val_311 -316 val_316 -57 val_57 -302 val_302 -205 val_205 -149 val_149 -438 val_438 -345 val_345 -129 val_129 -170 val_170 -20 val_20 -489 val_489 -157 val_157 -378 val_378 -221 val_221 -92 val_92 -111 val_111 -47 val_47 -72 val_72 -4 val_4 -280 val_280 -35 val_35 -427 val_427 -277 val_277 -208 val_208 -356 val_356 -399 val_399 -169 val_169 -382 val_382 -498 val_498 -125 val_125 -386 val_386 -437 val_437 -469 val_469 -192 val_192 -286 val_286 -187 val_187 -176 val_176 -54 val_54 -459 val_459 -51 val_51 -138 val_138 -103 val_103 -239 val_239 -213 val_213 -216 val_216 -430 val_430 -278 val_278 -176 val_176 -289 val_289 -221 val_221 -65 val_65 -318 val_318 -332 val_332 -311 val_311 -275 val_275 -137 val_137 -241 val_241 -83 val_83 -333 val_333 -180 val_180 -284 val_284 -12 val_12 -230 val_230 -181 val_181 -67 val_67 -260 val_260 -404 val_404 -384 val_384 -489 val_489 -353 val_353 -373 val_373 -272 val_272 -138 val_138 -217 val_217 -84 val_84 -348 val_348 -466 val_466 -58 val_58 -8 val_8 -411 val_411 -230 val_230 -208 val_208 -348 val_348 -24 val_24 -463 val_463 -431 val_431 -179 val_179 -172 val_172 -42 val_42 -129 val_129 -158 val_158 -119 val_119 -496 val_496 -322 val_322 -197 val_197 -468 val_468 -393 val_393 -454 val_454 -100 val_100 -298 val_298 -199 val_199 -191 val_191 -418 val_418 -96 val_96 -26 val_26 -165 val_165 -327 val_327 -230 val_230 -205 val_205 -120 val_120 -131 val_131 -51 val_51 -404 val_404 -43 val_43 -436 val_436 -156 val_156 -469 val_469 -468 val_468 -308 val_308 -95 val_95 -196 val_196 -288 val_288 -481 val_481 -457 val_457 -98 val_98 -282 val_282 -197 val_197 -187 val_187 -318 val_318 -318 val_318 -409 val_409 -470 val_470 -137 val_137 -369 val_369 -316 val_316 -169 val_169 -413 val_413 -85 val_85 -77 val_77 -490 val_490 -87 val_87 -364 val_364 -179 val_179 -118 val_118 -134 val_134 -395 val_395 -282 val_282 -138 val_138 -238 val_238 -419 val_419 -15 val_15 -118 val_118 -72 val_72 -90 val_90 -307 val_307 -19 val_19 -435 val_435 -10 val_10 -277 val_277 -273 val_273 -306 val_306 -224 val_224 -309 val_309 -389 val_389 -327 val_327 -242 val_242 -369 val_369 -392 val_392 -272 val_272 -331 val_331 -401 val_401 -242 val_242 -452 val_452 -177 val_177 -226 val_226 -5 val_5 -497 val_497 -402 val_402 -396 val_396 -317 val_317 -395 val_395 -58 val_58 -35 val_35 -336 val_336 -95 val_95 -11 val_11 -168 val_168 -34 val_34 -229 val_229 -233 val_233 -143 val_143 -472 val_472 -322 val_322 -498 val_498 -160 val_160 -195 val_195 -42 val_42 -321 val_321 -430 val_430 -119 val_119 -489 val_489 -458 val_458 -78 val_78 -76 val_76 -41 val_41 -223 val_223 -492 val_492 -149 val_149 -449 val_449 -218 val_218 -228 val_228 -138 val_138 -453 val_453 -30 val_30 -209 val_209 -64 val_64 -468 val_468 -76 val_76 -74 val_74 -342 val_342 -69 val_69 -230 val_230 -33 val_33 -368 val_368 -103 val_103 -296 val_296 -113 val_113 -216 val_216 -367 val_367 -344 val_344 -167 val_167 -274 val_274 -219 val_219 -239 val_239 -485 val_485 -116 val_116 -223 val_223 -256 val_256 -263 val_263 -70 val_70 -487 val_487 -480 val_480 -401 val_401 -288 val_288 -191 val_191 -5 val_5 -244 val_244 -438 val_438 -128 val_128 -467 val_467 -432 val_432 -202 val_202 -316 val_316 -229 val_229 -469 val_469 -463 val_463 -280 val_280 -2 val_2 -35 val_35 -283 val_283 -331 val_331 -235 val_235 -80 val_80 -44 val_44 -193 val_193 -321 val_321 -335 val_335 -104 val_104 -466 val_466 -366 val_366 -175 val_175 -403 val_403 -483 val_483 -53 val_53 -105 val_105 -257 val_257 -406 val_406 -409 val_409 -190 val_190 -406 val_406 -401 val_401 -114 val_114 -258 val_258 -90 val_90 -203 val_203 -262 val_262 -348 val_348 -424 val_424 -12 val_12 -396 val_396 -201 val_201 -217 val_217 -164 val_164 -431 val_431 -454 val_454 -478 val_478 -298 val_298 -125 val_125 -431 val_431 -164 val_164 -424 val_424 -187 val_187 -382 val_382 -5 val_5 -70 val_70 -397 val_397 -480 val_480 -291 val_291 -24 val_24 -351 val_351 -255 val_255 -104 val_104 -70 val_70 -163 val_163 -438 val_438 -119 val_119 -414 val_414 -200 val_200 -491 val_491 -237 val_237 -439 val_439 -360 val_360 -248 val_248 -479 val_479 -305 val_305 -417 val_417 -199 val_199 -444 val_444 -120 val_120 -429 val_429 -169 val_169 -443 val_443 -323 val_323 -325 val_325 -277 val_277 -230 val_230 -478 val_478 -178 val_178 -468 val_468 -310 val_310 -317 val_317 -333 val_333 -493 val_493 -460 val_460 -207 val_207 -249 val_249 -265 val_265 -480 val_480 -83 val_83 -136 val_136 -353 val_353 -172 val_172 -214 val_214 -462 val_462 -233 val_233 -406 val_406 -133 val_133 -175 val_175 -189 val_189 -454 val_454 -375 val_375 -401 val_401 -421 val_421 -407 val_407 -384 val_384 -256 val_256 -26 val_26 -134 val_134 -67 val_67 -384 val_384 -379 val_379 -18 val_18 -462 val_462 -492 val_492 -100 val_100 -298 val_298 -9 val_9 -341 val_341 -498 val_498 -146 val_146 -458 val_458 -362 val_362 -186 val_186 -285 val_285 -348 val_348 -167 val_167 -18 val_18 -273 val_273 -183 val_183 -281 val_281 -344 val_344 -97 val_97 -469 val_469 -315 val_315 -84 val_84 -28 val_28 -37 val_37 -448 val_448 -152 val_152 -348 val_348 -307 val_307 -194 val_194 -414 val_414 -477 val_477 -222 val_222 -126 val_126 -90 val_90 -169 val_169 -403 val_403 -400 val_400 -200 val_200 -97 val_97 +4 4_lav +8 8_lav +2 2_lav PREHOOK: query: explain select * from src a join masking_test_n13 b on a.key = b.value where b.key > 0 PREHOOK: type: QUERY POSTHOOK: query: explain select * from src a join masking_test_n13 b on a.key = b.value where b.key > 0 @@ -1100,22 +136,26 @@ STAGE PLANS: TableScan alias: src Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE - Filter Operator - predicate: value is not null (type: boolean) + Select Operator + expressions: UDFToInteger(key) (type: int), value (type: string) + outputColumnNames: _col0, _col1 Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: UDFToInteger(key) (type: int), value (type: string) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE - Filter Operator - predicate: (_col0 > 0) (type: boolean) - Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: _col1 (type: string) - sort order: + - Map-reduce partition columns: _col1 (type: string) - Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE - value expressions: _col0 (type: int) + Filter Operator + predicate: (((_col0 % 2) = 0) and (_col0 < 10) and (_col0 > 0)) (type: boolean) + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: _col0 (type: int), reverse(_col1) (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + Filter Operator + predicate: _col1 is not null (type: boolean) + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col1 (type: string) + sort order: + + Map-reduce partition columns: _col1 (type: string) + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + value expressions: _col0 (type: int) TableScan alias: a Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE @@ -1175,33 +215,41 @@ STAGE PLANS: outputColumnNames: _col0, _col1 Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE Filter Operator - predicate: UDFToDouble(_col0) is not null (type: boolean) - Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: UDFToDouble(_col0) (type: double) - sort order: + - Map-reduce partition columns: UDFToDouble(_col0) (type: double) - Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE - value expressions: _col0 (type: int), _col1 (type: string) + predicate: (((_col0 % 2) = 0) and (_col0 < 10) and UDFToDouble(_col0) is not null) (type: boolean) + Statistics: Num rows: 83 Data size: 881 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: _col0 (type: int), reverse(_col1) (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 83 Data size: 881 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: UDFToDouble(_col0) (type: double) + sort order: + + Map-reduce partition columns: UDFToDouble(_col0) (type: double) + Statistics: Num rows: 83 Data size: 881 Basic stats: COMPLETE Column stats: NONE + value expressions: _col0 (type: int), _col1 (type: string) TableScan alias: src Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE - Filter Operator - predicate: UDFToDouble(value) is not null (type: boolean) + Select Operator + expressions: UDFToInteger(key) (type: int), value (type: string) + outputColumnNames: _col0, _col1 Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: UDFToInteger(key) (type: int), value (type: string) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE - Filter Operator - predicate: (_col0 > 0) (type: boolean) - Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: UDFToDouble(_col1) (type: double) - sort order: + - Map-reduce partition columns: UDFToDouble(_col1) (type: double) - Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE - value expressions: _col0 (type: int) + Filter Operator + predicate: (((_col0 % 2) = 0) and (_col0 < 10) and (_col0 > 0)) (type: boolean) + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: _col0 (type: int), reverse(_col1) (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + Filter Operator + predicate: UDFToDouble(_col1) is not null (type: boolean) + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: UDFToDouble(_col1) (type: double) + sort order: + + Map-reduce partition columns: UDFToDouble(_col1) (type: double) + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + value expressions: _col0 (type: int) Reduce Operator Tree: Join Operator condition map: @@ -1210,10 +258,10 @@ STAGE PLANS: 0 UDFToDouble(_col0) (type: double) 1 UDFToDouble(_col1) (type: double) outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 550 Data size: 5843 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 91 Data size: 969 Basic stats: COMPLETE Column stats: NONE File Output Operator compressed: false - Statistics: Num rows: 550 Data size: 5843 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 91 Data size: 969 Basic stats: COMPLETE Column stats: NONE table: input format: org.apache.hadoop.mapred.SequenceFileInputFormat output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat @@ -1244,18 +292,25 @@ STAGE PLANS: expressions: UDFToInteger(key) (type: int), value (type: string) outputColumnNames: _col0, _col1 Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE - Union - Statistics: Num rows: 666 Data size: 7075 Basic stats: COMPLETE Column stats: NONE - Group By Operator - keys: _col0 (type: int), _col1 (type: string) - mode: hash + Filter Operator + predicate: (((_col0 % 2) = 0) and (_col0 < 10)) (type: boolean) + Statistics: Num rows: 83 Data size: 881 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: _col0 (type: int), reverse(_col1) (type: string) outputColumnNames: _col0, _col1 - Statistics: Num rows: 666 Data size: 7075 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: _col0 (type: int), _col1 (type: string) - sort order: ++ - Map-reduce partition columns: _col0 (type: int), _col1 (type: string) - Statistics: Num rows: 666 Data size: 7075 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 83 Data size: 881 Basic stats: COMPLETE Column stats: NONE + Union + Statistics: Num rows: 110 Data size: 1167 Basic stats: COMPLETE Column stats: NONE + Group By Operator + keys: _col0 (type: int), _col1 (type: string) + mode: hash + outputColumnNames: _col0, _col1 + Statistics: Num rows: 110 Data size: 1167 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: int), _col1 (type: string) + sort order: ++ + Map-reduce partition columns: _col0 (type: int), _col1 (type: string) + Statistics: Num rows: 110 Data size: 1167 Basic stats: COMPLETE Column stats: NONE TableScan alias: src Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE @@ -1264,29 +319,33 @@ STAGE PLANS: outputColumnNames: _col0, _col1 Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE Filter Operator - predicate: (_col0 > 0) (type: boolean) - Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE - Union - Statistics: Num rows: 666 Data size: 7075 Basic stats: COMPLETE Column stats: NONE - Group By Operator - keys: _col0 (type: int), _col1 (type: string) - mode: hash - outputColumnNames: _col0, _col1 - Statistics: Num rows: 666 Data size: 7075 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: _col0 (type: int), _col1 (type: string) - sort order: ++ - Map-reduce partition columns: _col0 (type: int), _col1 (type: string) - Statistics: Num rows: 666 Data size: 7075 Basic stats: COMPLETE Column stats: NONE + predicate: (((_col0 % 2) = 0) and (_col0 < 10) and (_col0 > 0)) (type: boolean) + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: _col0 (type: int), reverse(_col1) (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + Union + Statistics: Num rows: 110 Data size: 1167 Basic stats: COMPLETE Column stats: NONE + Group By Operator + keys: _col0 (type: int), _col1 (type: string) + mode: hash + outputColumnNames: _col0, _col1 + Statistics: Num rows: 110 Data size: 1167 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: int), _col1 (type: string) + sort order: ++ + Map-reduce partition columns: _col0 (type: int), _col1 (type: string) + Statistics: Num rows: 110 Data size: 1167 Basic stats: COMPLETE Column stats: NONE Reduce Operator Tree: Group By Operator keys: KEY._col0 (type: int), KEY._col1 (type: string) mode: mergepartial outputColumnNames: _col0, _col1 - Statistics: Num rows: 333 Data size: 3537 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 55 Data size: 583 Basic stats: COMPLETE Column stats: NONE File Output Operator compressed: false - Statistics: Num rows: 333 Data size: 3537 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 55 Data size: 583 Basic stats: COMPLETE Column stats: NONE table: input format: org.apache.hadoop.mapred.SequenceFileInputFormat output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat http://git-wip-us.apache.org/repos/asf/hive/blob/3c71687d/ql/src/test/results/clientpositive/masking_disablecbo_4.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/masking_disablecbo_4.q.out b/ql/src/test/results/clientpositive/masking_disablecbo_4.q.out index 087d093..dfeeb03 100644 --- a/ql/src/test/results/clientpositive/masking_disablecbo_4.q.out +++ b/ql/src/test/results/clientpositive/masking_disablecbo_4.q.out @@ -85,15 +85,15 @@ STAGE PLANS: alias: masking_test_n3 Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE Filter Operator - predicate: (key = 5) (type: boolean) - Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE + predicate: (((key % 2) = 0) and (key < 10) and (key = 5)) (type: boolean) + Statistics: Num rows: 41 Data size: 435 Basic stats: COMPLETE Column stats: NONE Select Operator - expressions: 5 (type: int), value (type: string) + expressions: 5 (type: int), reverse(value) (type: string) outputColumnNames: _col0, _col1 - Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 41 Data size: 435 Basic stats: COMPLETE Column stats: NONE File Output Operator compressed: false - Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 41 Data size: 435 Basic stats: COMPLETE Column stats: NONE table: input format: org.apache.hadoop.mapred.SequenceFileInputFormat output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat @@ -126,15 +126,15 @@ STAGE PLANS: alias: masking_test_n3 Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE Filter Operator - predicate: (key = 5) (type: boolean) - Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE + predicate: (((key % 2) = 0) and (key < 10) and (key = 5)) (type: boolean) + Statistics: Num rows: 41 Data size: 435 Basic stats: COMPLETE Column stats: NONE Select Operator - expressions: 5 (type: int), value (type: string) + expressions: 5 (type: int), reverse(value) (type: string) outputColumnNames: _col0, _col1 - Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 41 Data size: 435 Basic stats: COMPLETE Column stats: NONE File Output Operator compressed: false - Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 41 Data size: 435 Basic stats: COMPLETE Column stats: NONE table: input format: org.apache.hadoop.mapred.SequenceFileInputFormat output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat @@ -156,19 +156,65 @@ with q1 as ( select * from masking_test_n3 where key = '5') select * from masking_test_subq_n0 POSTHOOK: type: QUERY STAGE DEPENDENCIES: - Stage-0 is a root stage + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 STAGE PLANS: + Stage: Stage-1 + Map Reduce + Map Operator Tree: + TableScan + alias: masking_test_subq_n0 + Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE + Filter Operator + predicate: UDFToDouble(key) is not null (type: boolean) + Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: UDFToDouble(key) (type: double), UDFToDouble(key) (type: double) + sort order: ++ + Map-reduce partition columns: UDFToDouble(key) (type: double), UDFToDouble(key) (type: double) + Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE + value expressions: key (type: int), value (type: string) + TableScan + alias: src + Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE + Filter Operator + predicate: UDFToDouble(key) is not null (type: boolean) + Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: key (type: string), key (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE + Group By Operator + keys: _col0 (type: string), _col1 (type: string) + mode: hash + outputColumnNames: _col0, _col1 + Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: UDFToDouble(_col0) (type: double), UDFToDouble(_col1) (type: double) + sort order: ++ + Map-reduce partition columns: UDFToDouble(_col0) (type: double), UDFToDouble(_col1) (type: double) + Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE + Reduce Operator Tree: + Join Operator + condition map: + Left Semi Join 0 to 1 + keys: + 0 UDFToDouble(key) (type: double), UDFToDouble(key) (type: double) + 1 UDFToDouble(_col0) (type: double), UDFToDouble(_col1) (type: double) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 550 Data size: 5843 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 550 Data size: 5843 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.SequenceFileInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + Stage: Stage-0 Fetch Operator limit: -1 Processor Tree: - TableScan - alias: masking_test_subq_n0 - Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: key (type: int), value (type: string) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE - ListSink + ListSink http://git-wip-us.apache.org/repos/asf/hive/blob/3c71687d/ql/src/test/results/clientpositive/union_pos_alias.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/union_pos_alias.q.out b/ql/src/test/results/clientpositive/union_pos_alias.q.out index bf9d0d4..8c80ff8 100644 --- a/ql/src/test/results/clientpositive/union_pos_alias.q.out +++ b/ql/src/test/results/clientpositive/union_pos_alias.q.out @@ -384,35 +384,41 @@ STAGE PLANS: TableScan alias: masking_test_n9 Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: key (type: int), value (type: string) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE - Union - Statistics: Num rows: 1000 Data size: 10624 Basic stats: COMPLETE Column stats: NONE - File Output Operator - compressed: false - Statistics: Num rows: 1000 Data size: 10624 Basic stats: COMPLETE Column stats: NONE - table: - input format: org.apache.hadoop.mapred.SequenceFileInputFormat - output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat - serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + Filter Operator + predicate: (((key % 2) = 0) and (key < 10)) (type: boolean) + Statistics: Num rows: 83 Data size: 881 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: key (type: int), reverse(value) (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 83 Data size: 881 Basic stats: COMPLETE Column stats: NONE + Union + Statistics: Num rows: 166 Data size: 1762 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 166 Data size: 1762 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.SequenceFileInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe TableScan alias: masking_test_n9 Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: key (type: int), value (type: string) - outputColumnNames: _col0, _col1 - Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE - Union - Statistics: Num rows: 1000 Data size: 10624 Basic stats: COMPLETE Column stats: NONE - File Output Operator - compressed: false - Statistics: Num rows: 1000 Data size: 10624 Basic stats: COMPLETE Column stats: NONE - table: - input format: org.apache.hadoop.mapred.SequenceFileInputFormat - output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat - serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + Filter Operator + predicate: (((key % 2) = 0) and (key < 10)) (type: boolean) + Statistics: Num rows: 83 Data size: 881 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: key (type: int), reverse(value) (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 83 Data size: 881 Basic stats: COMPLETE Column stats: NONE + Union + Statistics: Num rows: 166 Data size: 1762 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 166 Data size: 1762 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.SequenceFileInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe Stage: Stage-0 Fetch Operator @@ -428,1006 +434,18 @@ POSTHOOK: query: select * from masking_test_n9 union all select * from masking_ POSTHOOK: type: QUERY POSTHOOK: Input: default@masking_test_n9 #### A masked pattern was here #### -238 val_238 -238 val_238 -86 val_86 -86 val_86 -311 val_311 -311 val_311 -27 val_27 -27 val_27 -165 val_165 -165 val_165 -409 val_409 -409 val_409 -255 val_255 -255 val_255 -278 val_278 -278 val_278 -98 val_98 -98 val_98 -484 val_484 -484 val_484 -265 val_265 -265 val_265 -193 val_193 -193 val_193 -401 val_401 -401 val_401 -150 val_150 -150 val_150 -273 val_273 -273 val_273 -224 val_224 -224 val_224 -369 val_369 -369 val_369 -66 val_66 -66 val_66 -128 val_128 -128 val_128 -213 val_213 -213 val_213 -146 val_146 -146 val_146 -406 val_406 -406 val_406 -429 val_429 -429 val_429 -374 val_374 -374 val_374 -152 val_152 -152 val_152 -469 val_469 -469 val_469 -145 val_145 -145 val_145 -495 val_495 -495 val_495 -37 val_37 -37 val_37 -327 val_327 -327 val_327 -281 val_281 -281 val_281 -277 val_277 -277 val_277 -209 val_209 -209 val_209 -15 val_15 -15 val_15 -82 val_82 -82 val_82 -403 val_403 -403 val_403 -166 val_166 -166 val_166 -417 val_417 -417 val_417 -430 val_430 -430 val_430 -252 val_252 -252 val_252 -292 val_292 -292 val_292 -219 val_219 -219 val_219 -287 val_287 -287 val_287 -153 val_153 -153 val_153 -193 val_193 -193 val_193 -338 val_338 -338 val_338 -446 val_446 -446 val_446 -459 val_459 -459 val_459 -394 val_394 -394 val_394 -237 val_237 -237 val_237 -482 val_482 -482 val_482 -174 val_174 -174 val_174 -413 val_413 -413 val_413 -494 val_494 -494 val_494 -207 val_207 -207 val_207 -199 val_199 -199 val_199 -466 val_466 -466 val_466 -208 val_208 -208 val_208 -174 val_174 -174 val_174 -399 val_399 -399 val_399 -396 val_396 -396 val_396 -247 val_247 -247 val_247 -417 val_417 -417 val_417 -489 val_489 -489 val_489 -162 val_162 -162 val_162 -377 val_377 -377 val_377 -397 val_397 -397 val_397 -309 val_309 -309 val_309 -365 val_365 -365 val_365 -266 val_266 -266 val_266 -439 val_439 -439 val_439 -342 val_342 -342 val_342 -367 val_367 -367 val_367 -325 val_325 -325 val_325 -167 val_167 -167 val_167 -195 val_195 -195 val_195 -475 val_475 -475 val_475 -17 val_17 -17 val_17 -113 val_113 -113 val_113 -155 val_155 -155 val_155 -203 val_203 -203 val_203 -339 val_339 -339 val_339 -0 val_0 -0 val_0 -455 val_455 -455 val_455 -128 val_128 -128 val_128 -311 val_311 -311 val_311 -316 val_316 -316 val_316 -57 val_57 -57 val_57 -302 val_302 -302 val_302 -205 val_205 -205 val_205 -149 val_149 -149 val_149 -438 val_438 -438 val_438 -345 val_345 -345 val_345 -129 val_129 -129 val_129 -170 val_170 -170 val_170 -20 val_20 -20 val_20 -489 val_489 -489 val_489 -157 val_157 -157 val_157 -378 val_378 -378 val_378 -221 val_221 -221 val_221 -92 val_92 -92 val_92 -111 val_111 -111 val_111 -47 val_47 -47 val_47 -72 val_72 -72 val_72 -4 val_4 -4 val_4 -280 val_280 -280 val_280 -35 val_35 -35 val_35 -427 val_427 -427 val_427 -277 val_277 -277 val_277 -208 val_208 -208 val_208 -356 val_356 -356 val_356 -399 val_399 -399 val_399 -169 val_169 -169 val_169 -382 val_382 -382 val_382 -498 val_498 -498 val_498 -125 val_125 -125 val_125 -386 val_386 -386 val_386 -437 val_437 -437 val_437 -469 val_469 -469 val_469 -192 val_192 -192 val_192 -286 val_286 -286 val_286 -187 val_187 -187 val_187 -176 val_176 -176 val_176 -54 val_54 -54 val_54 -459 val_459 -459 val_459 -51 val_51 -51 val_51 -138 val_138 -138 val_138 -103 val_103 -103 val_103 -239 val_239 -239 val_239 -213 val_213 -213 val_213 -216 val_216 -216 val_216 -430 val_430 -430 val_430 -278 val_278 -278 val_278 -176 val_176 -176 val_176 -289 val_289 -289 val_289 -221 val_221 -221 val_221 -65 val_65 -65 val_65 -318 val_318 -318 val_318 -332 val_332 -332 val_332 -311 val_311 -311 val_311 -275 val_275 -275 val_275 -137 val_137 -137 val_137 -241 val_241 -241 val_241 -83 val_83 -83 val_83 -333 val_333 -333 val_333 -180 val_180 -180 val_180 -284 val_284 -284 val_284 -12 val_12 -12 val_12 -230 val_230 -230 val_230 -181 val_181 -181 val_181 -67 val_67 -67 val_67 -260 val_260 -260 val_260 -404 val_404 -404 val_404 -384 val_384 -384 val_384 -489 val_489 -489 val_489 -353 val_353 -353 val_353 -373 val_373 -373 val_373 -272 val_272 -272 val_272 -138 val_138 -138 val_138 -217 val_217 -217 val_217 -84 val_84 -84 val_84 -348 val_348 -348 val_348 -466 val_466 -466 val_466 -58 val_58 -58 val_58 -8 val_8 -8 val_8 -411 val_411 -411 val_411 -230 val_230 -230 val_230 -208 val_208 -208 val_208 -348 val_348 -348 val_348 -24 val_24 -24 val_24 -463 val_463 -463 val_463 -431 val_431 -431 val_431 -179 val_179 -179 val_179 -172 val_172 -172 val_172 -42 val_42 -42 val_42 -129 val_129 -129 val_129 -158 val_158 -158 val_158 -119 val_119 -119 val_119 -496 val_496 -496 val_496 -0 val_0 -0 val_0 -322 val_322 -322 val_322 -197 val_197 -197 val_197 -468 val_468 -468 val_468 -393 val_393 -393 val_393 -454 val_454 -454 val_454 -100 val_100 -100 val_100 -298 val_298 -298 val_298 -199 val_199 -199 val_199 -191 val_191 -191 val_191 -418 val_418 -418 val_418 -96 val_96 -96 val_96 -26 val_26 -26 val_26 -165 val_165 -165 val_165 -327 val_327 -327 val_327 -230 val_230 -230 val_230 -205 val_205 -205 val_205 -120 val_120 -120 val_120 -131 val_131 -131 val_131 -51 val_51 -51 val_51 -404 val_404 -404 val_404 -43 val_43 -43 val_43 -436 val_436 -436 val_436 -156 val_156 -156 val_156 -469 val_469 -469 val_469 -468 val_468 -468 val_468 -308 val_308 -308 val_308 -95 val_95 -95 val_95 -196 val_196 -196 val_196 -288 val_288 -288 val_288 -481 val_481 -481 val_481 -457 val_457 -457 val_457 -98 val_98 -98 val_98 -282 val_282 -282 val_282 -197 val_197 -197 val_197 -187 val_187 -187 val_187 -318 val_318 -318 val_318 -318 val_318 -318 val_318 -409 val_409 -409 val_409 -470 val_470 -470 val_470 -137 val_137 -137 val_137 -369 val_369 -369 val_369 -316 val_316 -316 val_316 -169 val_169 -169 val_169 -413 val_413 -413 val_413 -85 val_85 -85 val_85 -77 val_77 -77 val_77 -0 val_0 -0 val_0 -490 val_490 -490 val_490 -87 val_87 -87 val_87 -364 val_364 -364 val_364 -179 val_179 -179 val_179 -118 val_118 -118 val_118 -134 val_134 -134 val_134 -395 val_395 -395 val_395 -282 val_282 -282 val_282 -138 val_138 -138 val_138 -238 val_238 -238 val_238 -419 val_419 -419 val_419 -15 val_15 -15 val_15 -118 val_118 -118 val_118 -72 val_72 -72 val_72 -90 val_90 -90 val_90 -307 val_307 -307 val_307 -19 val_19 -19 val_19 -435 val_435 -435 val_435 -10 val_10 -10 val_10 -277 val_277 -277 val_277 -273 val_273 -273 val_273 -306 val_306 -306 val_306 -224 val_224 -224 val_224 -309 val_309 -309 val_309 -389 val_389 -389 val_389 -327 val_327 -327 val_327 -242 val_242 -242 val_242 -369 val_369 -369 val_369 -392 val_392 -392 val_392 -272 val_272 -272 val_272 -331 val_331 -331 val_331 -401 val_401 -401 val_401 -242 val_242 -242 val_242 -452 val_452 -452 val_452 -177 val_177 -177 val_177 -226 val_226 -226 val_226 -5 val_5 -5 val_5 -497 val_497 -497 val_497 -402 val_402 -402 val_402 -396 val_396 -396 val_396 -317 val_317 -317 val_317 -395 val_395 -395 val_395 -58 val_58 -58 val_58 -35 val_35 -35 val_35 -336 val_336 -336 val_336 -95 val_95 -95 val_95 -11 val_11 -11 val_11 -168 val_168 -168 val_168 -34 val_34 -34 val_34 -229 val_229 -229 val_229 -233 val_233 -233 val_233 -143 val_143 -143 val_143 -472 val_472 -472 val_472 -322 val_322 -322 val_322 -498 val_498 -498 val_498 -160 val_160 -160 val_160 -195 val_195 -195 val_195 -42 val_42 -42 val_42 -321 val_321 -321 val_321 -430 val_430 -430 val_430 -119 val_119 -119 val_119 -489 val_489 -489 val_489 -458 val_458 -458 val_458 -78 val_78 -78 val_78 -76 val_76 -76 val_76 -41 val_41 -41 val_41 -223 val_223 -223 val_223 -492 val_492 -492 val_492 -149 val_149 -149 val_149 -449 val_449 -449 val_449 -218 val_218 -218 val_218 -228 val_228 -228 val_228 -138 val_138 -138 val_138 -453 val_453 -453 val_453 -30 val_30 -30 val_30 -209 val_209 -209 val_209 -64 val_64 -64 val_64 -468 val_468 -468 val_468 -76 val_76 -76 val_76 -74 val_74 -74 val_74 -342 val_342 -342 val_342 -69 val_69 -69 val_69 -230 val_230 -230 val_230 -33 val_33 -33 val_33 -368 val_368 -368 val_368 -103 val_103 -103 val_103 -296 val_296 -296 val_296 -113 val_113 -113 val_113 -216 val_216 -216 val_216 -367 val_367 -367 val_367 -344 val_344 -344 val_344 -167 val_167 -167 val_167 -274 val_274 -274 val_274 -219 val_219 -219 val_219 -239 val_239 -239 val_239 -485 val_485 -485 val_485 -116 val_116 -116 val_116 -223 val_223 -223 val_223 -256 val_256 -256 val_256 -263 val_263 -263 val_263 -70 val_70 -70 val_70 -487 val_487 -487 val_487 -480 val_480 -480 val_480 -401 val_401 -401 val_401 -288 val_288 -288 val_288 -191 val_191 -191 val_191 -5 val_5 -5 val_5 -244 val_244 -244 val_244 -438 val_438 -438 val_438 -128 val_128 -128 val_128 -467 val_467 -467 val_467 -432 val_432 -432 val_432 -202 val_202 -202 val_202 -316 val_316 -316 val_316 -229 val_229 -229 val_229 -469 val_469 -469 val_469 -463 val_463 -463 val_463 -280 val_280 -280 val_280 -2 val_2 -2 val_2 -35 val_35 -35 val_35 -283 val_283 -283 val_283 -331 val_331 -331 val_331 -235 val_235 -235 val_235 -80 val_80 -80 val_80 -44 val_44 -44 val_44 -193 val_193 -193 val_193 -321 val_321 -321 val_321 -335 val_335 -335 val_335 -104 val_104 -104 val_104 -466 val_466 -466 val_466 -366 val_366 -366 val_366 -175 val_175 -175 val_175 -403 val_403 -403 val_403 -483 val_483 -483 val_483 -53 val_53 -53 val_53 -105 val_105 -105 val_105 -257 val_257 -257 val_257 -406 val_406 -406 val_406 -409 val_409 -409 val_409 -190 val_190 -190 val_190 -406 val_406 -406 val_406 -401 val_401 -401 val_401 -114 val_114 -114 val_114 -258 val_258 -258 val_258 -90 val_90 -90 val_90 -203 val_203 -203 val_203 -262 val_262 -262 val_262 -348 val_348 -348 val_348 -424 val_424 -424 val_424 -12 val_12 -12 val_12 -396 val_396 -396 val_396 -201 val_201 -201 val_201 -217 val_217 -217 val_217 -164 val_164 -164 val_164 -431 val_431 -431 val_431 -454 val_454 -454 val_454 -478 val_478 -478 val_478 -298 val_298 -298 val_298 -125 val_125 -125 val_125 -431 val_431 -431 val_431 -164 val_164 -164 val_164 -424 val_424 -424 val_424 -187 val_187 -187 val_187 -382 val_382 -382 val_382 -5 val_5 -5 val_5 -70 val_70 -70 val_70 -397 val_397 -397 val_397 -480 val_480 -480 val_480 -291 val_291 -291 val_291 -24 val_24 -24 val_24 -351 val_351 -351 val_351 -255 val_255 -255 val_255 -104 val_104 -104 val_104 -70 val_70 -70 val_70 -163 val_163 -163 val_163 -438 val_438 -438 val_438 -119 val_119 -119 val_119 -414 val_414 -414 val_414 -200 val_200 -200 val_200 -491 val_491 -491 val_491 -237 val_237 -237 val_237 -439 val_439 -439 val_439 -360 val_360 -360 val_360 -248 val_248 -248 val_248 -479 val_479 -479 val_479 -305 val_305 -305 val_305 -417 val_417 -417 val_417 -199 val_199 -199 val_199 -444 val_444 -444 val_444 -120 val_120 -120 val_120 -429 val_429 -429 val_429 -169 val_169 -169 val_169 -443 val_443 -443 val_443 -323 val_323 -323 val_323 -325 val_325 -325 val_325 -277 val_277 -277 val_277 -230 val_230 -230 val_230 -478 val_478 -478 val_478 -178 val_178 -178 val_178 -468 val_468 -468 val_468 -310 val_310 -310 val_310 -317 val_317 -317 val_317 -333 val_333 -333 val_333 -493 val_493 -493 val_493 -460 val_460 -460 val_460 -207 val_207 -207 val_207 -249 val_249 -249 val_249 -265 val_265 -265 val_265 -480 val_480 -480 val_480 -83 val_83 -83 val_83 -136 val_136 -136 val_136 -353 val_353 -353 val_353 -172 val_172 -172 val_172 -214 val_214 -214 val_214 -462 val_462 -462 val_462 -233 val_233 -233 val_233 -406 val_406 -406 val_406 -133 val_133 -133 val_133 -175 val_175 -175 val_175 -189 val_189 -189 val_189 -454 val_454 -454 val_454 -375 val_375 -375 val_375 -401 val_401 -401 val_401 -421 val_421 -421 val_421 -407 val_407 -407 val_407 -384 val_384 -384 val_384 -256 val_256 -256 val_256 -26 val_26 -26 val_26 -134 val_134 -134 val_134 -67 val_67 -67 val_67 -384 val_384 -384 val_384 -379 val_379 -379 val_379 -18 val_18 -18 val_18 -462 val_462 -462 val_462 -492 val_492 -492 val_492 -100 val_100 -100 val_100 -298 val_298 -298 val_298 -9 val_9 -9 val_9 -341 val_341 -341 val_341 -498 val_498 -498 val_498 -146 val_146 -146 val_146 -458 val_458 -458 val_458 -362 val_362 -362 val_362 -186 val_186 -186 val_186 -285 val_285 -285 val_285 -348 val_348 -348 val_348 -167 val_167 -167 val_167 -18 val_18 -18 val_18 -273 val_273 -273 val_273 -183 val_183 -183 val_183 -281 val_281 -281 val_281 -344 val_344 -344 val_344 -97 val_97 -97 val_97 -469 val_469 -469 val_469 -315 val_315 -315 val_315 -84 val_84 -84 val_84 -28 val_28 -28 val_28 -37 val_37 -37 val_37 -448 val_448 -448 val_448 -152 val_152 -152 val_152 -348 val_348 -348 val_348 -307 val_307 -307 val_307 -194 val_194 -194 val_194 -414 val_414 -414 val_414 -477 val_477 -477 val_477 -222 val_222 -222 val_222 -126 val_126 -126 val_126 -90 val_90 -90 val_90 -169 val_169 -169 val_169 -403 val_403 -403 val_403 -400 val_400 -400 val_400 -200 val_200 -200 val_200 -97 val_97 -97 val_97 +0 0_lav +0 0_lav +4 4_lav +4 4_lav +8 8_lav +8 8_lav +0 0_lav +0 0_lav +0 0_lav +0 0_lav +2 2_lav +2 2_lav PREHOOK: query: explain select key as k1, value as v1 from masking_test_n9 where key > 0 intersect all select key as k2, value as v2 from masking_test_n9 where key > 0 PREHOOK: type: QUERY @@ -1448,20 +466,24 @@ STAGE PLANS: alias: masking_test_n9 Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE Filter Operator - predicate: (key > 0) (type: boolean) - Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE - Group By Operator - aggregations: count() - keys: key (type: int), value (type: string) - mode: hash - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: _col0 (type: int), _col1 (type: string) - sort order: ++ - Map-reduce partition columns: _col0 (type: int), _col1 (type: string) - Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE - value expressions: _col2 (type: bigint) + predicate: (((key % 2) = 0) and (key < 10) and (key > 0)) (type: boolean) + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: key (type: int), reverse(value) (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + Group By Operator + aggregations: count() + keys: _col0 (type: int), _col1 (type: string) + mode: hash + outputColumnNames: _col0, _col1, _col2 + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: int), _col1 (type: string) + sort order: ++ + Map-reduce partition columns: _col0 (type: int), _col1 (type: string) + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + value expressions: _col2 (type: bigint) Execution mode: vectorized Reduce Operator Tree: Group By Operator @@ -1469,7 +491,7 @@ STAGE PLANS: keys: KEY._col0 (type: int), KEY._col1 (type: string) mode: mergepartial outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 83 Data size: 881 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 13 Data size: 137 Basic stats: COMPLETE Column stats: NONE File Output Operator compressed: false table: @@ -1482,33 +504,33 @@ STAGE PLANS: Map Operator Tree: TableScan Union - Statistics: Num rows: 166 Data size: 1762 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 26 Data size: 274 Basic stats: COMPLETE Column stats: NONE Group By Operator aggregations: min(_col2), count(_col2) keys: _col0 (type: int), _col1 (type: string) mode: hash outputColumnNames: _col0, _col1, _col2, _col3 - Statistics: Num rows: 166 Data size: 1762 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 26 Data size: 274 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: _col0 (type: int), _col1 (type: string) sort order: ++ Map-reduce partition columns: _col0 (type: int), _col1 (type: string) - Statistics: Num rows: 166 Data size: 1762 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 26 Data size: 274 Basic stats: COMPLETE Column stats: NONE value expressions: _col2 (type: bigint), _col3 (type: bigint) TableScan Union - Statistics: Num rows: 166 Data size: 1762 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 26 Data size: 274 Basic stats: COMPLETE Column stats: NONE Group By Operator aggregations: min(_col2), count(_col2) keys: _col0 (type: int), _col1 (type: string) mode: hash outputColumnNames: _col0, _col1, _col2, _col3 - Statistics: Num rows: 166 Data size: 1762 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 26 Data size: 274 Basic stats: COMPLETE Column stats: NONE Reduce Output Operator key expressions: _col0 (type: int), _col1 (type: string) sort order: ++ Map-reduce partition columns: _col0 (type: int), _col1 (type: string) - Statistics: Num rows: 166 Data size: 1762 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 26 Data size: 274 Basic stats: COMPLETE Column stats: NONE value expressions: _col2 (type: bigint), _col3 (type: bigint) Reduce Operator Tree: Group By Operator @@ -1516,7 +538,7 @@ STAGE PLANS: keys: KEY._col0 (type: int), KEY._col1 (type: string) mode: mergepartial outputColumnNames: _col0, _col1, _col2, _col3 - Statistics: Num rows: 83 Data size: 881 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 13 Data size: 137 Basic stats: COMPLETE Column stats: NONE Filter Operator predicate: (_col3 = 2L) (type: boolean) Statistics: Num rows: 1 Data size: 10 Basic stats: COMPLETE Column stats: NONE @@ -1546,20 +568,24 @@ STAGE PLANS: alias: masking_test_n9 Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE Filter Operator - predicate: (key > 0) (type: boolean) - Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE - Group By Operator - aggregations: count() - keys: key (type: int), value (type: string) - mode: hash - outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE - Reduce Output Operator - key expressions: _col0 (type: int), _col1 (type: string) - sort order: ++ - Map-reduce partition columns: _col0 (type: int), _col1 (type: string) - Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE - value expressions: _col2 (type: bigint) + predicate: (((key % 2) = 0) and (key < 10) and (key > 0)) (type: boolean) + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: key (type: int), reverse(value) (type: string) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + Group By Operator + aggregations: count() + keys: _col0 (type: int), _col1 (type: string) + mode: hash + outputColumnNames: _col0, _col1, _col2 + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: int), _col1 (type: string) + sort order: ++ + Map-reduce partition columns: _col0 (type: int), _col1 (type: string) + Statistics: Num rows: 27 Data size: 286 Basic stats: COMPLETE Column stats: NONE + value expressions: _col2 (type: bigint) Execution mode: vectorized Reduce Operator Tree: Group By Operator @@ -1567,7 +593,7 @@ STAGE PLANS: keys: KEY._col0 (type: int), KEY._col1 (type: string) mode: mergepartial outputColumnNames: _col0, _col1, _col2 - Statistics: Num rows: 83 Data size: 881 Basic stats: COMPLETE Column stats: NONE + Statistics: Num rows: 13 Data size: 137 Basic stats: COMPLETE Column stats: NONE File Output Operator compressed: false table: @@ -1589,500 +615,6 @@ POSTHOOK: query: select key as k1, value as v1 from masking_test_n9 where key > POSTHOOK: type: QUERY POSTHOOK: Input: default@masking_test_n9 #### A masked pattern was here #### -2 val_2 -4 val_4 -5 val_5 -5 val_5 -5 val_5 -8 val_8 -9 val_9 -10 val_10 -11 val_11 -12 val_12 -12 val_12 -15 val_15 -15 val_15 -17 val_17 -18 val_18 -18 val_18 -19 val_19 -20 val_20 -24 val_24 -24 val_24 -26 val_26 -26 val_26 -27 val_27 -28 val_28 -30 val_30 -33 val_33 -34 val_34 -35 val_35 -35 val_35 -35 val_35 -37 val_37 -37 val_37 -41 val_41 -42 val_42 -42 val_42 -43 val_43 -44 val_44 -47 val_47 -51 val_51 -51 val_51 -53 val_53 -54 val_54 -57 val_57 -58 val_58 -58 val_58 -64 val_64 -65 val_65 -66 val_66 -67 val_67 -67 val_67 -69 val_69 -70 val_70 -70 val_70 -70 val_70 -72 val_72 -72 val_72 -74 val_74 -76 val_76 -76 val_76 -77 val_77 -78 val_78 -80 val_80 -82 val_82 -83 val_83 -83 val_83 -84 val_84 -84 val_84 -85 val_85 -86 val_86 -87 val_87 -90 val_90 -90 val_90 -90 val_90 -92 val_92 -95 val_95 -95 val_95 -96 val_96 -97 val_97 -97 val_97 -98 val_98 -98 val_98 -100 val_100 -100 val_100 -103 val_103 -103 val_103 -104 val_104 -104 val_104 -105 val_105 -111 val_111 -113 val_113 -113 val_113 -114 val_114 -116 val_116 -118 val_118 -118 val_118 -119 val_119 -119 val_119 -119 val_119 -120 val_120 -120 val_120 -125 val_125 -125 val_125 -126 val_126 -128 val_128 -128 val_128 -128 val_128 -129 val_129 -129 val_129 -131 val_131 -133 val_133 -134 val_134 -134 val_134 -136 val_136 -137 val_137 -137 val_137 -138 val_138 -138 val_138 -138 val_138 -138 val_138 -143 val_143 -145 val_145 -146 val_146 -146 val_146 -149 val_149 -149 val_149 -150 val_150 -152 val_152 -152 val_152 -153 val_153 -155 val_155 -156 val_156 -157 val_157 -158 val_158 -160 val_160 -162 val_162 -163 val_163 -164 val_164 -164 val_164 -165 val_165 -165 val_165 -166 val_166 -167 val_167 -167 val_167 -167 val_167 -168 val_168 -169 val_169 -169 val_169 -169 val_169 -169 val_169 -170 val_170 -172 val_172 -172 val_172 -174 val_174 -174 val_174 -175 val_175 -175 val_175 -176 val_176 -176 val_176 -177 val_177 -178 val_178 -179 val_179 -179 val_179 -180 val_180 -181 val_181 -183 val_183 -186 val_186 -187 val_187 -187 val_187 -187 val_187 -189 val_189 -190 val_190 -191 val_191 -191 val_191 -192 val_192 -193 val_193 -193 val_193 -193 val_193 -194 val_194 -195 val_195 -195 val_195 -196 val_196 -197 val_197 -197 val_197 -199 val_199 -199 val_199 -199 val_199 -200 val_200 -200 val_200 -201 val_201 -202 val_202 -203 val_203 -203 val_203 -205 val_205 -205 val_205 -207 val_207 -207 val_207 -208 val_208 -208 val_208 -208 val_208 -209 val_209 -209 val_209 -213 val_213 -213 val_213 -214 val_214 -216 val_216 -216 val_216 -217 val_217 -217 val_217 -218 val_218 -219 val_219 -219 val_219 -221 val_221 -221 val_221 -222 val_222 -223 val_223 -223 val_223 -224 val_224 -224 val_224 -226 val_226 -228 val_228 -229 val_229 -229 val_229 -230 val_230 -230 val_230 -230 val_230 -230 val_230 -230 val_230 -233 val_233 -233 val_233 -235 val_235 -237 val_237 -237 val_237 -238 val_238 -238 val_238 -239 val_239 -239 val_239 -241 val_241 -242 val_242 -242 val_242 -244 val_244 -247 val_247 -248 val_248 -249 val_249 -252 val_252 -255 val_255 -255 val_255 -256 val_256 -256 val_256 -257 val_257 -258 val_258 -260 val_260 -262 val_262 -263 val_263 -265 val_265 -265 val_265 -266 val_266 -272 val_272 -272 val_272 -273 val_273 -273 val_273 -273 val_273 -274 val_274 -275 val_275 -277 val_277 -277 val_277 -277 val_277 -277 val_277 -278 val_278 -278 val_278 -280 val_280 -280 val_280 -281 val_281 -281 val_281 -282 val_282 -282 val_282 -283 val_283 -284 val_284 -285 val_285 -286 val_286 -287 val_287 -288 val_288 -288 val_288 -289 val_289 -291 val_291 -292 val_292 -296 val_296 -298 val_298 -298 val_298 -298 val_298 -302 val_302 -305 val_305 -306 val_306 -307 val_307 -307 val_307 -308 val_308 -309 val_309 -309 val_309 -310 val_310 -311 val_311 -311 val_311 -311 val_311 -315 val_315 -316 val_316 -316 val_316 -316 val_316 -317 val_317 -317 val_317 -318 val_318 -318 val_318 -318 val_318 -321 val_321 -321 val_321 -322 val_322 -322 val_322 -323 val_323 -325 val_325 -325 val_325 -327 val_327 -327 val_327 -327 val_327 -331 val_331 -331 val_331 -332 val_332 -333 val_333 -333 val_333 -335 val_335 -336 val_336 -338 val_338 -339 val_339 -341 val_341 -342 val_342 -342 val_342 -344 val_344 -344 val_344 -345 val_345 -348 val_348 -348 val_348 -348 val_348 -348 val_348 -348 val_348 -351 val_351 -353 val_353 -353 val_353 -356 val_356 -360 val_360 -362 val_362 -364 val_364 -365 val_365 -366 val_366 -367 val_367 -367 val_367 -368 val_368 -369 val_369 -369 val_369 -369 val_369 -373 val_373 -374 val_374 -375 val_375 -377 val_377 -378 val_378 -379 val_379 -382 val_382 -382 val_382 -384 val_384 -384 val_384 -384 val_384 -386 val_386 -389 val_389 -392 val_392 -393 val_393 -394 val_394 -395 val_395 -395 val_395 -396 val_396 -396 val_396 -396 val_396 -397 val_397 -397 val_397 -399 val_399 -399 val_399 -400 val_400 -401 val_401 -401 val_401 -401 val_401 -401 val_401 -401 val_401 -402 val_402 -403 val_403 -403 val_403 -403 val_403 -404 val_404 -404 val_404 -406 val_406 -406 val_406 -406 val_406 -406 val_406 -407 val_407 -409 val_409 -409 val_409 -409 val_409 -411 val_411 -413 val_413 -413 val_413 -414 val_414 -414 val_414 -417 val_417 -417 val_417 -417 val_417 -418 val_418 -419 val_419 -421 val_421 -424 val_424 -424 val_424 -427 val_427 -429 val_429 -429 val_429 -430 val_430 -430 val_430 -430 val_430 -431 val_431 -431 val_431 -431 val_431 -432 val_432 -435 val_435 -436 val_436 -437 val_437 -438 val_438 -438 val_438 -438 val_438 -439 val_439 -439 val_439 -443 val_443 -444 val_444 -446 val_446 -448 val_448 -449 val_449 -452 val_452 -453 val_453 -454 val_454 -454 val_454 -454 val_454 -455 val_455 -457 val_457 -458 val_458 -458 val_458 -459 val_459 -459 val_459 -460 val_460 -462 val_462 -462 val_462 -463 val_463 -463 val_463 -466 val_466 -466 val_466 -466 val_466 -467 val_467 -468 val_468 -468 val_468 -468 val_468 -468 val_468 -469 val_469 -469 val_469 -469 val_469 -469 val_469 -469 val_469 -470 val_470 -472 val_472 -475 val_475 -477 val_477 -478 val_478 -478 val_478 -479 val_479 -480 val_480 -480 val_480 -480 val_480 -481 val_481 -482 val_482 -483 val_483 -484 val_484 -485 val_485 -487 val_487 -489 val_489 -489 val_489 -489 val_489 -489 val_489 -490 val_490 -491 val_491 -492 val_492 -492 val_492 -493 val_493 -494 val_494 -495 val_495 -496 val_496 -497 val_497 -498 val_498 -498 val_498 -498 val_498 +2 2_lav +4 4_lav +8 8_lav