Commit Graph

16 Commits

Author SHA1 Message Date
hengsin 9c7713fa8d
IDEMPIERE-5448 2023 June Platform Update (#1531)
* IDEMPIERE-5448 Can't launch unit test with Eclipse 2022-09

- upgrade to tycho 3.1.0-SNAPSHOT
- set maven compiler source and target level to 11
- upgrade to junit 5.9.1

* IDEMPIERE-5448 Can't launch unit test with Eclipse 2022-09

- Change tycho version to 3.0.3

* IDEMPIERE-5448 2023 June Platform Update

* IDEMPIERE-5448 2023 June Platform Update

- Explicitly set target, source and release level to JavaSE 11

* IDEMPIERE-5448 2023 June Platform Update

- Use 3.0.5-SNAPSHOT to fix stack overflow error.

* IDEMPIERE-5448 2023 June Platform Update

- Change source, target and release level to JDK 17
- Update target platform name to idempiere-230620

* IDEMPIERE-5448 2023 June Platform Update

- Fix LogFactory ClassNotFound exception with Eclipse 2023-06
2023-06-21 13:44:18 +02:00
Jasper Siepkes 861e3ad01f
IDEMPIERE-5013 Implement HikariCP as a replacement for c3p0 (#926)
* Replaced PostgreSQL and Oracle connection pools with HikariCP.

Replaced C3P0 with HikariCP. HikariCP is a Apache licensed connection pool with substantially better performance and better resilience to failure (DB disconnects, etc.) then C3P0. Read more about it here: https://github.com/brettwooldridge/HikariCP .

Cleaned up the `getCachedConnection` method. With HikariCP there is no need to retry to obtain a connection since getting an connection will block until a free connection is available or until a timeout is reached (default 30 seconds) at which point an `SQLException` is thrown. This also removed calling `Runtime.getRuntime().runFinalization();`. HikariCP is currently configured to detect / log leaks when a connection hasn't returned to the pool for longer then 5 minutes.

Loading of pool config properties was cleaned up. Defaults are now loaded from a single file instead of defaults coming from both file and hardcoded properties. It is now also possible to specify any HikariCP property in the user pool property file.

Initialization of the datasource must happen in the `getDataSource()` method because at object construction not all JDBC config is known. However this method could (as far as I could tell) be called concurrently from multiple threads but had no mechanism to prevent initializing the DB pool multiple times. The variable in which the pool itself was stored (`m_ds`) also was not marked volatile or immutable which could lead to visibility issues. Instead of lazy initialization of the pool in the `getDataSource()` method the pool could probably better be initialized at object construction. However I wasn't able to achieve that without breakage therefor I made the initialization mechanism work correctly with concurrent invocations.

Various config options such as the `MaxStatementsPerConnection` options were removed because HikariCP doesn't support them.

* (Re)added Sequence time-out.
2022-09-10 12:21:57 +02:00
hieplq d7808da56a IDEMPIERE-3531:setting output build, jdk follow project convert from pure plugin to maven
a mavent project convert from plugin have flow default rule
   1. maven project prefer setting JRE to Execution environment, so .classpath is updated
   2. java class compliment to target/classes/, so build.propertie is updated
   3. JDK compliance configuration setting per project (only this option), so .settings/org.eclipse.jdt.core.prefs is created

extra setting about warning done manual to resolved
https://bugs.eclipse.org/bugs/show_bug.cgi?id=367431

   it happend on bundle use non-standard java package
      org.adempiere.base/.settings/org.eclipse.jdt.core.prefs
      org.adempiere.ui.swing/.settings/org.eclipse.jdt.core.prefs

   on org.adempiere.server, old method add accessrules to classpathentry don't work for maven build.
   so change to warning method make it consitent with other
      org.adempiere.server/.settings/org.eclipse.jdt.core.prefs
2018-02-03 01:39:47 +07:00
hieplq b6d9886732 IDEMPIERE-3531:standard lib folder
on all project, put library into lib folder, so easy apply parametrize
remove some unuse (don't see reference) library
2018-02-02 13:47:07 +07:00
hieplq 06ae8b2df8 IDEMPIERE-3136:all stuff relate library of idempiere
update jdbc for postgresql so support postgresql 10
2017-10-18 17:20:15 +07:00
Carlos Ruiz 4fd83bcdd7 IDEMPIERE-3241 Table Index Validate not working with postgresql 9.6 2016-11-07 19:44:46 +01:00
Carlos Ruiz 00d8a3a0d6 IDEMPIERE-2950 Create Columns from db Process is not working 2015-11-25 19:21:43 -05:00
Carlos Ruiz 5392cdf541 IDEMPIERE-2907:update library (zk, c3p0) / upgrade to postgresql-9.4-1204.jdbc41.jar 2015-10-25 13:09:13 -05:00
hieplq 1e5df4c39a IDEMPIERE-2907:update library (zk, c3p0)
update c3p0 0.9.5
2015-10-25 22:43:08 +07:00
Carlos Ruiz 4803643ab2 IDEMPIERE-2245 Platform Upgrade for r3 2014-10-29 13:36:29 -05:00
Heng Sin Low aaa4806797 IDEMPIERE-1205 Update PostgreSQL JDBC Driver to Version 9.2-1004 (2013-07-11). Apparently, the version at the website is not the latest and have buggy setQueryTimeout implementation. See http://www.postgresql.org/message-id/CADK3HHK_jk2KjsVW_aPBW-+GRdoXvd4X2SLYOEzHqfpwfDwPJA@mail.gmail.com for details. 2013-07-29 17:11:01 +08:00
Heng Sin Low 194cd9f05e IDEMPIERE-1205 Update PostgreSQL JDBC Driver to Version 9.2-1002 (2012-11-14). 2013-07-29 15:22:59 +08:00
Heng Sin Low e30bded686 IDEMPIERE-770 Upgrade c3p0 to 0.9.2 2013-03-19 13:31:55 +08:00
Carlos Ruiz 0646e28b82 IDEMPIERE-455 Discover and fix FindBugs problems / Eclipse warning -> build 2012-12-21 10:05:17 -05:00
Heng Sin Low d4e9ae0656 IDEMPIERE-359 Add OSGi Service support for existing extension point. Move more core services to OSGi service. 2012-11-08 17:36:50 +08:00
Heng Sin Low 83715fa436 Refactoring to make project and folder name the same as the bundle symbolic name. Migrate to use eclipse feature and product configuration ( build is broken, to fix later ) 2010-09-29 15:25:34 +08:00