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)