Pierre Goiffon
3ff117596d
💡 N°4325 add phpdoc
2021-09-24 17:16:59 +02:00
Pierre Goiffon
4cf4c0e4c3
♻️ N°4325 refactor CMDBSource mysqli attributes to a separate wrapper class ( #237 )
...
In 2.7.5 with N°3513 we added a second mysqli attribute in CMDBSource, so that we can test transactions (see TransactionsTest).
But this wasn't documented, and was really causing confusion !
This refactor wraps both attributes in a dedicated object so that the logic is clearer.
2021-09-24 11:45:39 +02:00
Molkobain
3a05e9159d
PHPDoc
2021-09-23 12:29:34 +02:00
Eric
3359609349
Allow mode selection for queries
2021-07-31 15:23:19 +02:00
Eric
a117906ff6
🎨 Add constant for cmdbsource log channel
2021-07-02 17:01:46 +02:00
Eric
4d80235d89
🎨 add phpDoc
2021-06-28 13:58:12 +02:00
Pierre Goiffon
2a1e0b7429
Merge remote-tracking branch 'origin/support/2.7' into develop
...
# Conflicts:
# core/dbobject.class.php
# core/log.class.inc.php
# setup/compiler.class.inc.php
2021-06-28 08:58:34 +02:00
Pierre Goiffon
8259a79cd2
🎨 Factorize LogAPI channels value in LogChannels class
2021-06-25 17:13:35 +02:00
Eric
b1ca1f2630
N°3513 - ObjectFormManager : remove transaction
...
* Add automatic tests
* Fix object consistency
2021-06-22 16:09:41 +02:00
Pierre Goiffon
5db8bd06ba
Merge remote-tracking branch 'origin/support/2.7' into develop
...
# Conflicts:
# core/cmdbsource.class.inc.php
# core/coreexception.class.inc.php
# core/log.class.inc.php
2021-06-21 16:24:27 +02:00
Eric
a1271da74a
N°3513 - ObjectFormManager : remove transaction
2021-06-21 15:03:17 +02:00
Pierre Goiffon
d8e2a1cc7c
Merge branch 'support/2.7' into develop
...
# Conflicts:
# README.md
# composer.json
# composer.lock
# core/cmdbsource.class.inc.php
# core/dbobject.class.php
# datamodels/2.x/combodo-db-tools/db_analyzer.class.inc.php
# datamodels/2.x/combodo-db-tools/dbtools.php
# datamodels/2.x/combodo-db-tools/dictionaries/zh_cn.dict.combodo-db-tools.php
# datamodels/2.x/itop-attachments/dictionaries/zh_cn.dict.itop-attachments.php
# datamodels/2.x/itop-core-update/dictionaries/zh_cn.dict.itop-core-update.php
# dictionaries/zh_cn.dictionary.itop.core.php
# dictionaries/zh_cn.dictionary.itop.ui.php
# lib/composer/InstalledVersions.php
# lib/composer/autoload_classmap.php
# lib/composer/autoload_static.php
# lib/composer/installed.php
# lib/composer/platform_check.php
# pages/ajax.render.php
# pages/csvimport.php
# setup/ajax.dataloader.php
# setup/index.php
# setup/setuputils.class.inc.php
# test/application/UtilsTest.php
2021-06-14 16:19:56 +02:00
acognet
b740cb2afd
N°2540 - prevent the mysql password to appear on misconfigured servers
2021-05-12 08:17:35 +02:00
Molkobain
8dd96ea636
Copyright year bump
2021-03-15 09:29:45 +01:00
bruno-ds
9cbaced1f3
Merge remote-tracking branch 'origin/support/2.7' into develop
...
# Conflicts:
# core/config.class.inc.php
# datamodels/2.x/itop-core-update/view/SelectUpdateFile.html.twig
# datamodels/2.x/itop-core-update/view/SelectUpdateFile.ready.js.twig
# setup/setuputils.class.inc.php
# test/setup/SetupUtilsTest.php
2021-03-02 14:34:19 +01:00
odain
d4607ee815
N°3065 - Failed enum comparison when values contains parenthesis : add a warning
2021-03-02 07:33:36 +01:00
odain
5c0e92d51a
N°3065 - Failed enum comparison when values contains parenthesis
2021-03-01 17:06:49 +01:00
Pierre Goiffon
35155e4b7a
💡 N°3065 comments modifications
2021-02-26 10:06:29 +01:00
bruno-ds
26bbdc1a57
Merge remote-tracking branch 'origin/support/2.7' into develop
...
# Conflicts:
# application/cmdbabstract.class.inc.php
# application/utils.inc.php
# dictionaries/en.dictionary.itop.core.php
# dictionaries/fr.dictionary.itop.core.php
# setup/setuputils.class.inc.php
2021-02-23 08:58:29 +01:00
odain
74246a8278
N°3065 - Failed enum comparison when values contains parenthesis - enhance db model parsing used during setup comparison with expected one to generate SQL migration queries
2021-02-18 18:24:09 +01:00
Pierre Goiffon
b85b4d0067
N°3663 Group exception classes in /application/exceptions
...
Original files kept for compatibility issues :
- core/coreexception.class.inc.php
There are remaining exceptions in /core/oql, but those files are generated
2021-01-26 15:50:26 +01:00
acognet
491d1d7d53
N°API : remove CMDBSource::GetNextInsertId
2020-06-26 16:20:15 +02:00
Pierre Goiffon
e6a8f492d5
N°3049 Fix notice when having an ENUM field with values containing parenthesis
2020-05-28 15:38:21 +02:00
Pierre Goiffon
0ffa2850ea
Deadlock log : log inside a dedicated log file instead of creating an EventIssue object ( #139 )
...
First log implementation (75730ee ) was creating EventIssue objects, and was rollbacking transaction if it exists
The new one has some benefits :
* always log one line by default in log/error.log, but details must be activated though config (channels `Deadlock-WaitTimeout` and `Deadlock-Found`)
* detailed logs are in a dedicated file (log/deadlock.log) :
- easier for our clients to get and share
- has rotation by default
- looking at the file size is a direct way to know if error happened
- more compliant to industry standards !
* the transaction stays untouched, so that the consumer can do whatever it prefers
2020-05-14 17:49:05 +02:00
Eric
75730eeea0
Log database deadlocks in EventIssue
2020-04-23 15:25:12 +02:00
Pierre Goiffon
04fc58b55c
📝 Some @since annotations were missing complete version (ex 2.5 instead of 2.5.0)
2020-02-21 18:05:30 +01:00
Pierre Goiffon
bf9f43da8b
N°2329 PHP 7.4 compat : remove deprecated get_magic_quotes_gpc() function call
2019-12-02 13:47:44 +01:00
Pierre Goiffon
55a0d910fa
N°2490 MariaDB compat : changes after code review
...
* DEFAULT value unquoting is done with preg_replace now (clearer that we want to do a string replacement)
* DEFAULT value unquoting works even if DEFAULT is not the last keyword
* change test datasource for more readability (use double quotes when needed)
2019-11-27 11:51:47 +01:00
Pierre Goiffon
675221a15e
N°2490 Setup/toolkit : no longer generates useless ALTER TABLE queries on MariaDB >= 10.2
...
* case insensitive SQL data type comparison
* some options have also case differences (example 'int(11) unsigned')
* DEFAULT 'NULL' added by MariaDB on all nullable fields
* default values are always surrounded with single quotes on MariaDB
This is a Combodo implementation of PR #91
2019-11-21 11:24:14 +01:00
bruno DA SILVA
bf976e5b8f
typo (bis)
...
ahhh!
2019-11-04 15:07:47 +01:00
bruno DA SILVA
d9ad3f5e98
typo & unused variable removal
...
thank you @Hipska !
2019-11-04 15:02:19 +01:00
bruno DA SILVA
c6f5b8b1f9
1627 - Ticket ref sometimes duplicate
...
This code is a drop in replacement based on an abstract counter based on an abstract keyValue store.
The counter can be
- class based (in this case the counter is initialized on max(id) + 1
- key based (in this case the counter starts at 0)
Important: on both cases the counter is no more kept aligned with the primary key.
This lead to a MySQL8 compatible implementation.
2019-11-04 11:50:36 +01:00
Eric
68895551b2
N°2517 - Supportability - system report (Added cron user)
2019-10-09 12:11:17 +02:00
Eric
3f165c9803
N°2456 - Deadlock during concurrent updates
2019-09-26 18:18:52 +02:00
Eric
0625a01a4f
Force MySQL port to int (for MySQL connector)
2019-08-23 15:13:29 +02:00
Pierre Goiffon
51bbe1f79d
Handle nested transactions ( #90 )
...
* starting a new transaction will send nothing in the DB (only one global transaction : merge nested transactions)
* same for COMMIT or ROLLBACK if more than 1 transaction is opened
* transactions are kept inside \DBObject::DBInsertNoReload, but they can be disabled using config flag db_core_transactions_enabled=false (true by default, hidden by default)
2019-08-20 10:47:29 +02:00
Pierre Goiffon
7aa5d84ff4
💡 Fix PHPDoc for \CMDBSource::GetSqlStringColumnDefinition
2019-02-07 15:06:57 +01:00
Pierre Goiffon
7034ffea39
N°2010 Fix case for information_schema column names
...
In MySQL 8, we need to use same case as column declaration, or use an alias
2019-02-07 11:17:19 +01:00
Eric
0a3f076335
1784 - Fix Toolkit error on decimals
2018-11-21 15:11:19 +01:00
Stephen Abello
b0c120d7fd
N°1728: Display error on setup for unsupported MySQL 8+ versions (MariaDB & Percona not affected)
2018-11-15 15:04:44 +01:00
Stephen Abello
b898a09c4c
N°1728: Display error on setup for unsupported MySQL 8+ versions (MariaDB & Percona not affected)
2018-11-14 10:13:08 +01:00
Eric
f0e5128fb5
N°1740 - Class Query invalid Datamodel - Attention: Setup mandatory when applying this (core datamodel migration)
2018-11-13 11:18:10 +01:00
Pierre Goiffon
a4055c4a74
Change comments to use same tickets ref syntax
2018-11-06 17:36:14 +01:00
Pierre Goiffon
40a4e6d7b0
Fix files using CrLf, convert them to Lf to have the whole repo using Lf
...
Warn your git config (core.autocrlf = input or true)
2018-09-04 17:59:51 +02:00
Pierre Goiffon
9612b1b9e9
Fix non existing parameter passed to function
...
SVN:trunk[5969]
2018-07-24 15:36:26 +00:00
Pierre Goiffon
54d54ca78e
Fix setup for PHP 5.5 (cannot use expression as default field value)
...
SVN:trunk[5933]
2018-07-12 07:45:13 +00:00
Pierre Goiffon
3bebb9bf0f
convert inline comment to PHPDoc
...
SVN:trunk[5772]
2018-05-04 15:08:48 +00:00
Eric Espié
d82b755557
N° 1001 - Database index size changed to support utf8-mb4
...
SVN:trunk[5701]
2018-04-20 09:44:12 +00:00
Pierre Goiffon
aa8072118d
N°1260 remove db_tls.verify_server_cert : the server cert verification is now based on the TLS CA parameter value
...
SVN:trunk[5683]
2018-04-18 07:26:11 +00:00
Pierre Goiffon
f07bbfa174
N°1260 MySQL TLS connection : change parameters to only enable checkbox + CA (remove client key, client cert, cappath, cipher)
...
SVN:trunk[5682]
2018-04-18 06:57:38 +00:00