Changeset - a6f53f74e58c
[Not reviewed]
0 8 0
Christopher Esterhuyse - 5 years ago 2020-06-26 09:54:12
christopher.esterhuyse@gmail.com
fixed bug: failed to restore !sync_batches.is_empty() invariant when the native is immediately inconsistent
3 files changed:
Changeset was too big and was cut off... Show full diff anyway
0 comments (0 inline, 0 general)
.gitignore
Show inline comments
 
@@ -6,4 +6,5 @@ main
 
examples/*/*.exe
 
examples/*.dll
 
examples/reowolf*
 
logs
 
\ No newline at end of file
 
examples/*.txt
 
logs
examples/6_amy_log.txt
Show inline comments
 
CID(3382080479): Created with connector_id 3382080479
 
CID(3382080479): Added port pair (out->in) ptID(3382080479'0) -> ptID(3382080479'1)
 
CID(3382080479): ~~~ CONNECT called timeout None
 
CID(3382080479): Successfully connected 0 endpoints
 
CID(3382080479): beginning neighborhood construction
 
CID(3382080479): Edge case of no neighbors! No parent an no children!
 
CID(3382080479): Successfully created neighborhood Neighborhood { parent: None, children: {} }
 
CID(3382080479): Beginning session optimization
 
CID(3382080479): Gathered all children's maps. ConnectorId set is... []
 
CID(3382080479): Inserting my own info. Unoptimized subtree map is {3382080479: SessionInfo { serde_proto_description: SerdeProtocolDescription((A big honkin' protocol description)), port_info: PortInfo { polarities: {ptID(3382080479'1): Getter, ptID(3382080479'0): Putter}, peers: {ptID(3382080479'0): ptID(3382080479'1), ptID(3382080479'1): ptID(3382080479'0)}, routes: {ptID(3382080479'0): LocalComponent(Native), ptID(3382080479'1): LocalComponent(Native)} }, proto_components: {} }}
 
CID(3382080479): I am the leader! I will optimize this session
 
CID(3382080479): Session map optimize START
 
CID(3382080479): Session map optimize END
 
CID(3382080479): Optimized info map is {3382080479: SessionInfo { serde_proto_description: SerdeProtocolDescription((A big honkin' protocol description)), port_info: PortInfo { polarities: {ptID(3382080479'1): Getter, ptID(3382080479'0): Putter}, peers: {ptID(3382080479'0): ptID(3382080479'1), ptID(3382080479'1): ptID(3382080479'0)}, routes: {ptID(3382080479'0): LocalComponent(Native), ptID(3382080479'1): LocalComponent(Native)} }, proto_components: {} }}. Sending to children Iter([])
 
CID(3382080479): All session info dumped!: {
 
    3382080479: SessionInfo {
 
CID(1463643093): Created with connector_id 1463643093
 
CID(1463643093): Added port pair (out->in) ptID(1463643093'0) -> ptID(1463643093'1)
 
CID(1463643093): ~~~ CONNECT called timeout None
 
CID(1463643093): Successfully connected 0 endpoints
 
CID(1463643093): beginning neighborhood construction
 
CID(1463643093): Edge case of no neighbors! No parent an no children!
 
CID(1463643093): Successfully created neighborhood Neighborhood { parent: None, children: {} }
 
CID(1463643093): Beginning session optimization
 
CID(1463643093): Gathered all children's maps. ConnectorId set is... []
 
CID(1463643093): Inserting my own info. Unoptimized subtree map is {1463643093: SessionInfo { serde_proto_description: SerdeProtocolDescription((A big honkin' protocol description)), port_info: PortInfo { polarities: {ptID(1463643093'0): Putter, ptID(1463643093'1): Getter}, peers: {ptID(1463643093'1): ptID(1463643093'0), ptID(1463643093'0): ptID(1463643093'1)}, routes: {ptID(1463643093'1): LocalComponent(Native), ptID(1463643093'0): LocalComponent(Native)} }, proto_components: {} }}
 
CID(1463643093): I am the leader! I will optimize this session
 
CID(1463643093): Session map optimize START
 
CID(1463643093): Session map optimize END
 
CID(1463643093): Optimized info map is {1463643093: SessionInfo { serde_proto_description: SerdeProtocolDescription((A big honkin' protocol description)), port_info: PortInfo { polarities: {ptID(1463643093'0): Putter, ptID(1463643093'1): Getter}, peers: {ptID(1463643093'1): ptID(1463643093'0), ptID(1463643093'0): ptID(1463643093'1)}, routes: {ptID(1463643093'1): LocalComponent(Native), ptID(1463643093'0): LocalComponent(Native)} }, proto_components: {} }}. Sending to children Iter([])
 
CID(1463643093): All session info dumped!: {
 
    1463643093: SessionInfo {
 
        serde_proto_description: SerdeProtocolDescription(
 
            (A big honkin' protocol description),
 
        ),
 
        port_info: PortInfo {
 
            polarities: {
 
                ptID(3382080479'1): Getter,
 
                ptID(3382080479'0): Putter,
 
                ptID(1463643093'0): Putter,
 
                ptID(1463643093'1): Getter,
 
            },
 
            peers: {
 
                ptID(3382080479'0): ptID(3382080479'1),
 
                ptID(3382080479'1): ptID(3382080479'0),
 
                ptID(1463643093'1): ptID(1463643093'0),
 
                ptID(1463643093'0): ptID(1463643093'1),
 
            },
 
            routes: {
 
                ptID(3382080479'0): LocalComponent(
 
                ptID(1463643093'1): LocalComponent(
 
                    Native,
 
                ),
 
                ptID(3382080479'1): LocalComponent(
 
                ptID(1463643093'0): LocalComponent(
 
                    Native,
 
                ),
 
            },
 
@@ -38,16 +38,40 @@ CID(3382080479): All session info dumped!: {
 
        proto_components: {},
 
    },
 
}
 
CID(3382080479): Session optimizations applied
 
CID(3382080479): connect() finished. setup phase complete
 
CID(3382080479): ~~~ SYNC called with timeout Some(5s); starting round 0
 
CID(3382080479): Nonsync running 0 proto components...
 
CID(3382080479): All 0 proto components are now done with Nonsync phase
 
CID(3382080479): Solution storage initialized
 
CID(3382080479): Translating 1 native batches into branches...
 
CID(3382080479): Native branch index=0 contains internal inconsistency wrt. fvID(3382080479'1). Skipping
 
CID(3382080479): Native starts with no branches! Failure!
 
CID(3382080479): No parent. Deciding on failure
 
CID(3382080479): Committing to decision Failure!
 
CID(3382080479): Announcing decision CommMsg(CommMsg { round_index: 0, contents: Announce { decision: Failure } }) through child endpoints {}
 
CID(3382080479): Connector dropping. Goodbye!
 
CID(1463643093): Session optimizations applied
 
CID(1463643093): connect() finished. setup phase complete
 
CID(1463643093): ~~~ SYNC called with timeout Some(5s); starting round 0
 
CID(1463643093): Nonsync running 0 proto components...
 
CID(1463643093): All 0 proto components are now done with Nonsync phase
 
CID(1463643093): Solution storage initialized
 
CID(1463643093): Translating 1 native batches into branches...
 
CID(1463643093): Native branch index=0 contains internal inconsistency wrt. fvID(1463643093'1). Skipping
 
CID(1463643093): Native starts with no branches! Failure!
 
CID(1463643093): No parent. Deciding on failure
 
CID(1463643093): Committing to decision Failure!
 
CID(1463643093): Announcing decision CommMsg(CommMsg { round_index: 0, contents: Announce { decision: Failure } }) through child endpoints {}
 
CID(1463643093): Sync round ending! Cleaning up
 
CID(1463643093): ~~~ SYNC called with timeout Some(5s); starting round 0
 
CID(1463643093): Nonsync running 0 proto components...
 
CID(1463643093): All 0 proto components are now done with Nonsync phase
 
CID(1463643093): Solution storage initialized
 
CID(1463643093): Translating 1 native batches into branches...
 
CID(1463643093): Native branch index=0 has consistent Predicate { Trues: {fvID(1463643093'1)}, Falses: {} }
 
CID(1463643093): Native branch 0 sending msg SendPayloadMsg { predicate: Predicate { Trues: {fvID(1463643093'1)}, Falses: {} }, payload: Payload([104, 101, 108, 108, 111]) }
 
CID(1463643093): Done translating native batches into branches
 
CID(1463643093): Running all 0 proto components to their sync blocker...
 
CID(1463643093): All proto components are blocked
 
CID(1463643093): Entering decision loop...
 
CID(1463643093): feeding native getter ptID(1463643093'1) SendPayloadMsg { predicate: Predicate { Trues: {fvID(1463643093'1)}, Falses: {} }, payload: Payload([104, 101, 108, 108, 111]) }
 
CID(1463643093): visiting native branch NativeBranch { index: 0, gotten: {}, to_get: {ptID(1463643093'1)} } with Predicate { Trues: {fvID(1463643093'1)}, Falses: {} }
 
CID(1463643093): NEW COMPONENT SOLUTION LocalComponent(Native) Predicate { Trues: {fvID(1463643093'1)}, Falses: {} }
 
CID(1463643093): storing NEW LOCAL SOLUTION Predicate { Trues: {fvID(1463643093'1)}, Falses: {} }
 
CID(1463643093): branch pred covers it! Accept the msg
 
CID(1463643093): Check if we have any local decisions...
 
CID(1463643093): New local decision with solution Predicate { Trues: {fvID(1463643093'1)}, Falses: {} }...
 
CID(1463643093): No parent. Deciding on solution Predicate { Trues: {fvID(1463643093'1)}, Falses: {} }
 
CID(1463643093): Committing to decision Success(Predicate { Trues: {fvID(1463643093'1)}, Falses: {} })!
 
CID(1463643093): Announcing decision CommMsg(CommMsg { round_index: 0, contents: Announce { decision: Success(Predicate { Trues: {fvID(1463643093'1)}, Falses: {} }) } }) through child endpoints {}
 
CID(1463643093): End round with (updated) component states []
 
CID(1463643093): Sync round ending! Cleaning up
 
CID(1463643093): Connector dropping. Goodbye!
examples/6_atomic/amy.c
Show inline comments
 
@@ -23,7 +23,6 @@ int main(int argc, char** argv) {
 
	int err = connector_sync(c, 5000);
 
	printf("Error code %d with string `%s`\n", err, reowolf_error_peek(NULL));
 
	
 
	/*
 
	printf("Let's try again, doing both\n");
 
	connector_put_bytes(c, putter, "hello", 5);
 
	connector_get(c, getter);
 
@@ -32,7 +31,6 @@ int main(int argc, char** argv) {
 
	size_t msg_len;
 
	const char * msg_ptr = connector_gotten_bytes(c, getter, &msg_len);
 
	printf("Got msg `%.*s`\n", msg_len, msg_ptr);
 
	*/
 
	
 
	protocol_description_destroy(pd);
 
	connector_destroy(c);

Changeset was too big and was cut off... Show full diff anyway

0 comments (0 inline, 0 general)