【问题标题】:Failed to read postmaster.pid file while running embedded-postgres运行 Embedded-postgres 时无法读取 postmaster.pid 文件
【发布时间】:2022-06-30 22:11:48
【问题描述】:

我的 Spring 应用程序使用 yandex-qatools/postgresql-embedded 来执行单元测试。

在执行它们时,我不断收到以下错误:

ERROR 75847 --- [    Test worker] r.y.q.embed.postgresql.PostgresProcess   : Failed to read PID file (File '/var/folders/sh/xr6l_7bs1_z9v1jfsyctc45w0000gp/T/postgresql-embed-b05c213f-7416-4200-a586-a3afb3263478/db-content-4f285249-22ea-4625-b771-156adbf5851f/postmaster.pid' does not exist)

java.io.FileNotFoundException: File '/var/folders/sh/xr6l_7bs1_z9v1jfsyctc45w0000gp/T/postgresql-embed-b05c213f-7416-4200-a586-a3afb3263478/db-content-4f285249-22ea-4625-b771-156adbf5851f/postmaster.pid' does not exist

在异常之前弹出警告,但现在,让我们忽略它。

WARN 75847 --- [    Test worker] r.y.q.embed.postgresql.PostgresProcess   : Possibly failed to run initdb:
no data was returned by command ""/private/var/folders/sh/xr6l_7bs1_z9v1jfsyctc45w0000gp/T/postgresql-embed-b05c213f-7416-4200-a586-a3afb3263478/pgsql-10.3-1/pgsql/bin/postgres" -V"

The program "postgres" is needed by initdb but was not found in the

same directory as "/private/var/folders/sh/xr6l_7bs1_z9v1jfsyctc45w0000gp/T/postgresql-embed-b05c213f-7416-4200-a586-a3afb3263478/pgsql-10.3-1/pgsql/bin/initdb".

Check your installation.

我确认没有其他 Postgress 实例在我的本地机器上运行,使用 ps -ef|grep postgres

也关注了这个thread,但没有帮助。

没有办法解决这个问题,谁能建议如何解决它。

OSX 版本:12.1

提前致谢

【问题讨论】:

    标签: postgresql spring-boot macos yandex embedded-postgres


    【解决方案1】:

    就我而言,除了您的错误之外,我还可以看到以下错误:

    r.y.q.embed.postgresql.PostgresProcess:可能无法运行 initdb: initdb:无效的区域设置;检查 LANG 和 LC_* 环境变量

    这条消息让我找到了解决方案。我刚刚将以下环境属性添加到我的 .zshrc 文件中:

    export LANG="en_US.UTF-8" 
    export LC_ALL="en_US.UTF-8" 
    export LC_CTYPE="en_US.UTF-8"
    

    【讨论】:

      猜你喜欢
      • 2021-06-16
      • 2017-12-08
      • 1970-01-01
      • 2014-10-26
      • 2020-02-27
      • 1970-01-01
      • 2021-05-24
      • 2019-02-11
      • 2017-08-31
      相关资源
      最近更新 更多