Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Wrong entity type when deriving anchor #7050

Closed
1 task done
mandy-chessell opened this issue Oct 22, 2022 · 0 comments
Closed
1 task done

[BUG] Wrong entity type when deriving anchor #7050

mandy-chessell opened this issue Oct 22, 2022 · 0 comments
Assignees
Labels
bug Something isn't working triage New bug/issue which needs checking & assigning

Comments

@mandy-chessell
Copy link
Contributor

Is there an existing issue for this?

  • I have searched the existing issues

Current Behavior

When working with repository content that does not include anchor classifications, I found this error in deriveAnchorGUID()

Sat Oct 22 14:24:14 BST 2022 SimpleAPICatalog Exception OMAG-REPOSITORY-HANDLER-0003 Supplementary information: log record id 5d53f773-5994-427a-acfa-66e5c2cb430e org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException returned message of OMAG-REPOSITORY-HANDLER-404-001 The validateEntityGUID method has retrieved a object for unique identifier (guid) 81ff5b28-6e24-4946-b5f5-90fdb277bab8 which is of type DeployedAPI rather than type SchemaType on behalf of method getAssetSummary and stacktrace of 
InvalidParameterException{parameterName='guid', reportedHTTPCode=404, reportingClassName='org.odpi.openmetadata.commonservices.repositoryhandler.RepositoryErrorHandler', reportingActionDescription='getAssetSummary', reportedErrorMessage='OMAG-REPOSITORY-HANDLER-404-001 The validateEntityGUID method has retrieved a object for unique identifier (guid) 81ff5b28-6e24-4946-b5f5-90fdb277bab8 which is of type DeployedAPI rather than type SchemaType on behalf of method getAssetSummary', reportedErrorMessageId='OMAG-REPOSITORY-HANDLER-404-001', reportedErrorMessageParameters=[validateEntityGUID, 81ff5b28-6e24-4946-b5f5-90fdb277bab8, DeployedAPI, SchemaType, getAssetSummary], reportedSystemAction='The service is not able to return the requested object.', reportedUserAction='Check that the unique identifier is correct and the metadata server(s) supporting the service is running.', reportedCaughtException=null, reportedCaughtExceptionClassName='null', relatedProperties=null}
	at org.odpi.openmetadata.commonservices.repositoryhandler.RepositoryErrorHandler.handleWrongTypeForGUIDException(RepositoryErrorHandler.java:546)
	at org.odpi.openmetadata.commonservices.repositoryhandler.RepositoryErrorHandler.validateInstanceType(RepositoryErrorHandler.java:341)
	at org.odpi.openmetadata.commonservices.repositoryhandler.RepositoryHandler.validateEntityGUID(RepositoryHandler.java:138)
	at org.odpi.openmetadata.commonservices.repositoryhandler.RepositoryHandler.getEntityByGUID(RepositoryHandler.java:2966)
	at org.odpi.openmetadata.commonservices.repositoryhandler.RepositoryHandler.getRelationshipsByType(RepositoryHandler.java:4041)
	at org.odpi.openmetadata.commonservices.repositoryhandler.RepositoryHandler.getUniqueRelationshipByType(RepositoryHandler.java:5062)
	at org.odpi.openmetadata.commonservices.generichandlers.OpenMetadataAPIGenericHandler.getAnchorGUIDForSchemaType(OpenMetadataAPIGenericHandler.java:1870)
	at org.odpi.openmetadata.commonservices.generichandlers.OpenMetadataAPIGenericHandler.deriveAnchorGUID(OpenMetadataAPIGenericHandler.java:2748)
	at org.odpi.openmetadata.commonservices.generichandlers.OpenMetadataAPIGenericHandler.validateAnchorEntity(OpenMetadataAPIGenericHandler.java:3099)
	at org.odpi.openmetadata.commonservices.generichandlers.OpenMetadataAPIGenericHandler.getAttachedEntity(OpenMetadataAPIGenericHandler.java:4227)
	at org.odpi.openmetadata.commonservices.generichandlers.SchemaTypeHandler.getSchemaTypeForParent(SchemaTypeHandler.java:1319)
	at org.odpi.openmetadata.commonservices.generichandlers.SchemaTypeHandler.getSchemaTypeForAsset(SchemaTypeHandler.java:1232)
	at org.odpi.openmetadata.commonservices.ocf.metadatamanagement.server.OCFMetadataRESTServices.getAssetResponse(OCFMetadataRESTServices.java:394)
	at org.odpi.openmetadata.commonservices.ocf.metadatamanagement.server.OCFMetadataRESTServices.getAssetSummary(OCFMetadataRESTServices.java:458)
	at org.odpi.openmetadata.commonservices.ocf.metadatamanagement.server.spring.ConnectedAssetResource.getAssetSummary(ConnectedAssetResource.java:185)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1070)
	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:655)
	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:764)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
	at org.odpi.openmetadata.http.HttpRequestHeadersFilter.doFilter(HttpRequestHeadersFilter.java:49)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:890)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
	at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.base/java.lang.Thread.run(Thread.java:829)

This is because getAttachedEntity() uses the starting entity's type to validate the attached entity's type.

Expected Behavior

No exception

Steps To Reproduce

This was found while developing the new SimpleCatalogDemo open metadata lab.

Environment

- Egeria:
- OS:
- Java:
- Browser (for UI issues):
- Additional connectors and integration:

Any Further Information?

No response

@mandy-chessell mandy-chessell added bug Something isn't working triage New bug/issue which needs checking & assigning labels Oct 22, 2022
@mandy-chessell mandy-chessell self-assigned this Oct 22, 2022
mandy-chessell added a commit to mandy-chessell/egeria that referenced this issue Oct 27, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working triage New bug/issue which needs checking & assigning
Projects
None yet
Development

No branches or pull requests

1 participant