cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

License heartbeat not reading the license key

DilipVoora
Active Participant
0 Kudos
824

Hi Experts,

I am noticing that the license heartbeat is not validating and reflecting the details of the license key even after 2 hours. 

Scenario:

1. Installed an ASE (16.0 SP03 PL08) Enterprise Edition(EE), Server License (SR) on a host/instance created using compute engine service of GCP by specifying the option "continue installation with out license key".
2. After logging into the dataserver processes checked the output of sp_lmconfig and verified the details PE:EE and LT:SR.
3. After one and half hours of time I placed the valid license key - OEM (PE: EE, LT:AC) under $SYBASE/SYSAM-2_0/licenses with name as SYBASE.lic
4. Same time the license.properties file under $SYBASE/$SYBASE_ASE/sysam is modified for the LT from SR to AC.
5. Now when I login to the dataserver and in sp_lmconfig output I see the LT is getting displayed as AC and for the version of the ASE_CORE to reflect, I waited for 6 hours but it didn't. Attached the results.

Questions:

1. Does license heartbeat validate .lic file(s) and license.properties file or only .lic file(s)?
2. If it validate both why it didn't validate .lic file and reflected the date in sp_lmconfig?
3. In case of served license the date reflected after 2 hours but why it didn't with unserved one?

Please advise.

Regards,
Dilip Voora

Accepted Solutions (0)

Answers (2)

Answers (2)

DilipVoora
Active Participant
0 Kudos

Hi Mark,

Thanks for your responses. Even after a case is opened there isn't any justification on this scenario from PS and they told me that LT is static in case of non-null edition (EE, XE etc..) as per the sp_lmconfig | SAP Help URL.

From my side I did couple of tests (see attached) and I noticed the below from those tests. 


Test 1:

1. Installed an ASE by specifying license type 'AC', continue without license key and then we built the DS and BS processes of ASE using resource files.
2. Connect to the DS of ASE and checked the output of sp_lmconfig and it is showing as expected 'ASE_CORE' is in grace and LT as AC in the first and third sections.
3. Placed a valid license key (PE:EE, LT:AC) and didn't changed anything in the properties file.
4. Exactly after 2 hours heartbeat read the license key and we see the ASE_CORE as permanent.
5. No errors/warnings in the dataserver's errorlog.

Test 2:

1. Installed an ASE by specifying license type 'CP', continue without license key and then we built the DS and BS processes of ASE using resource files.
2. Connect to the DS of ASE and checked the output of sp_lmconfig and it is showing as expected 'ASE_CORE' is in grace and LT as CP in the first and third sections.
3. Placed a valid license key (PE:EE, LT:AC) and also changed LT from 'CP' to 'AC' in the properties file.
4. After 2 hours heartbeat didn't read the license key and we see the ASE_CORE still in grace. However the properties file got overridden with a new file in which we can see the LT as 'CP'.
5. No errors/warnings in the dataserver's errorlog.

Test 3:

1. Installed an ASE by specifying license type 'CP', continue without license key and then we built the DS and BS processes of ASE using resource files.
2. Connect to the DS of ASE and checked the output of sp_lmconfig and it is showing as expected 'ASE_CORE' is in grace and LT as CP in the first and third sections.
3. Placed a valid license key (PE:EE, LT:AC) 
4. Removed the properties file under $SYBASE/$SYBASE_ASE/sysam directory
5. After 2 hours heartbeat didn't read the license key and we see the ASE_CORE still in grace. Also the properties file got created in which we can see the LT as 'CP'.
6. Kernel messages stating that there is no valid properties file.


Questions:

1. What is the actual behaviour of license heartbeat ?
2. In tests 2,3 we see the properties file (re)generated with respect to the valid license but still the ASE_CORE is showing under grace. Is there is an additional functionality that is coming in here in tests 2,3?
3. How the test 1 passed if the parameter is static in case of EE (non-null edition)?
4. PS telling that the developer(s) reply is to reboot every time we place a valid license file which actually is contradicting the results from test 1. 

Regards,
Dilip Voora

Mark_A_Parsons
Contributor
0 Kudos

tl;dr

Verify the accuracy of the license file, in particular the hostid.

I would expect the license heartbeat process to write something to the (dataserver) errorlog upon trying to process the new license file.  Are there any license-related messages in the errorlog?

---------------------- rambling details ...

I've got an ASE instance running under a PE=EE/LT=EV license. The pertinent details from sp_lmconfig:

 Parameter Name    Config Value
 ----------------- ------------
 edition           EE
 license type      EV

 License Name    Version    Quantity Status       Expiry Date          Server Name
 --------------- ---------- -------- ------------ -------------------- --------------------
 ASE_ENCRYPTION  2024.09100 1        expirable    Sep 11 2024 12:00AM  null                
 ASE_CORE        2024.09100 1        expirable    Sep 11 2024 12:00AM  null                
 ASE_PARTITIONS  2024.09100 1        expirable    Sep 11 2024 12:00AM  null                

 Property Name Property Value
 ------------- --------------
 PE            EE
 LT            EV

Let's see what happens when I leave the license file alone but modify the sysam/properties file as follows:

PE=EE
LT=Peanut_Butter

Immediately afterwards I run sp_lmconfig and I'm presented with the following:

 Parameter Name    Config Value
 ----------------- ------------
 edition           EE
 license type      Peanut_Butter

 License Name    Version    Quantity Status       Expiry Date          Server Name
 --------------- ---------- -------- ------------ -------------------- --------------------
 ASE_ENCRYPTION  2024.09100 1        expirable    Sep 11 2024 12:00AM  null                
 ASE_CORE        2024.09100 1        expirable    Sep 11 2024 12:00AM  null                
 ASE_PARTITIONS  2024.09100 1        expirable    Sep 11 2024 12:00AM  null                

 Property Name Property Value
 ------------- --------------
 PE            EE
 LT            EV

Items of interest:

  • 1st result set displays the (invalid) license type of 'Peanut_Butter'; this indicates sp_lmconfig a) merely mimics whatever if finds in the sysam/properties file and b) performs no validation checks on the license type
  • none of the licensing info in the 2nd and 3rd result sets change; this indicates sp_lmconfig populates these two result sets with data from a (valid) license file; in this case it also appears to confirm that the nonsensical license type ('Peanut_Butter' from the modified sysam/properties file) has no bearing on the 2nd/3rd result sets
  • NOTE: I don't plan on waiting around for a couple hours to see if/how the license heartbeat responds so it's possible the nonsensical 'Peanut_Butter' license type could cause some problems ...

In your case we see from the 2nd set of sp_lmconfig output:

  • 1st result set correctly picks up the new license type of 'AC' from your modified sysam/properties file
  • 2nd result set still shows a graced license for ASE_CORE
  • 3rd result set still shows no valid PE=/LT= pair

Since the 2nd/3rd result sets of your sp_lmconfig output do not change, and assuming the license heartbeat process is running as expected, I would assume there may be an issue with the license file as it relates to this particular ASE installation (eg, invalid hostid).

The fact ASE can checkout a served license indicates the SySAM server (not the same thing as the ASE dataserver) sees a valid license file.

How would this be possible? One possibility:

  • the SySAM server is running on host1 with hostid=12345; the (served) license file was (correctly) generated with hostid=12345; net result: SySAM sees a valid license file and ASE can successfully check out a license
  • the ASE dataserver is running on host2 with hostid=67890; the (unserved) license file was (incorrectly) generated with hostid=abcde; net result: ASE sees an invalid license file so it continues running on the graced license

 

 

 

 

 

 

 

Mark_A_Parsons
Contributor
0 Kudos
If the SySAM and ASE servers are running on the same host, and using the same license file, I'd want to rule out an issue with the license heartbeat process by bouncing the ASE instance to see if it sees the valid (unserved) license file.
DilipVoora
Active Participant
0 Kudos

Hi Mark,

The valid license in my case is an OEM and it can be used on any host (snip below). No errors in the dataserver errorlog after I changed the LT in properties file and also after 2 hours.

# License for Host ID ANY
INCREMENT ASE_EE SYBASE 2025.03300 permanent uncounted \
VENDOR_STRING=SORT=200;PE=EE;LT=AC HOSTID=ANY \
ISSUER="CO=Sybase, Inc.;AS=A;MP=2283;CP=0;EGO=" \

In this particular case(hostid as ANY) license heartbeat will not read the .lic file? sp_lmconfig mimics the changes in properties file and the license heartbeat never checks it. Can you please clarify this? Yes, after restarting the dataserver process, I can see the date reflecting under ASE_CORE and status as permanent.

Regards,
Dilip Voora


 

Mark_A_Parsons
Contributor
0 Kudos

I ran the following test:

  • removed the EE/EV license file
  • modified the sysam/properties file with EE/AC (invalid in my case since I don't have an AC license)
  • bounced the ASE instance (ASE 16.0 SP04 PL04)
  • errorlog says can't find license file but allows ASE to start on graced EE/EV license
  • sp_lmconfig shows EE/AC (per sysam/properties file) and the EE/EV license as graced
  • reinstalled the EE/EV license file
  • 2 hrs later the SySAM license heartbeat sees the EE/EV license file and prints several lines into the ASE errorlog (in this case stating the EE/EV licenses are going to expire in September)
  • sp_lmconfig still shows the invalid EE/AC (per sysam/properties file) but the EE/EV licenses are now showing expirable

Net result: the SySAM license heartbeat process appears to behave as expected (in my environment)

I don't have a GCP environment nor an OEM/HOSTID=ANY license to test with so I've run out of ideas.

If I understand your latest comment correctly ... ASE does see the license upon reboot of the ASE instance.  If this is correct but you're still interested in knowing why you have to bounce the ASE instance then all I can suggest is to open a case with tech support ... perhaps there's an issue with the GCP + OEM/HOSTID=ANY combo?