mirror of
				https://github.com/apache/cloudstack.git
				synced 2025-11-04 00:02:37 +01:00 
			
		
		
		
	Per docs, if the mysql connector is JDBC2 compliant then it should use the Connection.isValid API to test a connection. (https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#isValid-int-) This would significantly reduce query lags and API throughput, as for every SQL query one or two SELECT 1 are performed everytime a Connection is given to application logic. This should only be accepted when the driver is JDBC4 complaint. As per the docs, the connector-j can use /* ping */ before calling SELECT 1 to have light weight application pings to the server: https://dev.mysql.com/doc/connector-j/en/connector-j-usagenotes-j2ee-concepts-connection-pooling.html Replaces dbcp2 connection pool library with more performant HikariCP. With this unit tests are failing but build is passing. Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com> Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com> Co-authored-by: Rohit Yadav <rohityadav89@gmail.com>
		
			
				
	
	
		
			128 lines
		
	
	
		
			4.5 KiB
		
	
	
	
		
			Properties
		
	
	
	
	
	
			
		
		
	
	
			128 lines
		
	
	
		
			4.5 KiB
		
	
	
	
		
			Properties
		
	
	
	
	
	
# Licensed to the Apache Software Foundation (ASF) under one
 | 
						|
# or more contributor license agreements.  See the NOTICE file
 | 
						|
# distributed with this work for additional information
 | 
						|
# regarding copyright ownership.  The ASF licenses this file
 | 
						|
# to you under the Apache License, Version 2.0 (the
 | 
						|
# "License"); you may not use this file except in compliance
 | 
						|
# with the License.  You may obtain a copy of the License at
 | 
						|
#
 | 
						|
#   http://www.apache.org/licenses/LICENSE-2.0
 | 
						|
#
 | 
						|
# Unless required by applicable law or agreed to in writing,
 | 
						|
# software distributed under the License is distributed on an
 | 
						|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 | 
						|
# KIND, either express or implied.  See the License for the
 | 
						|
# specific language governing permissions and limitations
 | 
						|
# under the License.
 | 
						|
 | 
						|
# management server clustering parameters, change cluster.node.IP to the machine IP address
 | 
						|
# in which the management server is running
 | 
						|
cluster.node.IP=127.0.0.1
 | 
						|
cluster.servlet.port=9090
 | 
						|
region.id=1
 | 
						|
 | 
						|
# CloudStack database settings
 | 
						|
db.cloud.username=@DBUSER@
 | 
						|
db.cloud.password=@DBPW@
 | 
						|
db.cloud.host=@DBHOST@
 | 
						|
db.cloud.driver=@DBDRIVER@
 | 
						|
db.cloud.port=3306
 | 
						|
db.cloud.name=cloud
 | 
						|
 | 
						|
# Connection URI to the database "cloud". When this property is set, only the following properties will be used along with it: db.cloud.maxActive, db.cloud.maxIdle, db.cloud.maxWait, db.cloud.username, db.cloud.password, db.cloud.driver, db.cloud.validationQuery, db.cloud.isolation.level. Other properties will be ignored.
 | 
						|
db.cloud.uri=
 | 
						|
 | 
						|
 | 
						|
# CloudStack database tuning parameters
 | 
						|
db.cloud.connectionPoolLib=hikaricp
 | 
						|
db.cloud.maxActive=250
 | 
						|
db.cloud.maxIdle=30
 | 
						|
db.cloud.maxWait=600000
 | 
						|
db.cloud.minIdleConnections=5
 | 
						|
db.cloud.connectionTimeout=30000
 | 
						|
db.cloud.keepAliveTime=600000
 | 
						|
db.cloud.validationQuery=/* ping */ SELECT 1
 | 
						|
db.cloud.testOnBorrow=true
 | 
						|
db.cloud.testWhileIdle=true
 | 
						|
db.cloud.timeBetweenEvictionRunsMillis=40000
 | 
						|
db.cloud.minEvictableIdleTimeMillis=240000
 | 
						|
db.cloud.poolPreparedStatements=false
 | 
						|
db.cloud.url.params=prepStmtCacheSize=517&cachePrepStmts=true&sessionVariables=sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'&serverTimezone=UTC
 | 
						|
 | 
						|
# CloudStack database SSL settings
 | 
						|
db.cloud.useSSL=false
 | 
						|
db.cloud.keyStore=
 | 
						|
db.cloud.keyStorePassword=
 | 
						|
db.cloud.trustStore=
 | 
						|
db.cloud.trustStorePassword=
 | 
						|
 | 
						|
# Encryption Settings
 | 
						|
db.cloud.encryption.type=none
 | 
						|
db.cloud.encrypt.secret=
 | 
						|
db.cloud.encryptor.version=
 | 
						|
 | 
						|
# usage database settings
 | 
						|
db.usage.username=@DBUSER@
 | 
						|
db.usage.password=@DBPW@
 | 
						|
db.usage.host=@DBHOST@
 | 
						|
db.usage.driver=@DBDRIVER@
 | 
						|
db.usage.port=3306
 | 
						|
db.usage.name=cloud_usage
 | 
						|
 | 
						|
# Connection URI to the database "usage". When this property is set, only the following properties will be used along with it: db.usage.maxActive, db.cloud.maxIdle, db.cloud.maxWait, db.usage.username, db.usage.password, db.usage.driver, db.usage.validationQuery, db.usage.isolation.level. Other properties will be ignored.
 | 
						|
db.usage.uri=
 | 
						|
 | 
						|
 | 
						|
# usage database tuning parameters
 | 
						|
db.usage.connectionPoolLib=hikaricp
 | 
						|
db.usage.maxActive=100
 | 
						|
db.usage.maxIdle=30
 | 
						|
db.usage.maxWait=600000
 | 
						|
db.usage.minIdleConnections=5
 | 
						|
db.usage.connectionTimeout=30000
 | 
						|
db.usage.keepAliveTime=600000
 | 
						|
db.usage.url.params=serverTimezone=UTC
 | 
						|
 | 
						|
# Simulator database settings
 | 
						|
db.simulator.username=@DBUSER@
 | 
						|
db.simulator.password=@DBPW@
 | 
						|
db.simulator.host=@DBHOST@
 | 
						|
db.simulator.driver=@DBDRIVER@
 | 
						|
db.simulator.port=3306
 | 
						|
db.simulator.name=simulator
 | 
						|
db.simulator.connectionPoolLib=hikaricp
 | 
						|
db.simulator.maxActive=250
 | 
						|
db.simulator.maxIdle=30
 | 
						|
db.simulator.maxWait=600000
 | 
						|
db.simulator.minIdleConnections=5
 | 
						|
db.simulator.connectionTimeout=30000
 | 
						|
db.simulator.keepAliveTime=600000
 | 
						|
db.simulator.autoReconnect=true
 | 
						|
 | 
						|
# Connection URI to the database "simulator". When this property is set, only the following properties will be used along with it: db.simulator.host, db.simulator.port, db.simulator.name, db.simulator.autoReconnect. Other properties will be ignored.
 | 
						|
db.simulator.uri=
 | 
						|
 | 
						|
 | 
						|
# High Availability And Cluster Properties
 | 
						|
db.ha.enabled=false
 | 
						|
db.ha.loadBalanceStrategy=com.cloud.utils.db.StaticStrategy
 | 
						|
# cloud stack Database
 | 
						|
db.cloud.replicas=localhost,localhost
 | 
						|
db.cloud.autoReconnect=true
 | 
						|
db.cloud.failOverReadOnly=false
 | 
						|
db.cloud.reconnectAtTxEnd=true
 | 
						|
db.cloud.autoReconnectForPools=true
 | 
						|
db.cloud.secondsBeforeRetrySource=3600
 | 
						|
db.cloud.queriesBeforeRetrySource=5000
 | 
						|
db.cloud.initialTimeout=3600
 | 
						|
 | 
						|
#usage Database
 | 
						|
db.usage.replicas=localhost,localhost
 | 
						|
db.usage.autoReconnect=true
 | 
						|
db.usage.failOverReadOnly=false
 | 
						|
db.usage.reconnectAtTxEnd=true
 | 
						|
db.usage.autoReconnectForPools=true
 | 
						|
db.usage.secondsBeforeRetrySource=3600
 | 
						|
db.usage.queriesBeforeRetrySource=5000
 | 
						|
db.usage.initialTimeout=3600
 |