1
0
mirror of https://github.com/codership/wsrep-lib.git synced 2025-07-30 07:23:07 +03:00
Commit Graph

152 Commits

Author SHA1 Message Date
635eaf4c29 Refactored high priority service out of client service. 2018-07-02 18:22:24 +03:00
658a84a7d4 Fixed BF abort in sync rollback mode.
* Pass condition variable for client_state
* Notify all cond waiters when changing the transcation status to
  aborted
* Wait for aborting transaction state aborted in before_command
2018-07-02 10:09:48 +03:00
db18e91c42 Implemented client last_written_gtid, sync_wait 2018-06-30 07:44:09 +03:00
3d2af88428 Propagate incoming address to provider. 2018-06-29 17:46:11 +03:00
c35f59cb5b Deal with init before SST case. 2018-06-29 17:02:35 +03:00
0851970c53 Bootstrap server service, fixes to server state management
* Added bootstrap service call to do DBMS side bootstrap operations
  during the cluster bootstrap.
* Added last_committed_gtid() to provider interface
* Implemented wait_for_gtid() provider call
* Pass initial position to the server state
2018-06-29 11:54:33 +03:00
fd9cf87141 * Return provider status from provider connect
* Call to get server status variables along with provider variables
* Deal with intermediate non-prims
2018-06-27 15:36:52 +03:00
2a53198f5c Protocol version and connected gtid
* Propagate server max protocol version to provider init options
* Store gtid from connected call to make cluster id and the connect
  position available
2018-06-26 11:34:05 +03:00
ccf5c08c35 * Removed client_context from server_service::log_view() params
* Call log_view() from server_state view handler
2018-06-26 08:04:05 +03:00
4e152ee79d * Added applier side TOI commit order enter and leave
* Added cleanup_transaction() method to client_service in order to
  provide a way to make DBMS side cleanup when transaction
  is cleaned up
2018-06-25 14:09:19 +03:00
cad9176474 TOI replicating and applying codepaths 2018-06-25 09:28:51 +03:00
d3821d88a5 Partial implementation of methods needed for SST.
* server_state desync()/resync() and pause()/resume()
* Fixes to server_state state machine
2018-06-24 14:35:47 +03:00
1f6a6db1e9 * Fixes to SST time server state management
* Logging tweaks
* Boolean to tune behavior on exception
2018-06-22 13:03:12 +03:00
81ac78913a Initial implementation of client_state TOI mode. 2018-06-21 11:45:18 +03:00
3a8861b26b * Moved causal reads/gtid wait into server state interface
* Changed undefined seqno to be defined as -1
2018-06-21 10:37:55 +03:00
ef0fb72b73 * Added size exceeded error code
* Return provider status from selected client_state calls
* Added more methods to provider interface
2018-06-20 19:44:20 +03:00
bf7dad6815 Added open(), close(), cleanup() methods to client_state.
Depending on the DBMS client session allocation strategy the
client id may or may not be available when the client_session
is constructed, therefore there should be a method to assign
an id after construction. Close/cleanup methods were added to
clean up open transactions appropriately.
2018-06-20 10:07:55 +03:00
779f84e5df Made client_service, transaction independent of provider.
Provider may not be loaded when client_service and
transaction are constructed.
2018-06-19 14:54:58 +03:00
5c3c972947 Provide access to native wsrep API handle. 2018-06-19 09:41:04 +03:00
0e4c7f16a9 Pass ws_handle as const reference to provider replay() 2018-06-19 09:36:15 +03:00
60fb119fa1 Cleaned up client_state interface. 2018-06-18 18:55:38 +03:00
cf231bdf2d Refactored server_service out of server_state. 2018-06-18 17:45:24 +03:00
ef5751943d Refactored most of the server_state interface into server_service
abstract interface.
2018-06-18 16:52:41 +03:00
03043d3f25 Removing client_state dependency from client_service. 2018-06-18 10:21:02 +03:00
ef4baa9f9d Renamed server_context to server_state. 2018-06-17 10:07:48 +03:00
790c2bec4e Renamed transcation_context to transaction 2018-06-17 10:04:00 +03:00
dd28b173ab Renamed client_context to client_state. 2018-06-17 10:00:13 +03:00
97ee96987e Fixed dbsim BF aborts 2018-06-17 09:52:56 +03:00
ad0617c660 Using javadoc style for doc comments 2018-06-16 15:23:14 +03:00
47cb8e604c Renamed client context m_applier to m_high_priority 2018-06-16 15:08:31 +03:00
6dcac8ce4d Finished dbsim integration with refactored client API. 2018-06-16 10:25:14 +03:00
b3f60b7be1 Refactoring continued. 2018-06-15 15:13:22 +03:00
cb3b2fbf9e Fixed unit test failures caused by refactoring. 2018-06-14 23:13:25 +03:00
256000f934 Refactored client_service interface out of client_context 2018-06-14 19:44:38 +03:00
0b6e49474f Tests and fixes for replaying. 2018-06-14 15:00:40 +03:00
ca6286d8b2 Use provider for replaying in mock client_context instead of
calling server context apply directly.
2018-06-14 12:41:34 +03:00
6246d9d3b8 Allow must_abort - cert_failed transition.
If the BF abort happens during provider certify call which
returns certification failure, the cert_failed state should
take precedence.
2018-06-14 11:58:47 +03:00
a8ab9c6dbd SR applying implementation, unit tests. 2018-06-14 11:14:40 +03:00
39c9ef8a63 Tests for transaction context, server context state strings. 2018-06-13 17:24:37 +03:00
3cd7a11cb2 Extracted streaming_context into separa teclass 2018-06-13 16:59:25 +03:00
37efaba3e5 Bytes and statement streaming unit. 2018-06-13 16:51:23 +03:00
4c1ea388f8 Call before_prepare()/after_prepare() for applier in before_commit()
if no 2PC is required.
2018-06-13 15:34:49 +03:00
4ccd1490d4 Fixes required to 1PC streaming replay to pass. 2018-06-13 14:33:58 +03:00
6677e3cfd8 More unit tests for streaming replication. 2018-06-13 14:13:55 +03:00
f07885e204 Call before/after prepare from before_commit() when 1PC
before_prepare() call prepares removal SR fragments from stable
storage and the logic should be duplicated in before_commit()
otherwise.
2018-06-13 13:04:33 +03:00
a7adcb01ba Unit test for 2PC where rollback is done immediately after after_prepare() 2018-06-13 12:35:42 +03:00
37c56cb5ec Moved 2PC tests into separate compliation unit. 2018-06-13 12:22:03 +03:00
9ff5d61111 Unit test for SR non-committing fragment failure 2018-06-13 11:36:22 +03:00
461247adc1 Renamed unit test doubles 2018-06-13 11:23:48 +03:00
265d9b3322 Unit tests for SR with two statements, SR rollback. 2018-06-13 10:18:46 +03:00