On Mon, 16 Apr 2007, Junio C Hamano wrote:I looked at http-push.c once more, and there is a very marked lack of any error testing. It actually tries to be pretty careful, ie it seems that every PUT request is always to a temp-file, and then it does a MOVE request after that, and things seem to properly abort on most errors, but the actual data integrity is obviously impossible to check on the remote, and a quick grep showed that not all errors even set "aborted", which would seem to imply that certain error conditions can happen without the http-push then aborting the ref update. For example, if "start_active_slot()" fails, aborted isn't generally set. I don't know if that is ever a problem (it can only trigger with USE_CURL_MULTI), but it's an example of what looks pretty fragile. So we can fix up some of these kinds of things, but considering that we can't really validate the end result on the remote, I'd still personally be quite leery of pushing by http.. Yeah, on the pulling side we are simply much better off, because we can validate things after the operation has finished. On the pushing side, we could obviously try to re-download the objects or something, but basically validation would literally have to involve doubling the network usage, and even then we might get screwed by some caching layer! Linus - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
| Linus Torvalds | Linux 2.6.27-rc8 |
| Ingo Molnar | [patch] scsi: revert "[SCSI] Get rid of scsi_cmnd->done" |
| Jan Engelhardt | [PATCH] Cute feature: colored printk output |
| Rafael J. Wysocki | Re: Suspend to RAM regression in 2.6.28-rc2 (bisected) |
git: | |
| David Kastrup | Empty directories... |
| Pavel Roskin | Implementing branch attributes in git config |
| Pierre Habouzit | [RFC] git integrated bugtracking |
| Peter Stahlir | Re: Git as a filesystem |
| Christian Weisgerber | Re: libiconv problem |
| Douglas A. Tutty | low-MHz server |
| GVG GVG | ssh_exchange_identification: Connection closed by remote host |
| J.W. Zondag | Dell PE1950 III - Perc 6i |
| Karlin Dodd | VL-bus questions |
| Greg Hilton | PS2mouse supported with X386 |
| Joern Rennecke | Use shadow ram? |
| Jim Winstead Jr. | Re: Root Disk/Book Disk Compatibility |
