mirror of
https://github.com/facebook/sapling.git
synced 2024-10-10 00:45:18 +03:00
mononoke: change the default blobstore put behaviour to IfAbsent
Summary: Change the default blobstore put behaviour to IfAbsent, so that all binaries apart from admin tools using MononokeApp::special_put_behaviour() pick up the change. Reviewed By: farnz Differential Revision: D24619663 fbshipit-source-id: 98439513b985d2cde88ef99e5eb177974e9db5c9
This commit is contained in:
parent
89ace3790f
commit
511530d030
@ -304,8 +304,8 @@ pub trait Blobstore: fmt::Debug + Send + Sync + 'static {
|
||||
}
|
||||
}
|
||||
|
||||
/// Keep the status quo for now
|
||||
pub const DEFAULT_PUT_BEHAVIOUR: PutBehaviour = PutBehaviour::Overwrite;
|
||||
/// Mononoke binaries will not overwrite existing blobstore keys by default
|
||||
pub const DEFAULT_PUT_BEHAVIOUR: PutBehaviour = PutBehaviour::IfAbsent;
|
||||
|
||||
/// For blobstore implementors and advanced admin type users to control requested put behaviour
|
||||
#[derive(
|
||||
|
@ -12,7 +12,7 @@ use crate::{errors, Alias, FetchKey, FilestoreConfig, StoreRequest};
|
||||
use super::failing_blobstore::{FailingBlobstore, FailingBlobstoreError};
|
||||
use anyhow::{Error, Result};
|
||||
use assert_matches::assert_matches;
|
||||
use blobstore::Blobstore;
|
||||
use blobstore::{Blobstore, PutBehaviour};
|
||||
use bytes::{Bytes, BytesMut};
|
||||
use context::CoreContext;
|
||||
use fbinit::FacebookInit;
|
||||
@ -977,7 +977,7 @@ async fn filestore_store_error(fb: FacebookInit) -> Result<()> {
|
||||
|
||||
#[fbinit::compat_test]
|
||||
async fn filestore_test_rechunk(fb: FacebookInit) -> Result<()> {
|
||||
let blob = memblob::LazyMemblob::default();
|
||||
let blob = memblob::LazyMemblob::new(PutBehaviour::Overwrite);
|
||||
|
||||
let small = FilestoreConfig {
|
||||
chunk_size: Some(1),
|
||||
@ -1014,7 +1014,7 @@ async fn filestore_test_rechunk(fb: FacebookInit) -> Result<()> {
|
||||
|
||||
#[fbinit::compat_test]
|
||||
async fn filestore_test_rechunk_larger(fb: FacebookInit) -> Result<()> {
|
||||
let blob = memblob::LazyMemblob::default();
|
||||
let blob = memblob::LazyMemblob::new(PutBehaviour::Overwrite);
|
||||
|
||||
let small = FilestoreConfig {
|
||||
chunk_size: Some(1),
|
||||
@ -1057,7 +1057,7 @@ async fn filestore_test_rechunk_larger(fb: FacebookInit) -> Result<()> {
|
||||
|
||||
#[fbinit::compat_test]
|
||||
async fn filestore_test_rechunk_unchunked(fb: FacebookInit) -> Result<()> {
|
||||
let blob = memblob::LazyMemblob::default();
|
||||
let blob = memblob::LazyMemblob::new(PutBehaviour::Overwrite);
|
||||
|
||||
let small = FilestoreConfig {
|
||||
chunk_size: Some(1),
|
||||
@ -1209,7 +1209,7 @@ async fn filestore_test_rechunk_if_needed_tiny_unchunked_file(fb: FacebookInit)
|
||||
|
||||
#[fbinit::compat_test]
|
||||
async fn filestore_test_rechunk_if_needed_large_unchunked_file(fb: FacebookInit) -> Result<()> {
|
||||
let blob = memblob::LazyMemblob::default();
|
||||
let blob = memblob::LazyMemblob::new(PutBehaviour::Overwrite);
|
||||
|
||||
let large = FilestoreConfig {
|
||||
chunk_size: Some(100),
|
||||
@ -1248,7 +1248,7 @@ async fn filestore_test_rechunk_if_needed_large_unchunked_file(fb: FacebookInit)
|
||||
|
||||
#[fbinit::compat_test]
|
||||
async fn filestore_test_rechunk_if_needed_large_chunks(fb: FacebookInit) -> Result<()> {
|
||||
let blob = memblob::LazyMemblob::default();
|
||||
let blob = memblob::LazyMemblob::new(PutBehaviour::Overwrite);
|
||||
|
||||
let large = FilestoreConfig {
|
||||
chunk_size: Some(5),
|
||||
|
Loading…
Reference in New Issue
Block a user