When using TIBCO Business Events 5.1.0, can you have “Memory Only” objects in Shared Nothing persistence mode?
book
Article ID: KB0090542
calendar_today
Updated On:
Products
Versions
TIBCO BusinessEvents Enterprise Edition
-
Not Applicable
-
Description
Resolution: Abstract =========== When using TIBCO Business Events 5.1.0, can you have “Memory Only” objects in Shared Nothing persistence mode?
Description: ============ In Business Events 5.1.0 we have introduced a new type of persistence mechanism called “Shared Nothing” which allows you to store data at individual node level, instead of a centralized location.
When shared nothing persistence mode is configured you cannot have objects configured as “In-Memory” objects in your CDD (Cluster Deployment Descriptor) under “Cluster Tab -> Domain Objects Overrides”. Shared Nothing will work in Cache only mode only. Any overrides for concepts/events should also be cache only”.
Workaround: ============ In Shared Nothing you define the entities as “Cache Only” and under “Cluster Tab -> Domain Objects Overrides” enable the “Constant” option by setting it to TRUE for that object. You still need to load the objects into memory everytime using "Cluster.DataGrid.CacheLoadConceptByExtIdByUri" to trigger your rules. Please note setting the CONSTANT true will still write the CONCEPTS and EVENTS to special local Cache, The processing unit has a special local cache used only for entities marked as Constant. Entities placed in this cache are only removed when they are explicitly deleted. If the processing unit finds an entity in the constant cache, it will use it without checking in the cluster cache.
Environment: ============== TIBCO Business Events 5.1.0
Symptoms: ================ Not able to read objects from memory using Instance.GetbyExtId () call or Event.getbyextid () call. Aslo, rules do not trigger even though objects are in Memory.
Cause: ============ Expected behavior with BE 5.1.0 Shared Nothing persistence because we do not support Memory Only objects.
Resolution: ============ 1). Avoid using “In Memory” objects when using Shared Nothing. 2). Use URI functions to retrieve the objects like Instance.getByExtIdByUri() or Event.getByExtIdByUri(). 3). To retrieve Shared Nothing objects using just the EXTID first load them using Cluster.DataGrid.CacheLoadConceptByExtIdByUri and Cluster.DataGrid.CacheLoadEventByExtIdByUri.
References: ========== BE SR: 1-DQHHTC
Issue/Introduction
When using TIBCO Business Events 5.1.0, can you have “Memory Only” objects in Shared Nothing persistence mode?