@@ -184,7 +184,13 @@ pub async fn put_alert(
184184
185185 if !STREAM_INFO . stream_initialized ( & stream_name) ? {
186186 if CONFIG . parseable . mode == Mode :: Query {
187- create_stream_and_schema_from_storage ( & stream_name) . await ?;
187+ if let Ok ( stream_found) = create_stream_and_schema_from_storage ( & stream_name) . await {
188+ if !stream_found {
189+ return Err ( StreamError :: StreamNotFound ( stream_name. clone ( ) ) ) ;
190+ }
191+ } else {
192+ return Err ( StreamError :: StreamNotFound ( stream_name. clone ( ) ) ) ;
193+ }
188194 } else {
189195 return Err ( StreamError :: UninitializedLogstream ) ;
190196 }
@@ -226,7 +232,13 @@ pub async fn get_retention(req: HttpRequest) -> Result<impl Responder, StreamErr
226232 let stream_name: String = req. match_info ( ) . get ( "logstream" ) . unwrap ( ) . parse ( ) . unwrap ( ) ;
227233 if !STREAM_INFO . stream_exists ( & stream_name) {
228234 if CONFIG . parseable . mode == Mode :: Query {
229- create_stream_and_schema_from_storage ( & stream_name) . await ?;
235+ if let Ok ( stream_found) = create_stream_and_schema_from_storage ( & stream_name) . await {
236+ if !stream_found {
237+ return Err ( StreamError :: StreamNotFound ( stream_name. clone ( ) ) ) ;
238+ }
239+ } else {
240+ return Err ( StreamError :: StreamNotFound ( stream_name. clone ( ) ) ) ;
241+ }
230242 } else {
231243 return Err ( StreamError :: StreamNotFound ( stream_name) ) ;
232244 }
@@ -339,8 +351,14 @@ pub async fn get_stats(req: HttpRequest) -> Result<impl Responder, StreamError>
339351 let stream_name: String = req. match_info ( ) . get ( "logstream" ) . unwrap ( ) . parse ( ) . unwrap ( ) ;
340352
341353 if !metadata:: STREAM_INFO . stream_exists ( & stream_name) {
342- if CONFIG . parseable . mode == Mode :: Query {
343- create_stream_and_schema_from_storage ( & stream_name) . await ?;
354+ if CONFIG . parseable . mode != Mode :: All {
355+ if let Ok ( stream_found) = create_stream_and_schema_from_storage ( & stream_name) . await {
356+ if !stream_found {
357+ return Err ( StreamError :: StreamNotFound ( stream_name. clone ( ) ) ) ;
358+ }
359+ } else {
360+ return Err ( StreamError :: StreamNotFound ( stream_name. clone ( ) ) ) ;
361+ }
344362 } else {
345363 return Err ( StreamError :: StreamNotFound ( stream_name) ) ;
346364 }
@@ -513,7 +531,11 @@ pub async fn get_stream_info(req: HttpRequest) -> Result<impl Responder, StreamE
513531 let stream_name: String = req. match_info ( ) . get ( "logstream" ) . unwrap ( ) . parse ( ) . unwrap ( ) ;
514532 if !metadata:: STREAM_INFO . stream_exists ( & stream_name) {
515533 if CONFIG . parseable . mode == Mode :: Query {
516- create_stream_and_schema_from_storage ( & stream_name) . await ?;
534+ if let Ok ( stream_found) = create_stream_and_schema_from_storage ( & stream_name) . await {
535+ if !stream_found {
536+ return Err ( StreamError :: StreamNotFound ( stream_name. clone ( ) ) ) ;
537+ }
538+ }
517539 } else {
518540 return Err ( StreamError :: StreamNotFound ( stream_name) ) ;
519541 }
@@ -560,7 +582,11 @@ pub async fn put_stream_hot_tier(
560582 let stream_name: String = req. match_info ( ) . get ( "logstream" ) . unwrap ( ) . parse ( ) . unwrap ( ) ;
561583 if !metadata:: STREAM_INFO . stream_exists ( & stream_name) {
562584 if CONFIG . parseable . mode == Mode :: Query {
563- create_stream_and_schema_from_storage ( & stream_name) . await ?;
585+ if let Ok ( stream_found) = create_stream_and_schema_from_storage ( & stream_name) . await {
586+ if !stream_found {
587+ return Err ( StreamError :: StreamNotFound ( stream_name. clone ( ) ) ) ;
588+ }
589+ }
564590 } else {
565591 return Err ( StreamError :: StreamNotFound ( stream_name) ) ;
566592 }
@@ -614,7 +640,11 @@ pub async fn get_stream_hot_tier(req: HttpRequest) -> Result<impl Responder, Str
614640
615641 if !metadata:: STREAM_INFO . stream_exists ( & stream_name) {
616642 if CONFIG . parseable . mode == Mode :: Query {
617- create_stream_and_schema_from_storage ( & stream_name) . await ?;
643+ if let Ok ( stream_found) = create_stream_and_schema_from_storage ( & stream_name) . await {
644+ if !stream_found {
645+ return Err ( StreamError :: StreamNotFound ( stream_name. clone ( ) ) ) ;
646+ }
647+ }
618648 } else {
619649 return Err ( StreamError :: StreamNotFound ( stream_name) ) ;
620650 }
@@ -643,7 +673,11 @@ pub async fn delete_stream_hot_tier(req: HttpRequest) -> Result<impl Responder,
643673
644674 if !metadata:: STREAM_INFO . stream_exists ( & stream_name) {
645675 if CONFIG . parseable . mode == Mode :: Query {
646- create_stream_and_schema_from_storage ( & stream_name) . await ?;
676+ if let Ok ( stream_found) = create_stream_and_schema_from_storage ( & stream_name) . await {
677+ if !stream_found {
678+ return Err ( StreamError :: StreamNotFound ( stream_name. clone ( ) ) ) ;
679+ }
680+ }
647681 } else {
648682 return Err ( StreamError :: StreamNotFound ( stream_name) ) ;
649683 }
0 commit comments