Broadleaf Microservices
  • v1.0.0-latest-prod

Release Notes for 1.7.2-GA

Requirements

  • JDK 11 is now required for Broadleaf release trains 1.7.0-GA, and beyond.

New Features & Notable Changes

Feature/Notable Change Related Services Links

Introduced YugabyteDB Support

Introduced support for durable sending of CartOps checkout-related messages

CartOperationServices

Upgrade Guide

API Changes

New Endpoints

Path Description

POST /carts/send-rollback-event

Send checkout rollback event

POST /carts/send-checkout-completion-event

Send checkout completion event

Configuration Properties

Added Properties

  • broadleaf.cart.web.security.register-security-enhancer

    • Description: Enables the previous whitelist of unsecured endpoints in the service

    • Default value: false

  • broadleaf.cart.durable-message-sending.notification.failure-rate-threshold

    • Description: Configures the failure rate threshold in percentage above which the CircuitBreaker should trip open and start short-circuiting calls

    • Default value: 50

  • broadleaf.cart.durable-message-sending.notification.ring-buffer-size-in-closed-state

    • Description: Configures the size of the ring buffer when the CircuitBreaker is closed. The CircuitBreaker stores the success/failure status of the latest calls in a ring buffer

    • Default value: 100

  • broadleaf.cart.durable-message-sending.notification.ring-buffer-size-in-half-open-state

    • Description: Configures the size of the ring buffer when the CircuitBreaker is half open. The CircuitBreaker stores the success/failure status of the latest calls in a ring buffer

    • Default value: 10

  • broadleaf.cart.durable-message-sending.notification.wait-duration-in-open-state

    • Description: Configures the wait duration which specifies how long the CircuitBreaker should stay open, before it switches to half open

    • Default value: 60 seconds

  • broadleaf.cart.durable-message-sending.notification.send-timeout

    • Description: The length of time a message send attempt should block before timing out. Such a timeout is considered a failure

    • Default value: 30 seconds

  • broadleaf.cart.durable-message-sending.notification.retry-cluster-service-namespace

    • Description: Name used to identify the cluster singleton lock

  • broadleaf.cart.durable-message-sending.notification.retry-interval

    • Description: The length of time to wait between each batch retry attempt

    • Default value: 5 minutes

  • broadleaf.cart.durable-message-sending.notification.page-size

    • Description: The number of valid, unacknowledged records to batch process per interval

    • Default value: 1000

  • broadleaf.cart.durable-message-sending.notification.max-attempts

    • Description: The maximum number of failed attempts that should be made before ceasing to attempt to send a message for an unacknowledged record

    • Default value: 10

  • broadleaf.cart.durable-message-sending.notification.max-attempt-wait-time

    • Description: The maximum amount of time that should elapse before making another attempt on an unacknowledged record. The time between retries for an individual record is generally governed by a exponential backoff algorithm, but this value represents a ceiling beyond which that algorithm may not exceed

    • Default value: 4 hours

  • broadleaf.cart.durable-message-sending.notification.initial-fault-threshold

    • Description: The amount of time that must elapse before the retry mechanism can kick in on a newly altered and unacknowledged record. This provides a safe window in which the normal operation can acknowledge the record without risk of interference from the retry handler

    • Default value: 5 minutes

  • broadleaf.cart.durable-message-sending.notification.record-processing-wait

    • Description: The amount of time to pause between the processing of each unacknowledged record in the batch. This is primarily a throttling measure

    • Default value: 0

  • broadleaf.cart.durable-message-sending.notification.delay-at-startup

    • Description: The amount of time after initialization of the application that must pass before the retry scheduler starts. Can be used to provide some buffer of time for other components (e.g. kafka bindings) to fully initialize

    • Default value: 20 seconds

  • broadleaf.cart.notification.retry.delay-at-startup

    • Description: The amount of time after initialization of the application that must pass before the retry scheduler starts. Can be used to provide some buffer of time for other components (e.g. kafka bindings) to fully initialize.

    • Default value: 20 seconds

  • broadleaf.cart.notification.retry.initial-fault-threshold

    • Description: The amount of time that must elapse before the retry mechanism can kick in on a newly altered and unacknowledged record. This provides a safe window in which the normal operation can acknowledge the record without risk of interference from the retry handler.

    • Default value: 5 minutes

  • broadleaf.cart.notification.retry.max-attempt-wait-time

    • Description: The maximum amount of time that should elapse before making another attempt on an unacknowledged record.

    • Default value: 4 hours

  • broadleaf.cart.notification.retry.max-attempts

    • Description: The maximum number of failed attempts that should be made before ceasing to attempt to send a message for an unacknowledged record.

    • Default value: 10

  • broadleaf.cart.notification.retry.page-size

    • Description: The number of valid, unacknowledged records to batch process per interval.

    • Default value: 1000

  • broadleaf.cart.notification.retry.record-processing-wait

    • Description: The amount of time to pause between the processing of each unacknowledged record in the batch. This is primarily a throttling measure.

    • Default value: 0 seconds

  • broadleaf.cart.notification.retry.retry-cluster-service-namespace

    • Description: Name used to identify the cluster singleton lock

  • broadleaf.cart.notification.retry.retry-interval

    • Description: The length of time to wait between each batch retry attempt.

    • Default value: 5 minutes