Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagejava
package org.apache.flink.streaming.api.operators;
 
/** The builder class for {@link OperatorAttributes}. */
@PublicEvolving
public class OperatorAttributesBuilder {     

	@Nullable private Boolean outputStreamRecordValueStored = ...
 
null;
    @Nullable private Boolean inputStreamRecordStored = null;  

    public OperatorAttributesBuilder() {
    	...
 		objectReuseCompliant = false;
	    inputStreamRecordStored = true;
    }

    /**
     * Set to true if it is guaranteed that the operator will not store and access reference to the
     * value of the StreamRecord StreamRecord#value that it has already emitted.
     */
    public OperatorAttributesBuilder setObjectReuseCompliantsetOutputStreamRecordValueStored(boolean objectReuseCompliantoutputStreamRecordValueStored) {...}

    /**
     * Set false if it is guaranteed that the operator will not store and access reference to the
     * input StreamRecord instance.
     */
    public voidOperatorAttributesBuilder setInputStreamRecordStored(boolean inputStreamRecordStored) {...}
      
    /**
     * If any operator attribute is null, we will log it at DEBUG level and use the following
     * default values.
     * - outputStreamRecordValueStored defaults to true
     * - inputStreamRecordStored defaults to true
     */
	public OperatorAttributes build() {...}
}

...

Code Block
languagejava
package org.apache.flink.streaming.api.operators;
 
/**
 * OperatorAttributes element provides Job Manager with information that can be
 * used to optimize job performance.
 */
@PublicEvolving 
public class OperatorAttributes {   
    /**
     * Returns true if it is guaranteed that the operator will not store and access reference to the
     * value of the StreamRecordStreamRecord#value that it has already emitted.
     */
    public boolean isObjectReuseCompliant() {...}

    /**
     * Return false if it is guaranteed that the operator will not store and access reference to the
     * input StreamRecord instance.
     */
    public boolean isInputStreamRecordStored() {...} 
}

...