Additional information on using Instance.getByExtIdByUri() catalog function

Additional information on using Instance.getByExtIdByUri() catalog function

book

Article ID: KB0081702

calendar_today

Updated On:

Products Versions
TIBCO BusinessEvents Enterprise Edition 5.x

Description

The resolution will provide additional Information about the usage of Instance.getByExtIdByUri() catalog functions. The most important point is that the extID must be unique across all objects in cluster.

Issue/Introduction

Information about the usage of Instance.getByExtIdByUri() catalog functions (extID must be unique across all objects in cluster)

Environment

All Operating Systems

Resolution

Usage of Instance.getByExtIdByUri() catalog functions (extID must be unique across all objects in cluster)
 
The catalog function Instance.getByExtIdByUri() should be used only when persistence type is configured as SharedNothing or the usage of the objecttable is disabled (be.backingstore.useobjecttable=false, see https://docs.tibco.com/pub/businessevents-enterprise/5.5.0/doc/html/GUID-EDC9DC01-6C0B-4324-B0F9-79416DBEA6F2.html).
The returned concept will not added to the working memory to update the agenda. When this is required load the concept using catalog function Cluster.DataGrid.CacheLoadConceptByExtIdByUri().
 
It is still required that the extId for the concept (if set) must be unique across all objects in the cluster.
You cannot define/create different concepts with same extID. The agent loads the first concept that matches the extID in local memory (two concepts with same extID created in same RTCcycle).
See also: https://docs.tibco.com/pub/businessevents-enterprise/5.5.0/doc/html/GUID-F48D8BE5-DD50-4E23-B57A-1585C0A8FB69.html
 
Reference from documentation on the catalog function Instance.getByExtIdByUri():

"Returns the Concept instance identified by extId and with URI matching URI or null if not found.
Note:
This method should not be used to load cache-only concepts into working memory for modifications, especially if they have not already been loaded in a pre-processor."
 

Additional Information

Instance.getByExtIdByUri