Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Always go at least two rounds on a clone since configuration data is not sent until the second round. Ticket [8473eeb9ffb012e1d]
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1:addf6709812a3b6c0cbf7d90f26ca68577cd9327
User & Date: drh 2011-02-09 03:33:02
Context
2011-02-09
23:08
Try to make it clear that a ticket-id must be a 40-character lower-case hexadecimal number. check-in: 81ad6e2e user: drh tags: trunk
03:33
Always go at least two rounds on a clone since configuration data is not sent until the second round. Ticket [8473eeb9ffb012e1d] check-in: addf6709 user: drh tags: trunk
2011-02-08
14:28
Add the --nested option to the "open" command to allow checkouts from one repository to be created inside the checkout of another respository. check-in: f15943f3 user: drh tags: trunk
Changes

Changes to src/xfer.c.

1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
....
1561
1562
1563
1564
1565
1566
1567
1568




1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
        if( blob_eq_str(&xfer.aToken[1], zSCode, -1) ){
          fossil_fatal("server loop");
        }
        if( zPCode==0 ){
          zPCode = mprintf("%b", &xfer.aToken[2]);
          db_set("project-code", zPCode, 0);
        }
        blob_appendf(&send, "clone 3 %d\n", cloneSeqno);
        nCardSent++;
      }else
      
      /*   config NAME SIZE \n CONTENT
      **
      ** Receive a configuration value from the server.
      */
................................................................................
    if( xfer.nFileSent+xfer.nDeltaSent>0 ){
      go = 1;
    }

    /* If this is a clone, the go at least two rounds */
    if( cloneFlag && nCycle==1 ) go = 1;

    /* Stop the cycle if the server sends a "clone_seqno 0" card */




    if( cloneSeqno<=0 ) go = 0;   
  };
  transport_stats(&nSent, &nRcvd, 1);
  fossil_print("Total network traffic: %lld bytes sent, %lld bytes received\n",
               nSent, nRcvd);
  transport_close();
  transport_global_shutdown();
  db_multi_exec("DROP TABLE onremote");
  manifest_crosslink_end();
  content_enable_dephantomize(1);
  db_end_transaction(0);
  return nErr;
}







|







 







|
>
>
>
>
|












1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
....
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
        if( blob_eq_str(&xfer.aToken[1], zSCode, -1) ){
          fossil_fatal("server loop");
        }
        if( zPCode==0 ){
          zPCode = mprintf("%b", &xfer.aToken[2]);
          db_set("project-code", zPCode, 0);
        }
        if( cloneSeqno>0 ) blob_appendf(&send, "clone 3 %d\n", cloneSeqno);
        nCardSent++;
      }else
      
      /*   config NAME SIZE \n CONTENT
      **
      ** Receive a configuration value from the server.
      */
................................................................................
    if( xfer.nFileSent+xfer.nDeltaSent>0 ){
      go = 1;
    }

    /* If this is a clone, the go at least two rounds */
    if( cloneFlag && nCycle==1 ) go = 1;

    /* Stop the cycle if the server sends a "clone_seqno 0" card and
    ** we have gone at least two rounds.  Always go at least two rounds
    ** on a clone in order to be sure to retrieve the configuration
    ** information which is only sent on the second round.
    */
    if( cloneSeqno<=0 && nCycle>1 ) go = 0;   
  };
  transport_stats(&nSent, &nRcvd, 1);
  fossil_print("Total network traffic: %lld bytes sent, %lld bytes received\n",
               nSent, nRcvd);
  transport_close();
  transport_global_shutdown();
  db_multi_exec("DROP TABLE onremote");
  manifest_crosslink_end();
  content_enable_dephantomize(1);
  db_end_transaction(0);
  return nErr;
}