Problem



When attempting to start up the Blueworx Voice Response Beans Environment (VRBE) subsystem, either automatically when Blueworx Voice Response starts up, or manually using the dtjshost and dtjstart commands, the system is either slow to respond or times out.

After VRBE has started, the other scripts that use the dtjplex command such as dtjqapps or dtjqnode will also exhibit the same poor performance.


Cause



When VRBE is started, or the associated scripts are run, hostname resolution is performed. In Java 1.4 and later, both IPv6 and IPv4 are supported. By default, the JVM will perform hostname resolution for both IPv6 and IPv4 addresses. If the Domain Name System (DNS) server is not configured to handle IPv6 queries properly then the JVM has to wait for the IPv6 query to time out before resolving using IPv4. This timeout introduces the delay when running the VRBE scripts.



Resolving the problem



If you are using both IPv4 and IPv6 addresses in your environment then it is most likely that the DNS server is not set up correctly to handle the IPv6 queries. In that case, contact your network administrator to investigate further.


If you are sure that the BVR server will only communicate using IPv4 addresses then you can set the following Java property to force the JVM to only perform IPv4 queries: 


 -Djava.net.preferIPv4Stack=true 


This parameter will have to be added manually to the following scripts: 



  1. $DTJ_DIR/dtjshost

  2. $DTJ_DIR/dtjplex

  3. $DTJ_DIR/default.cff

  4. $DTJ_DIR/dtjstop

  5. $DTJ_DIR/dtjstart



Locate the line in each file where the java command is invoked and add the parameter to the command.

For example, in the dtjplex file change the line:

java -Ddtj.home="$DTJ_HOME" com.ibm.telephony.directtalk.PlexManagerImpl "$@"

to

java -Djava.net.preferIPv4Stack=true -Ddtj.home="$DTJ_HOME" com.ibm.telephony.directtalk.PlexManagerImpl "$@"