cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Stefan_Erucsir
Level 3

Multiple application instances, one trusted storage

I ran into an issue with flexnet embedded. I have the following situation:

Two application instances use the same trusted storage. One instance requests a feature from the license server, stores it in the trusted storage. The other instance acquires the feature from the local trusted storage.

The expected behavior would be that if the one instance puts the feature in the trust storage, that the other instance can acquire the feature after that. (See attached file "flexera_multiple_clients_expected_behavior.png")

However I noticed that the actual behavior is different: If "Main Instance" tries to acquire the feature after "Other Instance" put it in the trust store, I get a FeatureNotFoundException, if "Main Instance" created its LicenseManager instance before the feature was in the trusted storage.

The detailled message is

Requested feature was not found. Error report=[1,7E3,B,0[7000000B,0,702C7]]

However I can see that the feature is in the trusted storage, if I show the features in "diagnostic" mode with

licenseManager.getFeaturesFromTrustedStorage(true)

Which returns this (Just for readability, I converted it to JSON notation)

[ {
"name" : "FeatureX",
"serialNumber" : null,
"expiration" : 1680393599000,
"version" : "1.0",
"count" : 1,
"meteredSecondsLeftInUndoInterval" : 0,
"meteredUndoInterval" : 0,
"issuer" : "My Corporation",
"availableAcquisitionCount" : 1,
"entitlementExpiration" : 1680353999000,
"hostIds" : {
"ANY" : [ "ANY" ]
},
"issued" : 1678712400000,
"perpetual" : false,
"metered" : false,
"meteredReusable" : false,
"notice" : null,
"preview" : false,
"serverInstance" : "SERVER_DEFAULT",
"finalExpiration" : 1680353999000,
"maxCount" : 1,
"inGracePeriod" : false,
"served" : true,
"acquisitionStatus" : "VALID",
"vendorString" : null,
"startDate" : 1677675600000
} ]

 

The only workaround I found it to let "Main Instance" destroy its LicenseManager instance, and create it anew. Then it can acquire the feature.

Is there any other way around this?

0 Kudos
(1) Reply
jberthold
Revenera Moderator Revenera Moderator
Revenera Moderator

Hi @Stefan_Erucsir ,

Please submit a support ticket so that someone can work with you directly on this issue.

Thanks,

Jim

0 Kudos