Bug描述
当尝试构建连接到运行中的PostgreSQL示例的代码时,Langflow进程会停止并重新启动。
+[__NSCFConstantString initialize] 可能在调用fork()时已经在另一个线程中进行。我们不能安全地调用它或在fork()子进程中忽略它。而是崩溃了。请在objc_initializeAfterForkError上设置断点以进行调试。
OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES已经被设置为环境变量,当我们运行调试器时,我们看到如果检测到darwin,它也会在Langflow中设置。
重现步骤
- 设置一个正在运行的PostgreSQL数据库服务(默认情况下在本地主机的端口5432上)
- 打开流程
- 构建自定义组件
预期行为
查询正常返回
谁可以帮忙?
@ogabrielluiz
操作系统
macOS
Langflow版本
1.0.9, 1.0.10
Python版本
3.12
1条答案
按热度按时间piztneat1#
要解决在macOS上连接PostgreSQL数据库时Langflow崩溃的问题,可以尝试以下步骤:
确保数据库URL的格式正确。Langflow中的
SQLExecutorComponent
类用"postgres://"替换了"postgresql://"。请确保您的数据库URL遵循此格式。确保
OBJC_DISABLE_INITIALIZE_FORK_SAFETY
环境变量设置为YES
。这对于在macOS上运行Gunicorn时避免错误是必要的。作为使用Gunicorn的替代方案,您可以使用Uvicorn运行服务器,这样就不需要
fork()
,并避免了macOS上的相关问题。将日志级别设置为
debug
以获取有关崩溃的更详细信息。这可以帮助进一步诊断问题。检查由
log_file
选项指定的日志文件中的详细日志。通过遵循这些步骤,您应该能够减轻与macOS上的PostgreSQL连接相关的崩溃问题。如果问题仍然存在,请考虑更新到Langflow的最新版本,因为新版本中可能已经修复或改进了与此问题相关的功能。