Hull COS Agent (HCA)

Hull COS Agent (HCA) is a Windows service used to distribute data between different sites in the COS environment. The HCA operates between the Hull applications and the COS (Common Object Storage) servers, storing and retrieving data. In other words, Hull applications do not communicate with the COS servers directly but the data always flows through the HCA.

Note: Hull can be run as stand-alone, local projects without setting up the COS environment. The COS server is only needed when a project needs to be distributed.

When project data needs to be accessed outside the local network, a separate locally running satellite COS server and HCA should be set up to synchronize with the main COS server.

Automatic download of new data

The HCA checks the status of all blocks and hull line subsets regularly. If a block is out-of-date and not checked out by the current site, the latest version of the block’s construction database will be downloaded automatically. If a hull line subset is out-of-date, a full get operation will be performed on the subset.

The interval for the automatic status check and download of block data can be set in the COS installer when creating a new COS server or when configuring an existing COS server. By default, the update interval is 60 seconds. Changing the value to 0 will disable the feature.

Important: It is strongly advised to not set the interval shorter than 60 seconds, as this could result in noticeable performance issues.

The interval for the status checks can also be set in the HCA-specific registry settings with the auto_update_interval parameter. See HCA Registry below.

HCA registry

Data required by a single HCA instance is stored in the registry of the machine that hosts the HCA. The HCA will read the parameters from the registry during start-up. The default values are set during installation.

The parameters that affect concurrent behavior, along with their minimum, maximum and default values, are listed in the following table. "Task" refers to an operation that can be requested via the Check Out/In dialog.

Parameter Description Min Max Default
working_threads Number of working threads 1 Number of CPU cores
project_queued_tasks Max. number of queued tasks per project 1 1,000 250
project_done_tasks Max. number of finished tasks the HCA will keep the result for. This is requested by Hull when the user wants to check the progress of a task. 0 10,000 1,000
HCA_queued_tasks Max. number of queued tasks across all projects within the HCA 1 10,000 750

auto_update_interval

The interval in seconds at which the HCA checks the status of blocks. Value 0 disables the status checking.

0

60

HCA log files

The HCA log file contains all messages of the HCA. The log files are never automatically deleted by the system.

Log path

The log file directory path is set in the registry with the log_path parameter.

By default the log_path setting is empty and the file is stored locally in %ProgramData%\Cadmatic\HCA\[hca name]\logs. The log path cannot be a mapped network drive, because it runs in a different logon context.

The log file naming principle when the log path is set is the following:

[hca name]_ [ISO Time].log (for example, HCA_OL_ 2015-01-05T14-54-34.log).

If the HCA cannot write log messages to the log files, it uses Windows event logging instead. This may be the case if the HCA has no write access to the log file directory or if the custom log file directory from the registry does not exist.

Logging debugging messages

Debugging messages can be included in the log file. This can be done in the COS installer when creating a new COS server or when configuring an existing COS server, by selecting Log debug > Yes.

Logging debugging messages can also be set in the registry with the debug_messages parameter.

The log file naming principle in debug mode is the following:

[hca name]_ [ISO Time]_DEBUG.log (for example, HCA_OL_ 2015-01-05T14-54-34_DEBUG.log).

HCA User Accounts

The HCA needs to read and write the hcaprojects.xml. For more information on the file, see Hull administration files.

After the HCA account has been added during COS installation, you can change the account or the password.

Do the following:

  1. Open the Services application on the machine that hosts the HCA.

  2. Double-click the HCA service. The Properties dialog for the selected service opens.

  3. Select the Log On tab.

  4. Enter the credentials.

  5. Click Apply, and then click OK.

In order for the HCA to start, the account needs to be able to log on as a service.

To grant the permission, do the following:

  1. Open the Local Security Policy application.

  2. Expand Local Policies, and select User Rights Assignment.

  3. Double-click Log on as a service.

  4. The Log on as a service Properties dialog opens.

  5. Click Add User or Group. The Select Users, Computers, Service Accounts, or Groups dialog opens.

  6. Add the desired account, and click OK.

COS Credentials

COS users are users only known to the COS server. In order for the HCA to communicate with the COS server, both the user name and password need to be passed on to the HCA.

In the CADMATIC desktop, the HCA is created when you create a COS user when creating distributed projects. For more information, see Creating COS (distributed) projects.