docs: static Properties updateSplitSchema(Properties splitSchema, List<HiveColumnHandle> columns)
      {
          requireNonNull(splitSchema, "splitSchema is null");
          requireNonNull(columns, "columns is null");
          // clone split properties for update so as not to affect the original one
          Properties updatedSchema = new Properties();
          updatedSchema.putAll(splitSchema);
          updatedSchema.setProperty(LIST_COLUMNS, buildColumns(columns));
          updatedSchema.setProperty(LIST_COLUMN_TYPES, buildColumnTypes(columns));
          ThriftTable thriftTable = parseThriftDdl(splitSchema.getProperty(SERIALIZATION_DDL));
          updatedSchema.setProperty(SERIALIZATION_DDL,
                  thriftTableToDdl(pruneThriftTable(thriftTable, columns)));
          return updatedSchema;
      }