java.sql.SQLRecoverableException: IO Error: Connection reset ( Designer / BWEngine / interfaceName )

Sometimes, when you create a JDBC Connection in your Designer, or when you configure a JDBC Connection in your EAR, You might end up with an error like this :-

Designer :-

Capture

Runtime :-

java.sql.SQLRecoverableException: IO Error: Connection reset

(In your trace file)

This happens because of urandom

/dev/random is a random number generator often used to seed cryptography functions for better security.  /dev/urandom likewise is a (pseudo) random number generator.  Both are good at generating random numbers.  The key difference is that /dev/random has a blocking function that waits until entropy reaches a certain level before providing its result.  From a practical standpoint, this means that programs using /dev/random will generally take longer to complete than /dev/urandom.

With regards to why /dev/urandom vs /dev/./urandom.  That is something unique to Java versions 5 and following that resulted from problems with /dev/urandom on Linux systems back in 2004.  The easy fix was to force /dev/urandom to use /dev/random.  However, it doesn’t appear that Java will be updated to let /dev/urandom use /dev/urandom. So, the workaround is to fake Java out by obscuring /dev/urandom to /dev/./urandom which is functionally the same thing but looks different.

Therefore, Add the following Field to bwengine.tra and designer.tra OR your Individual track’s tra file and restart the bwengine or designer and it works like Magic Johnson’s Dunk.

java.extended.properties -Djava.security.egd=file:///dev/urandom

Advertisements

TIBCO BWPM – Missing Libraries Detected

Guys,

If at all you get an error like this

Capture

 

Don’t Panic, simply copy the following list of the following jars in $CATALINA_HOME/lib

For EMS :-

  • jms.jar (if using ems 8 and above rename jms2.0.jar with jms.jar)
  • tibcrypt.jar, tibjms.jar, tibjmsadmin.jar

For Database :-

  • ojdbc.jar (rename ojdbc6.jar or ojdbc7.jar to ojdbc.jar) – ORACLE
  • mssqlserver.jar (rename to sqljdbc4.jar) – MSSQL

“BW-EXT-LOG-100000 All threads (75) are currently busy, waiting. Increase maxThreads (75) or check the servlet status”

Title: Why Do I get “BW-EXT-LOG-100000 All threads (75) are currently busy, waiting. Increase maxThreads (75) or check the servlet status” error?

Environment: Product: TIBCO BusinessWorks
Version:
OS: Any

Resolution: The error you got indicates that BW has reached the maximum number of threads available for incoming HTTP requests.
To solve your problem, you can modify the following BW property to specify higher value:

bw.plugin.http.server.minProcessors
This property specifies the minimum number of threads available for incoming HTTP requests. The HTTP server creates the number of threads specified by this parameter when it starts up. The default minimum number of threads is 10.

bw.plugin.http.server.maxProcessors
This property specifies the maximum number of threads available for incoming HTTP requests. The HTTP server will not create more than the number of threads specified by this parameter. The default maximum number of threads is 75.

You can get more details about these properties in TIBCO ActiveMatrix BusinessWorks? Palette Reference — > Chapter 6 HTTP Palette : HTTP Connection –> Custom Properties for the HTTP Palette.


Keywords: BW HTTP Threads request minProcessors

[ERROR]-[TIBCO BusinessWorksProcessMonitor]- Error While Configuration (EC1 – java.lang.NoClassDefFoundError: com/tibco/processmonitor/client/run)

Hi Guys,

Whenever you get this kind of error in TIBCO BWPM Client configuration

EC1 – java.lang.NoClassDefFoundError: com/tibco/processmonitor/client/run

Then the following can be the reasons :-

1. bwpm.jar file missing from <bw_home>/<ver>/<lib>

2. bwpm.jar corrupted

Solution :-

Get the bwpm.jar file copied to the following directory

<bw_home>/<ver>/<lib>

and

<bw_home>/<ver>/<lib>/palette/

TIBCO Business Works Process Monitor – Architecture

The Business Works Process Monitor Server is a web application running inside the application web server.

It is made up of several modules;

The picture below gives a high level and simplified overview on its most important modules,

Untitled

When the Business Works Process Monitor Server is started, it will check its configuration
settings and start all configured Data Providers.
A Data Provider is responsible for reading log messages from a channel (such as JMS) and storing those messages in the underlying database.
For each Data Provider the BWPM administrator can configure how many number of instances that should run in parallel (A) and the channel to read data from (B).
Some tuning settings are available, depending on the channel configured for the Data Provider.
When using JMS, for example, the BWPM administrator may configure the JMS pref-etch property to optimize JMS processing (C).
When a log message is processed by the Data Provider, it is hand over to the persistence
layer of the Business Works Process Monitor Server.
The persistence layer connects to a RDBMS and accomplishes read and write operations against the BWPM database.
The persistence layer is using a JDBC connection pool (D), which is shared between the Data Providers and GUI Services.
The GUI Services are used by end users and process user requests
The Business Works Process Monitor Server GUI is a web-based AJAX applications.