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
8f0e112c47
Renamed invalid to undefined. More utility functions.
2018-06-21 16:50:44 +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
94f77eacf0
Include id.hpp, transaction_id.hpp explicitly from server_state.hpp
...
Both id and transaction_id are required to instantiate the
server_state object.
2018-06-19 12:49:55 +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
d1a1e298e9
Removed wsrep_api.h dependency from view.hpp
2018-06-18 20:39:25 +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
4a92841cb2
Moved commit()/rollback() to transaction_termination_service interface.
2018-06-18 15:31:57 +03:00
03043d3f25
Removing client_state dependency from client_service.
2018-06-18 10:21:02 +03:00
af3119a58b
Removed ostream include from public API headers.
2018-06-17 13:55:37 +03:00
78cb0270af
Added initial interface definition for server service.
2018-06-17 12:52:24 +03:00
0dac901b39
Improved client state documentation.
2018-06-17 11:12:20 +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
d12513303a
Removed redundant dbms_simulator.cpp
2018-06-16 14:58:01 +03:00
dae5231dfc
Added topology argument to dbsim to allow testing master/slave
2018-06-16 11:30:50 +03:00
6dcac8ce4d
Finished dbsim integration with refactored client API.
2018-06-16 10:25:14 +03:00
ae68122d59
Refactored dbms simulator. Survives SST.
2018-06-15 16:25:27 +03:00
b3f60b7be1
Refactoring continued.
2018-06-15 15:13:22 +03:00
4fbf1d0cf8
Refactoring dbms simulator. Intermediate commit.
2018-06-15 12:58:36 +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
1ca3f7b649
Don't release ws_handle_ for replaying before commit order enter.
2018-06-14 15:11:56 +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
94b4d3a7db
Allow replaying - preparing transition to get rid of extra state
...
checks in prepare calls.
2018-06-13 16:00:09 +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