chiark / gitweb /
api: Add some extra debug for api op processing
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Fri, 29 Jan 2021 18:21:47 +0000 (18:21 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Fri, 29 Jan 2021 23:31:40 +0000 (23:31 +0000)
This helps debug the conflict protocol (PROTOCOL.md).

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
daemon/api.rs

index 3633440e6d2775a2aa98847ecf95d37ed44a7ff3..c0ec99a1ce334d999a6ae5b260c46d0433aaa4e4 100644 (file)
@@ -129,6 +129,8 @@ fn api_piece_op<O: ApiPieceOp>(form : Json<ApiPiece<O>>)
       if client == pc.lastclient { pc.gen_before_lastclient }
       else { pc.gen };
 
+    debug!("client={:?} pc.lastclient={:?} pc.gen_before={:?} pc.gen={:?} q_gen={:?} u_gen={:?}", &client, &pc.lastclient, &pc.gen_before_lastclient, &pc.gen, &q_gen, &u_gen);
+
     if u_gen > q_gen { throw!(PieceOpError::Conflict) }
     form.op.check_held(pc,player)?;
     let (wrc, update, logents) =
@@ -144,12 +146,14 @@ fn api_piece_op<O: ApiPieceOp>(form : Json<ApiPiece<O>>)
         &mut ig, poe,
         piece, vec![], client, &lens
       )?;
+      debug!("api_piece_op Err(RVU): {:?}", &form);
     },
     Err(PartiallyProcessed(poe, logents)) => {
       PrepareUpdatesBuffer::piece_report_error(
         &mut ig, poe,
         piece, logents, client, &lens
       )?;
+      debug!("api_piece_op Err(PP): {:?}", &form);
     },
     Err(ReportViaResponse(err)) => {
       warn!("api_piece_op ERROR {:?}: {:?}", &form, &err);