SONAR-8458 store semantic version in sq-version.txt
Scanners load the file sq-version.txt to get the
version of SonarQube. Some scanners, for example Maven,
do not correctly support the new format on 4 fields.
For this reason a 3-digits format must be kept for
backward-compatibility. The complete version in the
new format is available in the new file
sonar-api-version.txt
Improve db migration from 5.0 and indexing step at server startup
* Parallel bulk indexing of documents into Elasticsearch
* reduce memory consumption when building JSON requests
* no need to change type of column PROJECT_MEASURES.MEASURE_DATE as it is not used
* fix created_at/updated_at fields of manual_measure when saved from Rails
* remove usage of deprecated delete-by-query
Specify data types on inserts into project_measures
At least when using Oracle databases, projects with large volumes of
updates (over a million inserts per hour) see lots of cursor
contention, accounting for up to 40% of the database's activity (after
adjusting the shared pool size appropriately). This is due to the
presence of null values where the database can't determine the data
type, and therefore has to try different variants of the statement.
Specifying the data types on the non-blob columns avoids the type
uncertainty, and solves the cursor contention.
Signed-off-by: Stephen Kitt <steve@sk2.org>