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
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
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
0b6e49474f
Tests and fixes for replaying.
2018-06-14 15:00:40 +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
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
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
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
9e8e6d47ba
* Unit test for SR 2PC
...
* Removed redundant data class
* Introduced const_buffer and mutable_buffer
* Transaction context and client context interface refactoring
2018-06-12 18:04:32 +03:00
0186342092
Initial replicating side implementation of streaming replication
2018-06-12 15:44:20 +03:00
d9d41a4787
* Fixed wrong error code returned from client_context::before_command
...
* Fixed raw depends_on assignment from native to wsrep::seqno
* More debug logging
2018-06-12 13:17:01 +03:00
3456a8b953
Unit tests for identifier class.
2018-06-12 11:22:02 +03:00
65b4ce9123
Moved gtid class out of provider.hpp
2018-06-12 11:03:50 +03:00
d6f185c278
Refactored provider specific code out of server_context.cpp
2018-06-12 10:52:56 +03:00
97d9f93648
Refactored seqno and id classes out of provider.hpp
2018-06-12 10:20:58 +03:00
f506faa360
More unit tests for various error conditions on certification.
2018-06-11 18:17:00 +03:00
d248195690
Transaction context unit tests for failures in certify_commit()
2018-06-11 15:56:40 +03:00
58ea925dc3
* Unit test for BF abort after after_command_before_result()
...
* Revised logic for handling BF abort around after command operations
* Added lighweight thread class for runtime thread id checking
2018-06-11 11:48:07 +03:00
e18c9d597f
* Unit test for idle client BF abort.
...
* Fixes to seqno conversion between provider and provider library.
* Server context applying side fixes.
2018-06-10 19:27:09 +03:00
2619615e02
Fixed problems with server_context unit tests.
...
Added WITH_ASAN and WITH_TSAN options, enabled unit tests by default.
2018-06-10 15:31:41 +03:00
ca615fcbd8
Provider abstraction code compiles.
2018-06-10 12:46:42 +03:00