Commit Graph
76 Commits
Author SHA1 Message Date
Christian González 77883d94c5 M #-: Fix HA replication bug (#3432) 2019-06-14 16:02:34 +02:00
Ruben S. Montero 12f5be2d8c F #3393: Reduce number of updates referencing FTS field. Changed REPLACE
operations to UPDATE to improve DB performance

co-authored-by: Christian González <cgonzalez@opennebula.systems>
(cherry picked from commit cbd9aee912)
2019-06-12 17:24:23 +02:00
Christian González d779dd6a27 B #3123: Improve setup_index query
(cherry picked from commit e33b8b0fd5)
2019-03-25 12:06:37 +01:00
Christian González e1084aaa9c F #2966: Update 'applied' field when logdb record is applied 2019-02-20 17:13:41 +01:00
Christian González 431cba56a3 F #2966 Add applied field to logdb table (#2967) 2019-02-19 20:31:51 +01:00
Ruben S. MonteroandChristian González 8fbd126ca2 development: Fix race condition between the expiration of the replica timeout and the pending_requests state change. api server cache mode
Co-authored-by: Christian González <cgonzalez@opennebula.systems>
2019-02-19 12:40:07 +01:00
Ruben S. MonteroandChristian González 0de6fa7493 development: Add extra debug information for HA and federated log purge
co-authored-by: Christian González <cgonzalez@opennebula.systems>
2019-02-15 00:15:57 +01:00
Ruben S. Montero 7a4a83cefd development: revert SqlDB protorype to int error codes 2019-02-13 13:00:20 +01:00
Ruben S. Montero 4829adc738 development: SQL errors because of duplicated keys are considered
applied for RAFT replications. This log entries may be added in the log
because of a race condition between writing threads (i.e. two threads
creating a user with the same name). Adds new error interface for SqlDB.
2019-02-13 10:43:06 +01:00
Christian González b2aab50f95 F #2671 Fix version bug and migrator for search option (#2869) 2019-01-31 17:09:47 +01:00
Vlastimil Holer 441cf1f7f9 Bump version to 5.7.85, year to 2019 2019-01-16 11:47:59 +01:00
Ruben S. Montero b5f4d95e89 development: Fix compilation warning for select based sleep 2018-11-28 13:06:18 +01:00
Ruben S. Montero bf3291306a Improve checks to prevent unneeded replication triggers
(cherry picked from commit 50a588c38b)
(cherry picked from commit d21a0c9582)
(cherry picked from commit 64e7c5bbd0)
(cherry picked from commit 48881ae10a)
(cherry picked from commit dd07086791)
2018-09-08 13:38:01 +02:00
Ruben S. Montero 32dd228376 Compute number of replicas needed to commit a log record
(cherry picked from commit 877df62c4f)
2018-08-31 00:47:42 +02:00
Ruben S. Montero 43aeed9dbb Log slow MySQL queries, threshold set to 0.5s 2018-08-07 23:35:15 +02:00
Ruben S. Montero 914368d300 Better trigger of replication requests. Synchronize DB writers and Raft
main thread.

On followers, replace exisiting records when matching index and term to
cope with API reset because of timeouts.

(cherry picked from commit 7719e7c17b)
(cherry picked from commit 5490872507)
(cherry picked from commit 2f281b51f3)
(cherry picked from commit ccdbb99e9d)
2018-08-05 19:03:01 +02:00
Ruben S. Montero aaf5e444d5 B #2144: Better purge for federated records
(cherry picked from commit 6ba048c9d3)
2018-06-17 16:38:16 +02:00
juanmont 16b264d1f2 B #2144: Changed SQL query to delete only non federated logs
(cherry picked from commit f0b260f771)
2018-06-15 15:46:43 +02:00
Ruben S. Montero a3e14127c3 B #2144: Fix federation for non HA deployments. Better purge
(cherry picked from commit ba0231ab0d)
2018-06-14 12:25:32 +02:00
Ruben S. Montero 3961b401a9 B #2144: Fix affected rows for Sqlite 2018-06-11 17:20:40 +02:00
juanmont c08d7e5d47 F #1927 Check if sqlite has been compiled to use LIMIT with DELETE and UPDATE 2018-04-25 17:05:30 +02:00
Ruben S. Montero 9b96c8fd3c F #1927: Extend Sql interface, free results of MySQL query.
(cherry picked from commit f502d17923a12f1f4df59e5ae100802ab6d5ba9c)
2018-04-23 12:54:27 +02:00
juanmont dfa535441e F #1927:
- Added the possibility to know how many rows have been affected
 - Added new Attribute to specify the limit for the purge

(cherry picked from commit b5700eb6d1)
2018-04-23 12:54:26 +02:00
Ruben S. Montero 37222d65dc F #1792: Greatly improve concurrency by: Remove big lock on pool control class. Increase number of MySQL connections (new configuration variable). Make all parser reentrants. This commit also simplifies the pool references.
(cherry picked from commit a3d3ceb771034794c4fb453dcd9aaff64c53baed)
2018-03-17 23:35:21 +01:00
Ruben S. Montero 97f957460f B #1555: Replicate log on leadership changes
(cherry picked from commit 5c97553267)
2018-01-08 00:35:40 +01:00
Vlastimil Holer a4c0447ccf Bump year to 2018 (#1623) 2018-01-02 18:27:37 +01:00
Ruben S. Montero 55d82ac237 B #5307: Build index for logdb table 2017-08-09 10:45:01 +02:00
Ruben S. Montero a6addb314e Raft stability patch:
* Do not reset vote on followers upon successful election
  * Cache one_auth secret to fix mt issue and improve heartbeat
  performance
  * Remove debug message when a record is not loaded
  * Remove default timeout for curl library
2017-08-03 12:28:48 +02:00
Ruben S. Montero fa9e5d947b Added debug information to LogDB operations 2017-07-12 13:02:40 +02:00
Jaime Melis 822602ca45 MySQL exec now returns the status of the callback 2017-07-07 17:29:03 +02:00
Ruben S. Montero 899b460abd F #4809: Enable federated of solo Zones 2017-06-30 11:48:23 +02:00
Ruben S. Montero 80d0816666 F #4809: Re-design replicated log structure 2017-06-29 19:48:21 +02:00
Ruben S. Montero c6286c0384 F #4809: Safer purge function for RAFT log 2017-06-28 19:50:55 +02:00
Ruben S. Montero 35da0ee157 F #4809: Fix check 2017-06-01 16:21:45 +02:00
Ruben S. Montero d3c7a07a34 F #4809: Check log records are properly loaded from DB 2017-06-01 16:14:29 +02:00
Jaime Melis 50d0a6b42c F #4809: sql is a reserved keyword in MySQL 2017-06-01 12:21:56 +02:00
Ruben S. Montero 50880bb271 F #4809: Do not write log in solo mode, update instead of insert for
timestamps
2017-06-01 11:13:12 +02:00
Ruben S. Montero f12fdfaead F #4809: Compress DB commands. 2017-06-01 00:52:20 +02:00
Ruben S. Montero 234734a3c7 F #4809: Better query to purge log records 2017-05-30 16:16:03 +02:00
Javi Fontan 8de979e42c Bump version 5.3.80 2017-05-25 16:07:35 +02:00
Ruben S. Montero 31ba4d4d85 F #4809: Fix some bugs when replicating log entries to slave zones 2017-05-22 18:04:16 +02:00
Ruben S. Montero b38874a042 F #4809: Moved zone server list to ZonePool. Added FedLogDB class 2017-05-16 12:02:02 +02:00
Ruben S. Montero 9d3973461c F #4809: Keep last_index counters internally. Commit log records on
heartbeats
2017-05-06 23:36:08 +02:00
Ruben S. Montero 9e1fd142c3 F #4809: Debug election process 2017-05-05 15:46:57 +02:00
Ruben S. Montero 03c5698a72 F #4809: Fix several issues accessing the log records 2017-05-04 22:56:07 +02:00
Ruben S. Montero c6a7500df5 F #4809: Adds vote requests from candidate, fix some bugs 2017-05-03 20:04:42 +02:00
Ruben S. Montero 2a695bc8f0 F #4809: Persist raft state. Implement Vote API call 2017-05-03 00:31:02 +02:00
Ruben S. Montero 5441a2f834 F #4809: Log retention system 2017-04-29 23:25:53 +02:00
Ruben S. Montero 6f976c1eb8 F #4809: Make some Raft events synchronous with replication threads 2017-04-28 22:23:32 +02:00
Ruben S. Montero 613ec63426 F #4809: Fix replication logic 2017-04-28 19:35:57 +02:00