Core - Mejoras, Cambios y Soluciones

Esta página cubre las principales mejoras, correcciones de errores, cambios y soluciones proporcionadas en la versión IPF-2024.2.0.

mejoras principales, correcciones de errores y cambios

Nuevo

  • Plataforma IPF: Documentación del procesador de revistas añadida a Flo Starter Proyectos

  • Conector: Propiedad de configuración añadida para el tiempo de espera de la llamada a la CorrelationService in SendConnector. Valor predeterminado proporcionado en ipf.connector.default-send-connector.correlation-stage-timeout de 5s.

    Si el valor proporcionado para correlation-stage-timeout no es menor que el call-timeout Especificado para un conector particular, el tiempo de espera de la etapa de correlación se reducirá para ser inferior al tiempo de espera de la llamada (200 ms menos) y el valor actualizado se registrará junto con un mensaje de advertencia.
  • MongoDB: Se añadió la capacidad de establecer el quórum de confirmación. Puede establecerse globalmente para la creación de todos los índices con ipf.mongodb.commit-quorum. Consulte la documentación de cada componente individual para saber cómo anular por componente.

  • IPF Processing Data: Los exportadores pueden generar datos para diferentes Kafka temas, configurables por tipo de dato.

  • Flo-lang y Akka-persistence-mongo-db: Se añadió una funcionalidad de purga configurable para las colecciones de diario y de instantáneas. La funcionalidad predeterminada es no purgar documentos de ninguna de las colecciones. La implementación utiliza índices ttl de Mongo y Cosmos que deberán ser creados manualmente. Las guías de configuración se encuentran en la documentación:

  • Persistent Scheduler se añadió soporte de zona horaria a persistent scheduler

Cambiado

  • Poller de Archivos IPF-Cambio drástico- Para soportar múltiples entidades de procesamiento, el IPF File Poller ahora puede sondear desde múltiples ubicaciones. Esto significa que la siguiente configuración ha cambiado de un solo elemento a una lista de elementos:`ipf.file-poller`→`ipf.file-poller.pollers`

  • Dynamic Settings Workflow- Se eliminó la llamada redundante al convertidor de archivos durante la ingestión de archivos del procesador de archivos. Este problema estaba afectando CSM Reachability Ingesta de Datos: Se generaron eventos de procesamiento de archivos FileEntrySkippedEvent y PartyEntityDirectorySubTypeMappingSkippedEvent dos veces y se registraron errores dos veces.

  • Dynamic Settings Workflow- Se ha añadido un nuevo evento y se han enriquecido los eventos existentes. Esto mejorará la supervisión de los ya existentes.FileEntrySkippedEvent con tipo y fileName,ProcessingCompleteEvent con tipo, resultado, nombre_archivo y nombre_proceso y ProcessingFailedEvent con processName y fileName. También se añadió nuevo FileEntryProcessedEvent con el tipo de métricas y fileName(más información en Csm Reachability y la ingestión de datos de la industria)

  • Reemplazando Caffeine sincronizar la implementación de caché síncrona con la implementación de caché asíncrona para corregir múltiples llamadas al callback en getOrDefault método en ipf-cache-caffeine módulo.

  • Actualizado EventProcessorStream usar mapAsyncPartitioned en lugar del anterior mapAsync operador. Ahora, incluso cuando se habilita el paralelismo de procesamiento, no procesaremos eventos relacionados en paralelo dentro de un solo flujo, por lo tanto, los procesadores de registros deben ser paralelizados de manera segura.

  • Ipf-file-manager - S3File Reader corregido para poder descargar archivos más grandes.

  • Conector:`IngestedFile` as ReceivedMessage el contexto de 's ha sido reemplazado por IngestedFileContext

  • IPF Processing Data: Actualizado MdsWrapper restricción de tipo genérico de la clase. El parámetro genérico T debe implementar ahora java.io. Serializable

    • Cambiado de MdsWrapper<T> to MdsWrapper<T extends Serializable>

  • Transacción IPF Cache- cambiaron los nombres de los índices que se están creando en la colección transactionCacheEntry de mongodb:

    • findByTypeAndHashIndex renombrado a hash_1_type_1

    • findByTypeAndHashAndMessageIdIndex renombrado a hash_1_type_1_messageId_1

Fijo

  • Conector- Consumo de memoria en LocalDirectoryConnectorTransport componente

  • Archivador IPF- Se solucionó un problema donde se producían errores al entregar paquetes de archivo a Kafka no se propagaron correctamente, lo que resultó en la falta de paquetes de archivo.

Configuración

Obsoleto event-processor.upstream-event-demand

Se mantiene la compatibilidad hacia atrás para esta versión, pero event-processor.processing-parallelism debe ser utilizado en su lugar

Obsoleto stream.processor.cluster-role

Se mantiene la compatibilidad hacia atrás para esta versión, pero event-processor.cluster-role debe ser utilizado en su lugar

Introducido event-processor.event-streaming-type propiedad de configuración

Predetermina a EVENT_STREAM_PER_TAG, que representa el comportamiento anterior que se basa en la lista de etiquetas globales proporcionada por el usuario.

Antes de cambiar un sistema existente para utilizar EVENT_STREAM_PER_FLOW-- requerido para las actualizaciones continuas de sus servicios de orquestación — por favor, asegúrese de haber realizado las migraciones de base de datos necesarias (consulte las migraciones). No hacerlo restablecerá efectivamente los desplazamientos en sus procesadores de diario, lo que provocará que vuelvan a procesar cada evento en su diario.

Introducido ipf.processing-data.egress.transports.(events|data-structures|message-logs|system-events|models|custom-objects)

Estos transportes se configuran por defecto a existentes Kafka configuración de transporte, con el valor predeterminado IPF_PROCESSING_DATA tema.

Kafkalos clientes, y por extensión los temas, pueden ser configurados por tipo de dato, por ejemplo, todos los registros de mensajes pueden ir a un tema diferente, por ejemplo.ipf.processing-data.egress.transports.message-logs.kafka.producer.topic = MESSAGE_LOG_TOPIC.

Este cambio no es disruptivo y se comporta como antes, a menos que se configure explícitamente para utilizar temas diferentes.