/*
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
{
  "namespace": "org.apache.hudi.avro.model",
  "type": "record",
  "name": "HoodieDeleteRecordList",
  "doc": "A list of delete records stored in the delete block in log block version 3",
  "fields": [
    {
      "name": "deleteRecordList",
      "doc": "A list of Hudi records to delete",
      "type": {
        "type": "array",
        "items": {
          "name": "HoodieDeleteRecord",
          "type": "record",
          "doc": "Individual Hudi record to delete",
          "fields": [
            {
              "name": "recordKey",
              "doc": "Record key in String",
              "type": [
                "null",
                "string"
              ],
              "default": null
            },
            {
              "name": "partitionPath",
              "doc": "Partition path in String",
              "type": [
                "null",
                "string"
              ],
              "default": null
            },
            {
              "name": "orderingVal",
              "doc": "Ordering value determining the order of merging on the same key",
              "type": [
                "null",
                "org.apache.hudi.avro.model.BooleanWrapper",
                "org.apache.hudi.avro.model.IntWrapper",
                "org.apache.hudi.avro.model.LongWrapper",
                "org.apache.hudi.avro.model.FloatWrapper",
                "org.apache.hudi.avro.model.DoubleWrapper",
                "org.apache.hudi.avro.model.BytesWrapper",
                "org.apache.hudi.avro.model.StringWrapper",
                "org.apache.hudi.avro.model.DateWrapper",
                "org.apache.hudi.avro.model.DecimalWrapper",
                "org.apache.hudi.avro.model.TimeMicrosWrapper",
                "org.apache.hudi.avro.model.TimestampMicrosWrapper"
              ],
              "default": null
            }
          ]
        }
      }
    }
  ]
}
