docs: @Deprecated
  	@PublicEvolving
  	public DataSink<T> sortLocalOutput(String fieldExpression, Order order) {
  
  		int numFields;
  		int[] fields;
  		Order[] orders;
  
  		// compute flat field positions for (nested) sorting fields
  		Keys.ExpressionKeys<T> ek = new Keys.ExpressionKeys<>(fieldExpression, this.type);
  		fields = ek.computeLogicalKeyPositions();
  
  		if (!Keys.ExpressionKeys.isSortKey(fieldExpression, this.type)) {
  			throw new InvalidProgramException("Selected sort key is not a sortable type");
  		}
  
  		numFields = fields.length;
  		orders = new Order[numFields];
  		Arrays.fill(orders, order);
  
  		if (this.sortKeyPositions == null) {
  			// set sorting info
  			this.sortKeyPositions = fields;
  			this.sortOrders = orders;
  		} else {
  			// append sorting info to existing info
  			int oldLength = this.sortKeyPositions.length;
  			int newLength = oldLength + numFields;
  			this.sortKeyPositions = Arrays.copyOf(this.sortKeyPositions, newLength);
  			this.sortOrders = Arrays.copyOf(this.sortOrders, newLength);
  			for (int i = 0; i < numFields; i++) {
  				this.sortKeyPositions[oldLength + i] = fields[i];
  				this.sortOrders[oldLength + i] = orders[i];
  			}
  		}
  
  		return this;
  	}