)]}'
{
  "commit": "6e5ce13c230700e06e1c6c44e3ff3854c5fec8e4",
  "tree": "db214d42b2f2682915bfe597fc01fad8f5bf0428",
  "parents": [
    "7e51c5f76880904a3855f419b7bcd3f9b5a337ed"
  ],
  "author": {
    "name": "zhangli20",
    "email": "zhangli20@kuaishou.com",
    "time": "Fri Aug 09 19:22:10 2024 +0800"
  },
  "committer": {
    "name": "zhangli20",
    "email": "zhangli20@kuaishou.com",
    "time": "Wed Aug 14 19:15:58 2024 +0800"
  },
  "message": "supports forceShuffledHashJoin\n\nimprove metrics and logging.\n\nimprove hash join by skipping null values.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d7cda7ed37942e81bd65c6f7bfce33114955ae41",
      "old_mode": 33188,
      "old_path": "native-engine/blaze-jni-bridge/src/jni_bridge.rs",
      "new_id": "083b0444c2dd6aef6ce6b6966a9080584699730f",
      "new_mode": 33188,
      "new_path": "native-engine/blaze-jni-bridge/src/jni_bridge.rs"
    },
    {
      "type": "modify",
      "old_id": "25fe90f03960244851f9ac212ec5523e1393fcc6",
      "old_mode": 33188,
      "old_path": "native-engine/blaze-serde/src/from_proto.rs",
      "new_id": "03d454fd814110c5b9693a6fc36d17771ff83c2e",
      "new_mode": 33188,
      "new_path": "native-engine/blaze-serde/src/from_proto.rs"
    },
    {
      "type": "modify",
      "old_id": "3f1ca6d65e885d275766e0e8d6aed5d4eb81fac1",
      "old_mode": 33188,
      "old_path": "native-engine/datafusion-ext-plans/src/broadcast_join_build_hash_map_exec.rs",
      "new_id": "16d07e77b195965a89c61721acda716b12296dbf",
      "new_mode": 33188,
      "new_path": "native-engine/datafusion-ext-plans/src/broadcast_join_build_hash_map_exec.rs"
    },
    {
      "type": "modify",
      "old_id": "3467abb6995072be46ba558aca4d1bc4c66514c1",
      "old_mode": 33188,
      "old_path": "native-engine/datafusion-ext-plans/src/broadcast_join_exec.rs",
      "new_id": "63dbc889115aa88e82e927fd2c971b6db27d80a8",
      "new_mode": 33188,
      "new_path": "native-engine/datafusion-ext-plans/src/broadcast_join_exec.rs"
    },
    {
      "type": "delete",
      "old_id": "14ca9b093c14a466b6a775da7e139e0a2c32b35c",
      "old_mode": 33188,
      "old_path": "native-engine/datafusion-ext-plans/src/hash_join_exec.rs",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "36421be284099d56cad10dcea20b3c62d0c4acbc",
      "old_mode": 33188,
      "old_path": "native-engine/datafusion-ext-plans/src/ipc_reader_exec.rs",
      "new_id": "7a77da1c02095f9c6663514207e3a9371d0cddf4",
      "new_mode": 33188,
      "new_path": "native-engine/datafusion-ext-plans/src/ipc_reader_exec.rs"
    },
    {
      "type": "modify",
      "old_id": "ca51b5629b2ae7e2b07ca0d353c16803eb782ed7",
      "old_mode": 33188,
      "old_path": "native-engine/datafusion-ext-plans/src/joins/bhj/full_join.rs",
      "new_id": "be435896e6838612fbf32a954af869dcd34312e3",
      "new_mode": 33188,
      "new_path": "native-engine/datafusion-ext-plans/src/joins/bhj/full_join.rs"
    },
    {
      "type": "modify",
      "old_id": "8c168f00c3d8879d696c9fea71d8fb3ff7f53f96",
      "old_mode": 33188,
      "old_path": "native-engine/datafusion-ext-plans/src/joins/bhj/semi_join.rs",
      "new_id": "3ed5e31decdd331f96ef29ddd43cce9114ec8095",
      "new_mode": 33188,
      "new_path": "native-engine/datafusion-ext-plans/src/joins/bhj/semi_join.rs"
    },
    {
      "type": "modify",
      "old_id": "91b2ffdf826ad02c93e138c34bf564b9d3fdc41f",
      "old_mode": 33188,
      "old_path": "native-engine/datafusion-ext-plans/src/joins/join_hash_map.rs",
      "new_id": "a3f3770f0897176cfc78cc156e6319a86f96b08a",
      "new_mode": 33188,
      "new_path": "native-engine/datafusion-ext-plans/src/joins/join_hash_map.rs"
    },
    {
      "type": "modify",
      "old_id": "f23c6e9d7517ae8f10be2a313da504ea9f46b677",
      "old_mode": 33188,
      "old_path": "native-engine/datafusion-ext-plans/src/joins/test.rs",
      "new_id": "fbed84cfaf791f474d0192d30e6dddd62e939824",
      "new_mode": 33188,
      "new_path": "native-engine/datafusion-ext-plans/src/joins/test.rs"
    },
    {
      "type": "modify",
      "old_id": "bf2ade55c317030df8a144795c953d96f46bed4a",
      "old_mode": 33188,
      "old_path": "native-engine/datafusion-ext-plans/src/lib.rs",
      "new_id": "a48fb56a2641f215ccdf567110bcf65637ddf857",
      "new_mode": 33188,
      "new_path": "native-engine/datafusion-ext-plans/src/lib.rs"
    },
    {
      "type": "modify",
      "old_id": "f2a4f00cc31b9d41a1432e4b46504412f3a248df",
      "old_mode": 33188,
      "old_path": "native-engine/datafusion-ext-plans/src/shuffle/single_repartitioner.rs",
      "new_id": "810b94dd6bcb95c9a8627c367e90f598e4db0d51",
      "new_mode": 33188,
      "new_path": "native-engine/datafusion-ext-plans/src/shuffle/single_repartitioner.rs"
    },
    {
      "type": "modify",
      "old_id": "dbc3dad4a0d2245496f3fe6f1f41e5025a92a2ca",
      "old_mode": 33188,
      "old_path": "native-engine/datafusion-ext-plans/src/shuffle/sort_repartitioner.rs",
      "new_id": "bf6b16b26b4b664f1e205aa51c2e5c4f8a7ecd71",
      "new_mode": 33188,
      "new_path": "native-engine/datafusion-ext-plans/src/shuffle/sort_repartitioner.rs"
    },
    {
      "type": "modify",
      "old_id": "0da5b3dafa01525dcb3d7757c30258895700eb86",
      "old_mode": 33188,
      "old_path": "spark-extension/src/main/scala/org/apache/spark/sql/blaze/BlazeConvertStrategy.scala",
      "new_id": "aace9f3ef87754d680b9a94ce65307852162f0d7",
      "new_mode": 33188,
      "new_path": "spark-extension/src/main/scala/org/apache/spark/sql/blaze/BlazeConvertStrategy.scala"
    },
    {
      "type": "modify",
      "old_id": "34918180a5ba05ec86ef1158a02fa46af5c870de",
      "old_mode": 33188,
      "old_path": "spark-extension/src/main/scala/org/apache/spark/sql/blaze/BlazeConverters.scala",
      "new_id": "97efa3a788172ed4ecb1027d10cd82c36dcd11b1",
      "new_mode": 33188,
      "new_path": "spark-extension/src/main/scala/org/apache/spark/sql/blaze/BlazeConverters.scala"
    },
    {
      "type": "modify",
      "old_id": "45d75b94d22b3b91f050f01a0efeb05ae47029f1",
      "old_mode": 33188,
      "old_path": "spark-extension/src/main/scala/org/apache/spark/sql/blaze/BlazeSparkSessionExtension.scala",
      "new_id": "663e159ee8947e0afa3b51ae27d98437fb061e54",
      "new_mode": 33188,
      "new_path": "spark-extension/src/main/scala/org/apache/spark/sql/blaze/BlazeSparkSessionExtension.scala"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5c8abd4d3612f22bd9d737875e243c1c05bb8bc9",
      "new_mode": 33188,
      "new_path": "spark-extension/src/main/scala/org/apache/spark/sql/blaze/BlazeStrategyOverrides.scala"
    },
    {
      "type": "modify",
      "old_id": "0a075a2440b422ab3c8b9d694bb67721a0adc056",
      "old_mode": 33188,
      "old_path": "spark-extension/src/main/scala/org/apache/spark/sql/blaze/SparkUDTFWrapperContext.scala",
      "new_id": "d62771dc84cfc3e72f8607e09d53d9d73b807338",
      "new_mode": 33188,
      "new_path": "spark-extension/src/main/scala/org/apache/spark/sql/blaze/SparkUDTFWrapperContext.scala"
    },
    {
      "type": "modify",
      "old_id": "754da62b5814e72582eacd30424ecc84dd7e3d3d",
      "old_mode": 33188,
      "old_path": "spark-extension/src/main/scala/org/apache/spark/sql/execution/blaze/plan/NativeBroadcastExchangeBase.scala",
      "new_id": "d198099b7537901fb9d7ef1a73296e0c9afd8f5d",
      "new_mode": 33188,
      "new_path": "spark-extension/src/main/scala/org/apache/spark/sql/execution/blaze/plan/NativeBroadcastExchangeBase.scala"
    },
    {
      "type": "modify",
      "old_id": "dd5dd35ab20465f7adef87610728d747b43a3650",
      "old_mode": 33188,
      "old_path": "spark-extension/src/main/scala/org/apache/spark/sql/execution/blaze/shuffle/BlazeBlockStoreShuffleReaderBase.scala",
      "new_id": "49f069de2337c52068a7f70054ecd750e0c5775f",
      "new_mode": 33188,
      "new_path": "spark-extension/src/main/scala/org/apache/spark/sql/execution/blaze/shuffle/BlazeBlockStoreShuffleReaderBase.scala"
    }
  ]
}
