Appendix B - Troubleshooting the CBS Installation

The Scheduling Bridge establishes a persistent connection (10 concurrent sessions) to the database, which can be verified through the Bridge the Help -> About dialog box. The Scheduling Server only connects to the database on startup to download scheduling information and when scheduling information is saved via the Scheduling Server’s interactive client interface.

Note: Running multiple versions of the Scheduling Server and/or Communications Bridge and runtime files (schedserv.dll and schedsock.dll) may cause problems that are very difficult to isolate. Ensure after every CBS upgrade that all servers, bridges and the runtime file versions are in sync.

Note: In IFS Applications 7, the Graphical Server DLLs are included in Foundation1. If these DLLs have been installed on the client system (usually in C:\Windows\System32) through a Foundation1 client runtime installation, and are also included in the shared runtime folder, a conflict can occur. In this case, a separate copy of the IFS Applications runtime without gsw32.exe, gswag32.dll and gswdll32.dll should be created for those CBS Clients having the Foundation1 runtime installed locally.

Settings in the Windows Registry

The Scheduling Server and Bridge store their configuration settings in the Windows registry in the HKEY_LOCAL_MACHINE (HKLM) hive. Some of the critical registry entries created by the installation program are described below:

Component Registry Key
CBS Server HKLM-> SOFTWARE-> IFS-> IFS Scheduling-> CBS-<database>-<site>
CBS Bridge HKLM-> SOFTWARE-> IFS-> IFS Communication Bridge-<database>
CBS Server Registry Entries Description
<CBS Server>->Settings->Language File Name of the CBS Server language file.
<CBS Server>->Settings->Listeningport Local machine’s port number for CBS Server.
<CBS Server>->Settings->User interface By default “Server”, but can be changed to “Client” to display the interactive client for troubleshooting purposes. For increased stability, the “Server” setting is recommended for normal use.
<CBS Server>->Settings->Settings->Basic data Default values should not be changed.
<CBS Server>->Settings->Settings->Log files Basic settings for handling of log files.
CBS Bridge Registry Entries Description
<CBS Bridge>->Appowner Name of the IFS applications owner user in the database.
<CBS Bridge>->Connectstring
<CBS Bridge>->Dbpwd
<CBS Bridge>->Dbuser
<CBS Bridge>->EncryptedLogon
These four settings configure the CBS Server and Bridge for database login. When configured for an Encrypted Logon, use the installation program or password utility to generate the encrypted username and password.
<CBS Bridge>->Info Static text that can be localized into a different single-byte language.
<CBS Bridge>->InstallRoot Location of the installed Bridge files.
<CBS Bridge>->Logfile Location and name of the Bridge log file.
<CBS Bridge>->LoginRetryDelay Time in seconds that the Bridge will wait before attempting to reconnect to the database.
<CBS Bridge>->Maxhours Maximum time in hours that an idle database connection will be left open.
<CBS Bridge>->Maxlogsize The Bridge log file will not exceed this size.

All of these registry settings as well as setting the Scheduling Server’s Host and Port for the specified site in the database are configured during initial installation. The registry settings can be changed if necessary through the Windows utility RegEdit. The database settings can be changed manually if necessary through any of the IFS Applications Windows clients that include CBS.

The Shop Order Scheduling Basic Data screen can be found in any IFS Enterprise Explorer. Follow the IFS EE navigator to Shop Order Scheduling Basic Data. The values on the Scheduling Server tab for Host and Port must match those in the registry on the Scheduling Server machine.

Log Files for the CBS Server and Bridge
 

Component Log File Name Description
Bridge BridgeLog.txt
BridgeLog2.txt
The Bridge logs errors and activity to these files. The files are rotated, so check the file time/date stamp to determine which log file is currently active.
Server Notificationlog.txt Scheduling Server errors messages are written to this log.
Server inputlog.txt Commands sent from the database to the Scheduling Server are written to this log.
Server outputlog.txt Responses sent from the Scheduling Server to the database are written to this log.

The last entries written to the input, output and notification log files are displayed in the Scheduling Server Log Window in IFS Scheduling Server window (Figure B-1)

Figure B-1 Scheduling Server Log Window

Runtime Error Message Descriptions

Additional information about some error messages sent back to the user by the Scheduling Server and Communication Bridge are provided here.

Scheduling Server

Problem:Could not find object
Analysis:Scheduling Server could not find the object to which the Constraint Based Scheduling module is referring. This can occur for instance when trying to sequence the orders in the system using a characteristic that has is not valid for any of the parts of the given site.
Resolution: 
Problem:General syntax error
Analysis:This could be due to either programming errors or communication problems. Messages communicated to the scheduling server contain syntax errors. This could happen if the transfer was interrupted somewhere in the middle, or if the program code contains erroneous message headers etc.
Resolution: 
Problem:Unknown request or query
Analysis:This is probably due to a programming error. The name of the request or query sent to the scheduling server is unknown. The fault could also be that the scheduling server has read past the message headers because end-of-line characters are missing in the message.
Resolution: 
Problem:Transaction pending
Analysis:The scheduling server has started a transaction and is waiting for commit or rollback. This is not normal: it should be regarded as a programming error if it happens.
Resolution: 
Problem:No transaction pending
Analysis:The scheduling server has not started a transaction but receives commit or rollback. This is not normal: it should be regarded as a programming error if it happens.
Resolution: 
Problem:Could not remove object
Analysis:An object should be removed from the schedule, but that operation fails. This could happen in situations where orders are reported, cancelled, parked etc or status is set to finished. It could also happen when you change something, because what may actually happen in those cases is that something is removed and then inserted into the schedule again. If the error occurs, it is probably due to a programming error. The most likely cause is that the object does not exist anymore and therefore cannot be removed.
Resolution: 
Problem:Could not create object
Analysis:An object should have been put into the schedule, but that operation fails. This could happen e. g. when creating shop orders, releasing DOP structures, changing operations for an order, or adding resources to a work center. The most likely cause of the fault is that the object is already created. If the error occurs, it is probably due to a programming error.
Resolution: 
Problem:Unknown item name
Analysis:This is due to a programming error. It will occur when trying to fetch data from the scheduling server with an item name that does not exist. See the interface object model for details.
Resolution: 
Problem:Could not modify value
Analysis:A value should have been modified on an object in the schedule, but that operation fails. This could be caused by the object having a scheduling status that does not allow modification of that value, or that it is a read-only attribute. See the interface object model for details.
Resolution: 
Problem:Could not move object
Analysis:This error could happen when reorganizing the schedule model. An object is moved to another place, but the operation fails. The most likely cause is that there is already an object with that name in that place.
Resolution: 
Problem:Could not rename object
Analysis:This error could happen when reorganizing the schedule model. An object should get another name, but the operation fails. The most likely cause is that there is already an object with that name in that place.
Resolution: 
Problem:Could not add object relation
Analysis:This happens when trying to relate two objects (e g operation – work center). The two objects exist, but do not accept the relation, probably because a relation with that item name could not exist between these two objects. See the interface object model for details.
Resolution: 
Problem:Could not remove object relation
Analysis:This happens when trying to unrelate two objects (e g operation – work center). The two objects exist, but do not know of the relation, either because a relation with that item name could not exist between these two objects, or because there is no relation to remove. See the interface object model for details.
Resolution: 
Problem:Could not save information to file
Analysis:In some cases information is saved to file by the scheduling server, as rollback information. If, for some reason, the scheduling server fails to open a file on its operating system, this error may occur. This may be due to a full disk or lack of RAM memory on the computer that runs the scheduling server.
Resolution: 
Problem:Could not read information from file
Analysis:In some cases information is saved to file by the scheduling server, as rollback information. If, for some reason, the scheduling server fails to open a file on its operating system, this error may occur. This may be due to a full disk or lack of RAM on the computer that runs the scheduling server. The file could also be removed by accident by someone working with that computer.
Resolution: 
Problem:Could not build calendar information
Analysis:This error occurs when the scheduling server attempts to build a calendar but fails, probably due to lack of sufficient RAM. 
Resolution: 
Problem:Not a valid date
Analysis:This is probably due to a programming error: a date is passed to the scheduling server, but it is not a valid date or has the wrong format. Try to locate the procedure that generates the date and refer to the message reference for details.
Resolution: 
Problem:Not a valid day
Analysis:This is probably due to a programming error: a day is passed to the scheduling server, but it is not a valid date or has the wrong format. Try to locate the procedure that generates the date and refer to the message reference for details.
Resolution: 
Problem:Not an operation
Analysis:Some requests carried out by the scheduling server may only be carried out on operations: this error is due to the fact that an object that is not an operation is passed with such a request. Try to locate the procedure that generates the error and refer to the message reference for details.
Resolution: 
Problem:Not a resource
Analysis:Some requests carried out by the scheduling server may only be carried out on resources: this error is due to the fact that an object that is not an operation is passed with such a request. Try to locate the procedure that generates the error and refer to the message reference for details.
Resolution: 
Problem:Schedule version has changed
Analysis:This error occurs when trying to switch the whole schedule with one that was retrieved earlier and then changed. If the server’s schedule has changed in the meantime, you get this error message. This is perfectly normal and is an equivalent to “object modified by another user”. Retrieve the schedule and change again. (This functionality is not used in 10.4)
Resolution: 
Problem:No valid object name
Analysis:A probably blank name is provided when trying to create an object. This is a programming error. The name could also contain strange characters.
Resolution: 
Problem:Could not find parent
Analysis:This error occurs when reorganizing the schedule model. An object is to be moved to another parent, but the parent is not found. This is a programming error.
Resolution: 
Problem:Could not change the sequence
Analysis:A set of operations should have been moved to between two other operations, and optionally also to another resource, but that fails. This could be due to that the operations or the resource cannot be found.
Resolution: 
Problem:Could not put operation in schedule
Analysis:This happens in startup situations, if operations for some reason have been double-booked on resources. This is an effect of a previous error that has not been properly detected and means that the schedule and the database are not properly synchronized. The remedy is to perform a full schedule of operations, which will synchronize the schedule and the database again.
Resolution: 
Problem:No scheduled times found on object
Analysis:This error could occur when doing forward scheduling. A routine tries to retrieve the scheduled end time from the object. There is no resulting end time, which means that it has not been properly scheduled.
Resolution: 
Problem:Invalid message to begin a transaction
Analysis:The scheduling server is expecting a message header with a particular format. It did not receive this message header in the message that it has received.
Resolution: 
Problem:Transaction cancelled due to system interrupt command
Analysis:A scheduling server interrupt command was sent to the scheduling server. This command is sent when the scheduling server shuts down.
Resolution: 
Problem:Transaction timed out waiting for a lock
Analysis:The transaction could not be processed on the scheduling server, because the scheduling server is busy. Retry the transaction when the scheduling server might not be as busy.
Resolution: 
Problem:Transaction timed out waiting for message, lock released
Analysis:The scheduling server did not receive an end of transaction message within a reasonable amount of time. This occurs in processes, such as sequencing, that can lock the scheduling server for an indeterminate amount of time. Repeat the transaction without waiting too long between steps.
Resolution: 
Problem:Transaction cancelled due to system restart command
Analysis:A scheduling server restart command was sent to the scheduling server. This command is sent to the scheduling system from the basic data form for constraint based scheduling in IFS Applications when a site is enabled for constraint based scheduling.
Resolution: 
Problem:Transaction cancelled due to exit command from interpreter
Analysis:A scheduling server interrupt command was sent to the scheduling server. This command cannot be sent to the scheduling server without detailed knowledge of the scheduling system architecture.
Resolution: 
Problem:Empty response from interpreter
Analysis:No response was received from the scheduling server for the command sent to it. This is most likely a programming error in the database interface to the scheduling server or in the scheduling server.
Resolution: 
Problem:Scheduling Server busy
Analysis:The scheduling server is busy processing a request.
Resolution: 

Constraint Based Scheduling

Problem:Timeout (nn) Seconds
Analysis:The timeout message is given when the database could not establish communication with the Scheduling Server. Either the Scheduling Server is not started or the Scheduling Server is locked by another user.
Resolution: 
Problem:No response from the Transaction Manager
Analysis:The transaction manager process is not running. Check the process in the IFS Applications Constraint Based Scheduling Basic Data window for the transaction manager. Restart the transaction manager if it is not running.
Resolution: 

Communication Bridge

Problem:Connection to the Scheduling server failed
Analysis:The communication bridge could not connect to the scheduling server. This is could be because the scheduling server is not running or the host and port address given to the communication bridge to contact the scheduling server is incorrect. Check the host and port settings.
Resolution: 

Troubleshooting

Problem:Sometimes it takes quite a long time to, for instance, create an order or modify an operation. This usually takes no time at all.
Analysis:Scheduling Server communicates with the rest of IFS Applications through the Communication Bridge. When the Bridge has been idle for a period of time e.g. overnight, the first request or query may take a little longer than it otherwise does. This is normal, since the address may have to be resolved through the Domain Name Server of your system.
Resolution:Scheduling Server can be reconfigured or reinstalled using the IP Address instead of the DNS Name to avoid this problem.
Problem:Messages do not appear to reach the Communication Bridge.
Analysis: 
Resolution:Check that the Communication Bridge priority is set to HIGH in the Microsoft Windows Task Manager. Should this not be the case, set it to high.
Problem:The Scheduling Server refuses to start.
Analysis: 
Resolution:
  1. Make sure the Communication Bridge is started and does not have any errors in its log file.
  2. Make sure the correct host and port are stated in the Basic Data for Scheduling form.
  3. Make sure the Disable Scheduling Server on Site check box in the Basic Data for Scheduling form is unchecked.

Should none of the above measures resolve the problem, please contact IFS.

 
Problem:The Communication Bridge refuses to start.
Analysis: 
Resolution:
  1. Turn off the Scheduling Server(s)
  2. Make sure that no application is running on the computer designated as host of the Communication Bridge.
  3. Check the log file for any errors.
  4. Make sure that the Oracle client bin directory (usually $ORACLE_HOME/bin) is in the operating system path so that the Bridge can access this.
  5. Shutdown and restart the Bridge application.

Should none of the above measures resolve the problem, please contact IFS.

Problem:The Scheduling Server will not start. An Event Registry message was received that shows an error 'Calendar(s) .. for this site must be generated first. When starting the scheduling server it may be necessary to disable CBS for this site to generate the calendar(s).'
Analysis: 
Resolution:
  1. Disable the Scheduling Server for the site.
  2. Generate the calendar(s) that are listed in the error message or generate all calendars used as the default distribution calendar or in work centers for this site.
  3. Restart the Scheduling Server.
  4. Enable the Scheduling Server for the site.

You may have to reschedule all operations after re-starting Scheduling Server because some operations may have been occupying work times which have now been changed.

Problem:If the Graphical Server executables conflict on a CBS Client.
Analysis: 
Resolution: Create a separate copy of the IFS Applications runtime without gsw32.exe, gswag32.dll and gswdll32.dll for the CBS Clients having IFS Foundation1 Runtime installed locally.