Wednesday, May 29, 2013

TIBCO Deployment-Internal error: Subscription context is null

You might get this error while doing deploying using AppManage utility. To resolve the issue, just rerun the deployment script one more time, it just goes away !!!. 


TIBCO Admin -Server Plugin Failed

Error appearing in TIBCO Administrator UserInterface: Server Plugin Failed **********************                                                                                               
Error log in Administrator log file : tibco.objectrepo.OperationFailedException: Error retrieving stream for VFile CriticalCellCalculation.process URI= at com.tibco.archive.impl.filevff.FileVFileStream.getInputStream(FileVFileStream.java:32) at"

Resolution
--------------

1. Stop hawk agent on the BW machine and  admin machine. If this solve the problem, then no need to perform other steps.

2. On BW machine, At the path /var/tmp OR   /tmp, there will be .tmp files related to admin domain which should be deleted.

E.g., At path /tmp/tibco_####_TIBCO_QA2_Administrator_tparhetibq017.####.com_tibco, remove all .tmp files.

[tibco@tparhetibq017 tibco_####_TIBCO_QA2_Administrator_tparhetibq017.####.com_tibco]$
ll *.tmp
-rw-r--r-- 1 tibco tibco 9911 Oct 12 11:14 tibco_####_TIBCO_QA2_Administrator_tparhetibq017.####.com59169.tmp
-rw-r--r-- 1 tibco tibco 9965 Oct 12 11:44 tibco_####_TIBCO_QA2_Administrator_tparhetibq017.####.com59179.tmp

4.Restart the hawk agent on BW machine.

3.If above steps does not solve the issue, just restart the administrator server & finally start the hawk agent on admin machine.





TIBCO EMS Issue- Zone Error

Error : SEVERE ERROR: Zone 'PL.RPTEXP.CREATE_Q.1HZONE01' is defined as type 'mhop' in configuration but also is defined as type '1hop' in meta.db

I got above error in one of EMS server and it prevented EMS to come up properly. EMS used DB as data store. First thing that we should try when we get this kind of error [which indicate a EMS database store corruptions] is to start EMS instance with '-forceStart' command like tibemsd.exe -forceStart. If this does not solve the problem, then we can go to the EMS database and remove the problematic zone records from ZONE_RECS table. In our case due to some reason , ZONE_RECS have more than 100 records for same zone with 1hop or mhop property set  which confused the EMS instance somehow.









TIBCO EMS Troubleshooting-How to find consumer and producers for EMS destinations?

1.    Based on queue name, find the consumer id and connection id.
show  consumers queue=TEST.CIB.1LST.LTD.RequestReply.ReferenceData.2 full

                                                                                            
      Id   Conn     Sess User      T Queue                                             
53675650 383273 55949126 1lst_lstm Q TEST.CIB.1LST.LTD.RequestReply.ReferenceData.2
53675651 383273 55949127 1lst_lstm Q TEST.CIB.1LST.LTD.RequestReply.ReferenceData.2

2.    Based on ‘Conn’ – connection id, we can find host from where connection is being made. Take out all the connections either based on user or if user not know, take all and then search the connection id from the list.
3.    Third column in above statement output is session ID. We can also use Gems tool to find above details from consumers section. In Gems tool, go to consumers and sort the queue name, it list down connection id and session id for each connection/consumer id.
4.    To find the producer for a given destination, best way to find the details is to use Gems tool. Gems tool provides the producer column as well for each destination.







TIBCO EMS Troubleshooting-How to find the receiver for a given EMS Durable ?

To find which host is acting as receiver for a given durable, we need to find the details of the durable.
show durable <durableName>

Get the consumer ID and do ‘show consumer <consumerID>’
Get the connection ID and find the host which is having this connection ID. There is no command to check this so we first get all the connections on the server using ‘show connections’ and try to serch connection ID.

tcp://test-uatems01:7222> show durable CDS2BBG_sit1_1
 Durable Subscriber:  CDS2BBG_sit1_1
 Subscription name:   CDS2BBG_sit1_1
 Client ID:
 Topic:               test.cib.tro.reportserver.event
 Type:                dynamic
 Status:              online
 Username:            cib_1tro_test
 Consumer ID:         577675554
 No Local:            disabled

tcp://test-uatems01:7222> show consumer 577675554
 Consumer:                  id=577675554, user durable topic subscriber
 Connection:                id=23375853, started
 Session:                   id=429355973, acknowledgement: client acknowledge
 User name:                 "cib_1tro_test"
 Topic:                     test.cib.tro.reportserver.event
 Durable name:              "CDS2BBG_sit1_1"


To narrow down the list of connection , we can take only a subset of connection by filtering by user if we know the user.

show connections user=<userName>



TIBCO EMS Troubleshooting-How to find the destination for which traffic is high in ems?


Sometime, we might have a situation where EMS might doing high processing of messages and consuming lot of memory to performance it activity. In this situation, first thing that we need to do is to find overall health of the server by running ‘info’ command. Below parameter can give your idea about load on the server.

Inbound Message Rate:     23   msgs/sec,  90.6 Kb per second

Outbound Message Rate:    5888 msgs/sec,  29.0 MB per second

Disk Read Rate:           0  reads/sec,  0.0 Kb  per second

Disk Write Rate:          89 writes/sec, 94.3 Kb per second

Uptime:                   138 days 22 hours 13 minutes

Now you can open GEMS tool and get details of queue or topic. Observe the OutboundMessage Rate of queue/topics to get the idea about destination for which most of the traffic is present in EMS.

You can download the  GEMS tool from tibco community site. Just search GEMS and you will get link to download.

EMS Troubleshooting - Connections Status



EMS Troubleshooting - Connections Status

Just adding a useful info about EMS connection troubleshooting. When we get TIBCO EMS connectivity issue, first thing that we generally check which connection was not closed gracefully. EMS logs provides this information by 'reason' field. Whenever a client disconnect it connection or connection is disconnected due to any reason, EMS server will log this event in its log file and specify the reason for disconnection. A gracely closure of connection will have reason as reason:connection closed.
 
A good connection log is below. This indicates that connection was closed properly.
2013-02-20 11:16:18.843 [tibco@DTC2100CC3B24C2]: Disconnected, connection 
id=22923192, reason: connection closed (iothr.c:162)
 
A bad connection termination log is below. This indicate that connection was not closed gracely.
2013-03-22 23:37:51.923 [tibco@DTCJPR8BLAFN]: Disconnected, connection
 id=383967, reason: connection terminated (iothr.c:162)
 
 
 

Monday, May 13, 2013

How to find uptime of a window server?



How to find uptime of a window server?
 
We can use ‘net statistics server’ to get details of uptime of a window server.


C:\Documents and Settings\U228806>net statistics server

Server Statistics for \\DTCJPR8BLAFN



Statistics since 3/8/2013 9:10 AM

Ranjeet Singh

Saturday, May 11, 2013

How To find the version of installed TIBCO software on a server

On Window server/host , you can go to _installInfo directory under TIBCO_HOME which could be C:\tibco\_installInfo or may be under a different Drive. You will see a list of xml file created for each product that has been installed. Note that you need to see only xml file ending with _prodInfo.xml and ignore ending with _prodInfo.xml.BKP.

On Unix Server/Host, you can follow similar steps. TIBCO_HOME directory  will be different on unix.


Ranjeet Singh
-------------