egeria: Building a data catalog notebook failures if run quickly

Scenario

  • 1.5 release code
  • odpi-egeria-lab chart deployed into openshift 4.3
  • Run through ‘config’ and ‘start’ notebooks
  • Open ‘building a data catalog’ and execute Run->Run All Cells

2 failures occur

1. Zone visibility

assetOwner = "tanyatidie"
ownerType  = "USER_ID"
​
addOwner(cocoMDS2Name, cocoMDS2PlatformName, cocoMDS2PlatformURL, erinsUserId, "Asset 1", asset1guid, assetOwner, ownerType)
addOwner(cocoMDS2Name, cocoMDS2PlatformName, cocoMDS2PlatformURL, erinsUserId, "Asset 2", asset2guid, assetOwner, ownerType)
addOwner(cocoMDS2Name, cocoMDS2PlatformName, cocoMDS2PlatformURL, erinsUserId, "Asset 3", asset3guid, assetOwner, ownerType)
​
addZones(cocoMDS2Name, cocoMDS2PlatformName, cocoMDS2PlatformURL, erinsUserId, "Asset 1", asset1guid, ["data-lake", "human-resources"])
addZones(cocoMDS2Name, cocoMDS2PlatformName, cocoMDS2PlatformURL, erinsUserId, "Asset 2", asset2guid, ["data-lake", "human-resources"])
addZones(cocoMDS2Name, cocoMDS2PlatformName, cocoMDS2PlatformURL, erinsUserId, "Asset 3", asset3guid, ["data-lake"])
​
Setting owner on Asset 1 to tanyatidie ...
Setting owner on Asset 2 to tanyatidie ...
Setting owner on Asset 3 to tanyatidie ...
Setting governance zones on Asset 1 ...
Setting governance zones on Asset 2 ...
Setting governance zones on Asset 3 ...
Once these zones are set up, Callie can see the assets:

[17]:

assetConsumerPrintAssets(cocoMDS3Name, cocoMDS3PlatformName, cocoMDS3PlatformURL, calliesUserId, newFilesSearchString)
No assets found

In fact we should see assets here.

2. Retrieving assets

server2AssetEntityQuery = server2RepositoryServicesURL + '/instances/entity/' + asset1guid
​
print (" ")
print ("GET " + server2AssetEntityQuery)
​
response = requests.get(server2AssetEntityQuery)
​
print ("Returns:")
prettyResponse = json.dumps(response.json(), indent=4)
print (prettyResponse)
print (" ")
 
GET http://lab-core:8080/servers/cocoMDS2/open-metadata/repository-services/users/garygeeke/instances/entity/10b3bd34-e491-4cc2-9791-3a60b4e3f6f8
Returns:
{
    "class": "EntityDetailResponse",
    "relatedHTTPCode": 400,
    "exceptionClassName": "org.odpi.openmetadata.repositoryservices.ffdc.exception.EntityProxyOnlyException",
    "exceptionErrorMessage": "OMRS-REPOSITORY-400-051 A request for entity 10b3bd34-e491-4cc2-9791-3a60b4e3f6f8 has been passed to repository cocoMDS2 as the guid parameter of the getEntityDetail operation but only an entity proxy has been found",
    "exceptionSystemAction": "The system is unable to return all of the details of the entity.  It can only supply an entity summary.",
    "exceptionUserAction": "The fact that the system has a proxy means that the entity exists in one of the members of the connected cohorts.  The repository where it is located may be unavailable, or the entity has been deleted but the delete request has not propagated through to this repository."
}
 
The entity includes its type definition and the properties of the asset. Also notice the metadata collection id for cocoMDS1 around the middle of the structure.

These errors are specific to running through the notebook quickly… If a small pause (a few seconds is sufficient) then the notebook runs successfully.

  • Need to understand the reason (sync vs async)
  • May need to add protection in notebooks (sleep)if expected [at some point we may want to run automated for validation, and in any case should be robust for users]

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Comments: 18 (13 by maintainers)

Commits related to this issue

Most upvoted comments

It definately needs investigating - there should be no timing issue - I think there is a bug in the enterprise connector in that it is not properly combining the classification results.