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:
Alex Hornby 2020-10-29 16:05:57 -07:00 committed by Facebook GitHub Bot
parent 89ace3790f
commit 511530d030
2 changed files with 8 additions and 8 deletions

View File

@ -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(

View File

@ -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),