---
url: /v6.2/en-us/startup-faq.md
---
# HENGSHI SENSE Startup FAQs

## Startup Related Issues

### Kernel Parameter Issue Leading to Engine Startup Failure

```text
[2023-05-06.03:39:33.960][hengshi@0c3eb9a1f944][hengshi-sense-bin:45][ INFO ]: starting engine
[2023-05-06.03:39:33.972][hengshi@0c3eb9a1f944][hengshi-sense-bin:811][ INFO ]: check resources needed if avaiable.
127.0.0.1 checkHostSysConfig fail! kernel.sem is not set properly, please check it manually in /etc/sysctl.conf and /etc/sysctl.d/*.conf
current sem: 250 32000 32 128, at least should be: '250 2018500 100 8074'
false
```

The possible causes of this error message are:

* The `init-os all` operation was not executed correctly.
* The `init-os all` operation was executed successfully, but the shell was not re-logged in as prompted to refresh the configuration.

  ```shell
  cd /opt/hengshi
  bin/hengshi-sense-bin init-os all
  # Then you need to re-login to the shell to refresh the configuration
  ```

### Port Conflict Leading to Service Startup Failure

```text
[2023-05-06.03:51:22.860][hengshi@0c3eb9a1f944][hengshi-sense-bin:773][ ERROR ]: metadb port 54320 is not avaiable.
 Resrouces needed are not available, Abort!
```

The above example indicates that port 54320 is already in use. The most common reasons are:

1. The service using this port is already running.
2. The port is occupied by another process. You can modify the port of the corresponding HENGSHI service and start it using an available port. The following command can be used to check which program is occupying the port:

```shell
netstat -nlp | grep <PORT>
```

### JDK Version Issue Causing HENGSHI Service Startup Failure

```text
[2023-05-06.03:45:36.835][hengshi@0c3eb9a1f944][hengshi-sense-bin:1226][ ERROR ]: required: java >= 11.0.0
```

HENGSHI service depends on JDK 11. The solution is as follows:

* Execute `init-os all`, and the program will automatically fetch JDK-11 resources from the internet.

  ```shell
  cd /opt/hengshi
  bin/hengshi-sense-bin init-os all
  ```

* If the deployment environment is an intranet and cannot connect to the internet, refer to [Offline Environment Dependency Preparation](install-dependencies-offline.md).

### Doris Engine Startup Failure

1. Missing Configuration

```text
[2023-05-06.03:51:22.860][hengshi@0c3eb9a1f944][hengshi-sense-bin:773][ ERROR ]: please set DORIS_FE_HOSTS and DORIS_BE_HOSTS params
```

Refer to [Doris Engine Configuration](engine-doris-config.md#notes) for this issue.

1. JDK Version Dependency Not Met

```text
[2023-05-06.03:45:36.835][hengshi@0c3eb9a1f944][hengshi-sense-bin:1226][ ERROR ]:Doris engine is required by JDK-1.8
```

The Doris engine service depends on JDK-1.8. The solution is as follows:

* Execute `init-os all`, and the program will automatically fetch JDK-1.8 resources from the internet.

  ```shell
  cd /opt/hengshi
  bin/hengshi-sense-bin init-os all
  ```

* If the deployment environment is offline and cannot connect to the internet, refer to [Offline Environment Dependency Preparation](install-dependencies-offline.md).

### metadb Version Too Low Causes HENGSHI Service Startup Failure

```text
[2023-05-11 18:50:15.162] [783213] [] [] [0] [] [1] [ERROR] [org.springframework.boot.SpringApplication] [821]  - Application run failedorg.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.internal.license.FlywayEditionUpgradeRequiredException: Flyway Teams Edition or PostgreSQL upgrade required: PostgreSQL 9.6 is no longer supported by Flyway Community Edition, but still supported by Flyway Teams Edition.
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1804)
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620)
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
 at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
 at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
 at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
 at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
 at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:322)
 at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
 at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)
 at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
 at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
 at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147)
 at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731)
 at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408)
 at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
 at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303)
 at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292)
 at com.hengshi.nangaparbat.bootstrap.Bootstrap.main(Bootstrap.java:131)
 at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
 at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.base/java.lang.reflect.Method.invoke(Method.java:566)
 at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49)
 at org.springframework.boot.loader.Launcher.launch(Launcher.java:108)
 at org.springframework.boot.loader.Launcher.launch(Launcher.java:58)
 at org.springframework.boot.loader.PropertiesLauncher.main(PropertiesLauncher.java:467)
Caused by: org.flywaydb.core.internal.license.FlywayEditionUpgradeRequiredException: Flyway Teams Edition or PostgreSQL upgrade required: PostgreSQL 9.6 is no longer supported by Flyway Community Edition, but still supported by Flyway Teams Edition.
 at org.flywaydb.core.internal.database.base.Database.ensureDatabaseNotOlderThanOtherwiseRecommendUpgradeToFlywayEdition(Database.java:130)
 at org.flywaydb.core.internal.database.postgresql.PostgreSQLDatabase.ensureSupported(PostgreSQLDatabase.java:61)
 at org.flywaydb.core.FlywayExecutor.execute(FlywayExecutor.java:190)
 at org.flywaydb.core.Flyway.migrate(Flyway.java:124)
 at org.springframework.boot.autoconfigure.flyway.FlywayMigrationInitializer.afterPropertiesSet(FlywayMigrationInitializer.java:66)
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863)
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800)
 ... 26 common frames omitted
```

The root cause of this issue is that the HENGSHI service does not support using PostgreSQL versions <10 as the metadb service.\
Please refer to [Database Service Upgrade](metadb-upgrade.md).

### syslog Service Startup Failure

```text
/opt/hengshi/lib/syslog-ng/sbin/syslog-ng: relocation error: /opt/hengshi/lib/syslog-ng/lib/libresolv.so.2: symbol __h_errno, version GLIBC_PRIVATE not defined in file libc.so.6 with link time reference
```

* The glibc version in the deployment environment is too low.

  ```text
  ### Example for centos7.4 version, upgrade glibc to version 2.17-326.el7_9
  Installed Packages
  glibc.x86_64                                          2.17-196.el7                                            @CentOS
  Available Packages
  glibc.i686                                            2.17-326.el7_9                                          updates
  glibc.x86_64                                          2.17-326.el7_9                                          updates
  ```

* After upgrading glibc, restart the syslog service.

  ```shell
  cd /opt/hengshi
  bin/hengshi-sense-bin start syslog
  ```

### Monit Service Startup Issue

Symptom: The service starts successfully, but the following error appears in the logs:

error while loading shared libraries: libnsl.so.1: cannot open shared object file: No such file or directory

Cause: The system base libraries installed in the HENGSHI environment are of a newer version. In these recent versions, libnsl is no longer included as a default core system library.

Solution: You can manually install the compatibility library using the commands below:

For RHEL/CentOS (yum)

```bash
sudo yum install libnsl -y
```

For Ubuntu/Debian (apt)

```bash
sudo apt-get update
sudo apt-get install libnsl2
```
