DEENESPTFRRUARHIKOZHNL

estructura ara::diag::SovdBulkData::DeleteByCategoryResult

[SWS_DM_01926] Upstream: RS_Diag_04266

struct DeleteByCategoryResult {...};

Definition of the result type for the "Delete All Bulk Data Defined by Category" method.

Header-Datei#include "ara/diag/sovd_bulk_data.h"
Forwarding-Header#include "ara/diag/diag_fwd.h"
Scopeclass ara::diag::SovdBulkData

Guía del usuarioGENERADO POR IA

Alberga los resultados y los errores individuales surgidos al eliminar datos masivos de diagnóstico por categorías.
GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: e28735957e77 Procedencia Preguntas abiertas (2)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Alberga los resultados y los errores individuales surgidos al eliminar datos masivos de diagnóstico por categorías.

La estructura ara::diag::SovdBulkData::DeleteByCategoryResult proporciona el resultado agregado al eliminar todos los datos masivos de una categoría en el módulo de diagnóstico SOVD ([SWS_DM_01926]). Divide los resultados en entradas eliminadas con éxito (deleted_items) e instancias erróneas junto con la causa del error (failed_items) ([SWS_DM_01842], [SWS_DM_01843]). Los llamadores deben evaluar ambas listas para gestionar éxitos parciales de forma determinista.

Contexto

La estructura ara::diag::SovdBulkData::DeleteByCategoryResult actúa como tipo de resultado estandarizado para el método «Delete All Bulk Data Defined by Category» en el ámbito de la gestión de datos masivos de Service-Oriented Vehicle Diagnostics (SOVD) ([SWS_DM_01926], AUTOSAR_AP_SWS_Diagnostics §8.53.3 «Struct: DeleteByCategoryResult»). En el módulo de diagnóstico de AUTOSAR Adaptive (diag), los datos masivos como archivos de registro, registros de trazas o series de medición pueden asignarse a categorías semánticas. Si un cliente de diagnóstico solicita la eliminación de todas las instancias de una categoría a través de la interfaz ara::diag::SovdBulkData, esta estructura de datos resume el estado global de la operación (AUTOSAR_AP_SWS_Diagnostics §8.53.3 «Definition of API class ara::diag::SovdBulkData::DeleteByCategoryResult»).

Como interlocutores intervienen típicamente un cliente SOVD externo o una aplicación de diagnóstico, la interfaz de diagnóstico funcional ara::diag::SovdBulkData y el subsistema de persistencia interno para datos masivos. El objeto de resultado salva la frontera entre la unidad de ejecución síncrona o asíncrona y el cliente evaluador al agregar el estado de todos los objetos de datos afectados.

Ciclo de vida

Conforme a la definición de clase en la cabecera #include "ara/diag/sovd_bulk_data.h", se trata de una estructura de datos pasiva (struct) sin lógica de estados compleja propia ([SWS_DM_01842], [SWS_DM_01843]). Su creación se lleva a cabo en el lado del servidor mediante el entorno de ejecución de diagnóstico inmediatamente después de concluir la eliminación de datos masivos referida a la categoría. Durante este proceso, las variables miembro deleted_items y failed_items se rellenan con los descriptores y objetos de error correspondientes.

Dado que se trata de una estructura pura de transferencia de datos, es de esperar que la transferencia a la entidad llamadora en el contexto de la Adaptive Platform se realice por valor (value) o con semántica de movimiento (move), por ejemplo, empaquetada en un contenedor de resultados asíncrono. Pregunta Q-bafa9fbd3ae683c1 (abierta) En este proceso, la propiedad se transfiere por completo al llamador. La destrucción del objeto y la liberación de la memoria de las instancias ara::core::Vector contenidas tienen lugar de forma determinista al salir del ámbito (scope) del llamador. A nivel de instancia no existe concurrencia compartida; solicitudes de eliminación paralelas para diferentes categorías generan instancias independientes entre sí.

Ruta de uso

El flujo de uso típico comprende la iniciación de la eliminación, la ejecución por parte del servicio de diagnóstico y la evaluación por separado del objeto resultante por parte del llamador:

  1. Un cliente de diagnóstico solicita la eliminación de todos los datos masivos asociados mediante el método para eliminar por categoría.
  2. El servidor itera sobre las instancias de la categoría indicada y ejecuta los procesos de eliminación.
  3. Las entradas eliminadas con éxito se registran en la lista deleted_items ([SWS_DM_01842]).
  4. Las instancias que han fallado se recopilan con su respectivo motivo de error en failed_items ([SWS_DM_01843]).
  5. El DeleteByCategoryResult agregado se devuelve al llamador ([SWS_DM_01926]), el cual acusa recibo de las eliminaciones satisfactorias y evalúa posibles errores.
Flujo de la eliminación masiva de datos por categoría con DeleteByCategoryResultCliente de diagnósticoara::diag::SovdBulkDataMassendaten-SpeicherSolicitar eliminación por categoríaIdentificar y eliminar instancias de la categoríaNotificar resultados por instancia (éxito / error)Crear DeleteByCategoryResult (llenar deleted_items, failed_items)Transferir DeleteByCategoryResultUse Case: Ergebnisauswertungdeleted_items verarbeitenopt!failed_items.empty()Realizar análisis de errores para entradas de DeletionError

Diagrama de secuencia: flujo de la eliminación de datos masivos por categoría, desde la solicitud y la agregación hasta la evaluación. Fuentes: [SWS_DM_01926], [SWS_DM_01842], [SWS_DM_01843], AUTOSAR_AP_SWS_Diagnostics §8.53.3 «Struct: DeleteByCategoryResult».

Escenarios de error

Una característica central de la eliminación de datos masivos es la posibilidad de un éxito parcial. Dado que una categoría puede agrupar una gran cantidad de registros independientes, la operación global no falla necesariamente ante errores individuales. Para el llamador, la división en dos vectores independientes probablemente significa que se lleva a cabo un procesamiento parcial sin reversión (rollback) atómica. Pregunta Q-35307a7eccf0afa9 (abierta)

Las eliminaciones fallidas de registros individuales se transmiten mediante el elemento failed_items, tipificado como ara::core::Vector<DeletionError> ([SWS_DM_01843], AUTOSAR_AP_SWS_Diagnostics §8.53.3.1.2 «failed_items»). Como precondición para una notificación de éxito completa, los llamadores deben comprobar si failed_items.empty() se cumple. Si la lista contiene elementos, se puede analizar el error de eliminación específico para cada instancia de datos masivos afectada (por ejemplo, bloqueo debido a un acceso de lectura activo o permisos insuficientes). Al mismo tiempo, deleted_items documenta de forma fiable todos los registros que pudieron eliminarse a pesar de los errores individuales presentes ([SWS_DM_01842]).

Esta guía se basa en la especificación AUTOSAR Adaptive Platform R25-11 y fue creada de forma automatizada.

Diagrama de clases UML

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G nara__diag__SovdBulkData__DeleteByCategoryResult960 «struct» DeleteByCategoryResult + deleted_items + failed_items

Constantes

deleted_items variable

List of bulk data ids that were successfully deleted.

failed_items variable

A list of DeletionErrors that contains the bulk data instances with corresponding deletion errors.

Documentación de las constantes / variables

variable deleted_items [SWS_DM_01842] Upstream: RS_Diag_04266

ara::core::Vector<BulkDataMetaDataDescriptor> deleted_items;

List of bulk data ids that were successfully deleted.

Header-Datei#include "ara/diag/sovd_bulk_data.h"
Scopestruct ara::diag::SovdBulkData::DeleteByCategoryResult
Symboldeleted_items
Typara::core::Vector< BulkDataMetaDataDescriptor >

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01842
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01842@rel:R25-11#11561d29
Content hash
11561d29
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01842
Status: valid/unmigrated Version: rel:R25-11#b9891c5c Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01842@rel:R25-11#b9891c5c
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#11561d292026-09-30
  • R23-11rel:R23-11#e3ec21992026-10-14
  • R24-11rel:R24-11#e3ec21992026-10-14
  • R25-11rel:R25-11#b9891c5c2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

variable failed_items [SWS_DM_01843] Upstream: RS_Diag_04266

ara::core::Vector<DeletionError> failed_items;

A list of DeletionErrors that contains the bulk data instances with corresponding deletion errors.

Header-Datei#include "ara/diag/sovd_bulk_data.h"
Scopestruct ara::diag::SovdBulkData::DeleteByCategoryResult
Symbolfailed_items
Typara::core::Vector< DeletionError >

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01843
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01843@rel:R25-11#ef03ad53
Content hash
ef03ad53
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01843
Status: valid/unmigrated Version: rel:R25-11#6a7b18c2 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01843@rel:R25-11#6a7b18c2
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#ef03ad532026-09-30
  • R23-11rel:R23-11#3a03e0212026-10-14
  • R24-11rel:R24-11#3a03e0212026-10-14
  • R25-11rel:R25-11#6a7b18c22026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill