Madhan Neethiraj created ATLAS-5056: ---------------------------------------
Summary: Entity audit should not be created for instances of internal entity-types Key: ATLAS-5056 URL: https://issues.apache.org/jira/browse/ATLAS-5056 Project: Atlas Issue Type: Improvement Components: atlas-core Reporter: Madhan Neethiraj Atlas uses entity framework to handle persistence of internal objects (subtypes of entity-type __internal) like: # __AtlasMetricsStat # __AtlasUserSavedSearch # __AtlasAsyncImportRequest # __AtlasAuditEntry # __AtlasUserProfile # __ExportImportAuditEntry # AtlasGlossaryCategory # AtlasGlossary # AtlasGlossaryTerm Entity audits for above entity-type instances are not used anywhere, and hence should not be generated to eliminate unnecessary storage and processing. Here is the stack showing creation of entity audit entries for metric stats: {noformat} at org.apache.atlas.repository.audit.EntityAuditListenerV2.onEntitiesAdded(EntityAuditListenerV2.java:105) at org.apache.atlas.repository.store.graph.v2.AtlasEntityChangeNotifier.notifyV2Listeners(AtlasEntityChangeNotifier.java:470) at org.apache.atlas.repository.store.graph.v2.AtlasEntityChangeNotifier.notifyListeners(AtlasEntityChangeNotifier.java:418) at org.apache.atlas.repository.store.graph.v2.AtlasEntityChangeNotifier.onEntitiesMutated(AtlasEntityChangeNotifier.java:111) at org.apache.atlas.repository.store.graph.v2.AtlasEntityStoreV2.createOrUpdate(AtlasEntityStoreV2.java:1146) at org.apache.atlas.repository.store.graph.v2.AtlasEntityStoreV2.createOrUpdate(AtlasEntityStoreV2.java:327) at org.apache.atlas.repository.store.graph.v2.AtlasEntityStoreV2$$FastClassBySpringCGLIB$$6861dca9.invoke(<generated>) at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:792) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762) at org.apache.atlas.GraphTransactionInterceptor.invoke(GraphTransactionInterceptor.java:190) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:762) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:707) at org.apache.atlas.repository.store.graph.v2.AtlasEntityStoreV2$$EnhancerBySpringCGLIB$$5f0a1ca3.createOrUpdate(<generated>) at org.apache.atlas.repository.ogm.DataAccess.saveNoLoad(DataAccess.java:79) at org.apache.atlas.repository.ogm.DataAccess.save(DataAccess.java:61) at org.apache.atlas.services.MetricsService.saveMetricsStat(MetricsService.java:238) at org.apache.atlas.services.MetricsService$$FastClassBySpringCGLIB$$2f0577e9.invoke(<generated>) at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) at org.springframework.aop.framework.CglibAopProxy.invokeMethod(CglibAopProxy.java:386) at org.springframework.aop.framework.CglibAopProxy.access$000(CglibAopProxy.java:85) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:703) at org.apache.atlas.services.MetricsService$$EnhancerBySpringCGLIB$$836ff663.saveMetricsStat(<generated>) at org.apache.atlas.web.resources.AdminResource.saveMetrics(AdminResource.java:1212) at org.apache.atlas.web.resources.AdminResource.scheduleSaveAndDeleteMetrics(AdminResource.java:439) {noformat} -- This message was sent by Atlassian Jira (v8.20.10#820010)