问题标签 [agroal]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
native - 如何在运行时使用本机支持建立 Agroal 连接
我正在尝试通过 Agroal 在本机映像中建立动态数据库连接。无法使用默认配置参数,因为我在编译时不知道连接参数。现在还有可能吗?连接在运行时是这样建立的:
我目前看到此错误:
安装的功能包括:[agroal, cdi, jdbc-h2, jdbc-mysql, jdbc-postgresql, kotlin, narayana-jta, resteasy, resteasy-jackson]
它在 JVM 上运行良好,但不使用 Graal。感觉应该是可能的,我可能在这里遗漏了一些东西。我希望添加agraol
扩展就足够了,但显然没有正确选择。
java - 尝试提交事务的 Quarkus 和 JDBC 错误
我正在尝试使用 Quarkus,构建一个小型 REST 应用程序。为此,我选择使用 Agroal 数据源,但既不使用 Panache 也不使用普通 Hibernate(如他们的示例所示),而是使用普通 JDBC。
对于数据库交互,我创建了一个注入 AgroalDataSource 并使用它打开数据库连接的小型服务。所述服务公开了两种方法,一种用于不运行事务查询,另一种用于运行事务查询。对于第一部分,一切正常,但是当我尝试更新数据库条目时,尝试提交连接时操作失败。
我得到的堆栈跟踪如下:
我正在使用 Quarkus 提供的默认 Agroal 数据源,没有任何自定义配置。至于QueryRunner
这些只是 Apache DbUtils 套件的一部分。
有没有人知道如何解决这个问题?
hikaricp - 如何将 quarkus 与其他 ORM (activejdbc) 一起使用
如何将 quarkus 与其他 ORM 一起使用,例如 ActiveJdbc 框架。因为现在 hibernate panache 没有足够的功能。
- 我知道quarkus可以有过滤器,这对于打开连接很有用,但是如何关闭连接或将连接返回池?
- quarkus 是否仅设计为与 agroal 良好,我们可以使用 hikaricp 吗?
谢谢你
java - Quarkus AS400 数据源不使用所有可用连接
在 Quarkus 上,我们配置了一个默认数据源来连接到 as400:
司机是
它可以工作,但有时如果池中有可用的连接,连接也会被创建。当我们达到 15 个可用连接(池最大大小)时,我们收到错误,因为 agroal 无法获得连接:
未检测到连接泄漏,连接存在且可用,其他数据源上没有出现问题,它们使用不同的驱动程序(mysql),我们检查了一切是否正确关闭
Windows 服务器上的 Jdk 11,quarkus 1.5.0.Final 和 1.4.2.Final
jooq - jooq 的 quarkus 结构
我在 php 上有应用程序后端。但最近我在 Quarkus 上创建了相同的后端,并将其部署在带有数据库 MYSQL 的 kubernetes 上。我在 php 后端路由一半用户,从应用程序路由一半 qaurkus。PHP 后端工作正常,但 quarkus 后端出现问题,它在几个小时后卡住,请求延迟增加超过一分钟,有时甚至超时。好吧,在检查了一些堆栈之后,我发现它卡在了数据源中的 getConnection 上,我正在起诉 agroal。它不是数据库问题,因为与此同时,如果我使用 php 检查应用程序,它工作正常,没有任何问题或延迟。我也尝试增加和减少最小/最大池大小,但仍然是同样的问题。我将分享我在 mysql 中使用 quarkus、agroal 和 jooq 的结构。我认为问题在于那个。
我正在使用 kotlin,而 DSLContext 是静态对象。
应用程序.kt
DBHelper.kt
如您所见,我在应用程序开始时将 JOOQ 初始化为单例,然后在 DBHelper 的对象中设置其实例以继续使用它而不是创建新的。所以我怀疑这可能是我需要每次通过注入创建新的 DSLContet 实例的问题。然后我创建了模型来访问这样的数据库
最后我正在访问这样的模型
我认为有些地方资源泄漏
quarkus - 有没有办法在多租户数据库模式下通知 quarkus-hibernate-orm 中的 rollback-on-commit?
目前,quarkus 仅支持 JDBC 和 Agroal 扩展的多个数据源,如文档中所述。
但是,Agroal 扩展(使用 narayana-agroal)不会向Exception
应用程序代码通知任何提交时回滚,尽管一些 JDBC 驱动程序抛出SQLException
表明数据库在提交阶段被回滚,包括Google Cloud Spanner JDBC 驱动程序。这使得无法正确处理回滚(例如,向客户端返回错误代码)。
有什么办法可以绕开这个问题吗?谢谢!
quarkus - 数据库连接失败时自动重新连接
Quarkus 提供了在失败获取时配置重新连接以通过配置属性进行反应连接的可能性
- quarkus.datasource.reactive.reconnect 尝试
- quarkus.datasource.reactive.reconnect-interval
我正在寻找如何为非反应连接获得相同的功能。
我的第一个想法是通过玩 AgroalDataSourceListener 来重新连接,但开发人员拒绝了注入侦听器的想法。而是选择了注入 AgroalPoolInterceptors。但是通过查看拦截器的接口,看起来拦截器对我的问题没有帮助。
那么你知道如何强制 AgroalCP 无限地重新连接到数据源吗?
ssl - 使用 SSL 的 Quarkus JDBC 连接
我将 quarkus 与 Panache + Agroal 一起使用。
我需要设置SSL
启用的数据库连接(postgres)。所以我需要以某种方式配置server-cert
,client-cert
和client-key
.
我只看到这可用于响应式客户端。
这可以实现非反应性的吗?我很难相信没有人需要这个。
quarkus - 随机“未使用活动事务的已登记连接”错误
在我的 Quarkus 应用程序中,我Enlisted connection used without active transaction
每天都会遇到一次错误(在一个经常使用的公共 API 上)。
它似乎来自 Agroal(这里https://github.com/agroal/agroal/blob/master/agroal-pool/src/main/java/io/agroal/pool/ConnectionHandler.java#L393)。
根据堆栈跟踪,它在带有注释的 REST 端点中的各个位置失败@Transactional
。
在 PostgreSQL 中,我只得到以下内容:
java - Vertx JDBC NoSuchMethodError 'java.sql.Connection io.agroal.api.transaction.TransactionIntegration.getConnection()'
我正在尝试将 vertx JDBC 与 MS SQL Server 一起使用。
我得到以下堆栈跟踪:
我的一部分build.gradle
:
我尝试选择其他版本,但总是遇到同样的错误。我试图寻找库函数,但我找不到任何版本的方法。TransactionIntegration
getConnection()
我的代码: