- * This field must be exactly same as the bytes passed to {@link TaskExtractor#extract}. + * This field must be exactly same as the {@link ConsumerRecord#value()} bytes passed to {@link TaskExtractor#extract}. *
*/ byte[] taskDataBytes; diff --git a/processor/src/main/java/com/linecorp/decaton/processor/runtime/ProcessorProperties.java b/processor/src/main/java/com/linecorp/decaton/processor/runtime/ProcessorProperties.java index a41571a4..b71d047c 100644 --- a/processor/src/main/java/com/linecorp/decaton/processor/runtime/ProcessorProperties.java +++ b/processor/src/main/java/com/linecorp/decaton/processor/runtime/ProcessorProperties.java @@ -30,6 +30,7 @@ import com.linecorp.decaton.processor.runtime.internal.AbstractDecatonProperties; import com.linecorp.decaton.processor.runtime.internal.OutOfOrderCommitControl; import com.linecorp.decaton.processor.runtime.internal.RateLimiter; +import com.linecorp.decaton.protocol.internal.DecatonInternal.DecatonTaskRequest; /** * Collection of properties that can be configured to adjust {@link DecatonProcessor}'s behavior. @@ -224,6 +225,20 @@ public class ProcessorProperties extends AbstractDecatonProperties { PropertyDefinition.define("decaton.processor.threads.termination.timeout.ms", Long.class, Long.MAX_VALUE, v -> v instanceof Long && (Long) v >= 0); + /** + * Controls whether to produce retry tasks with task metadata as headers, instead of as deprecated + * {@link DecatonTaskRequest} format. + *+ * CAUTION!!! YOU MAY NEED TO SET THIS TO FALSE WHEN YOU UPGRADE FROM 8.0.1 OR EARLIER + *
+ * Please read Decaton 9.0.0 Release Note carefully. + *
+ * Reloadable: yes
+ */
+ public static final PropertyDefinition