File tree Expand file tree Collapse file tree 1 file changed +10
-1
lines changed Expand file tree Collapse file tree 1 file changed +10
-1
lines changed Original file line number Diff line number Diff line change @@ -828,7 +828,16 @@ pub fn download(req: &mut Request) -> CargoResult<Response> {
828
828
let crate_name = & req. params ( ) [ "crate_id" ] ;
829
829
let version = & req. params ( ) [ "version" ] ;
830
830
831
- try!( increment_download_counts ( req, crate_name, version) ) ;
831
+ // If we are a mirror, ignore failure to update download counts.
832
+ // API-only mirrors won't have any crates in their database, and
833
+ // incrementing the download count will look up the crate in the
834
+ // database. Mirrors just want to pass along a redirect URL.
835
+ if req. app ( ) . config . mirror {
836
+ let _ = increment_download_counts ( req, crate_name, version) ;
837
+ } else {
838
+ try!( increment_download_counts ( req, crate_name, version) ) ;
839
+ }
840
+
832
841
let redirect_url = format ! ( "https://{}/crates/{}/{}-{}.crate" ,
833
842
req. app( ) . bucket. host( ) ,
834
843
crate_name, crate_name, version) ;
You can’t perform that action at this time.
0 commit comments