* IDEMPIERE-5943 Implement table partitioning support
- Fix issues with view and functional index
* IDEMPIERE-5943 Implement table partitioning support
- fix compatibility issue with PostgreSQL 16.1
* IDEMPIERE-5707 PostgreSQL should use FOR NO KEY UPDATE instead of FOR UPDATE
* IDEMPIERE-5707 PostgreSQL should use FOR NO KEY UPDATE instead of FOR UPDATE
- add trx timeout unit test
Fixes logic error in the way a user defined `jdbcUrl` in
`hikaricp.properties` is handled.
Additionally changed the default max pool size to the previous limit of
90 connections. PR #926 originally also had this but this apparantly
fell out. Testing showed that during first time server startup a flood
of connection can be made and a connection pool of 30 can be
overwhelmed and callers waiting on a connection will time-out.
* 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.
* IDEMPIERE-5093 Scheduler cron pattern scheduling is always using server time zone
* minor fix for oracle/202203240830_IDEMPIERE-5093.sql
* IDEMPIERE-5093 cheduler cron pattern scheduling is always using server time zone
- add time zone comment for cronpattern field
- use fix format for elapsed time (day'hour:minutes:seconds.millisecond)
- use time zone formatting at server monitor
- include etc/gmt* timezone id. fix handling of invalid user input
- fix wrong editor (date) use for timestamp with time zone field
* IDEMPIERE-5093 cheduler cron pattern scheduling is always using server time zone
- Fix MSchedule.getNextRunMS call.
* IDEMPIERE-5093 Scheduler cron pattern scheduling is always using server time zone
- add T_Timestamp to Test table and window.
- fix date time editor doesn't capture seconds for timestamp with time
zone.
- date time editor: use tenant time zone (if set), fallback to browser
time zone.
- date time editor: fix processing of timestamp with time zone value.
- time zone editor: drop the confusing etc/gmt* entries and support
entry of GMT(+/-)hh:mm custom zone id.
* IDEMPIERE-5093 Scheduler cron pattern scheduling is always using server time zone
Fix NPE
Co-authored-by: Carlos Ruiz <carg67@gmail.com>
Regression for problem solved at IDEMPIERE-4465 Native Postgres - Error on Convert Layer
Revert the changes on Convert_PostgreSQL and Convert_PostgreSQLTest
Fix the Convert_PostgreSQLTest to allow testing native and non-native cases
* IDEMPIERE-4771 add Cloud Upload interface to report viewer and scheduler
* IDEMPIERE-4771 add Cloud Upload interface to report viewer and scheduler
Fix initial output type selection for csv. Fix handling of binary vs
text media type.
* IDEMPIERE-4771 add Cloud Upload interface to report viewer and scheduler
- Change AD_AuthorizationAccount scope from single value to multiple
selection list (AD_AuthorizationScopes replace AD_AuthorizationScope)
* IDEMPIERE-4771 add Cloud Upload interface to report viewer and scheduler
Fix isIntersectCSV db function
* IDEMPIERE-4771 add Cloud Upload interface to report viewer and scheduler
add back AD_AuthorizationScope Configured dynamic validation filter
* IDEMPIERE-4628 Implement configurable query timeout for info window
* IDEMPIERE-4628 Implement configurable query timeout for info window
Move migration script from i8.2z to i8.2
* IDEMPIERE-4607 Cannot export windows via 2pack if any field has a Field Group
* IDEMPIERE-4607 Implement changes discussed in JIRA - Add a new isList method to DisplayType
* IDEMPIERE-4607 Fixed typo
* IDEMPIERE-4607 Implement default method to return false by default - PR CarlosRuiz