Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 1 addition & 3 deletions src/event/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@ use tracing::{info_span, instrument};

use self::error::EventError;
use crate::{
LOCK_EXPECT,
handlers::TelemetryType,
metadata::update_stats,
metrics::{increment_events_ingested_by_date, increment_events_ingested_size_by_date},
Expand Down Expand Up @@ -157,7 +156,7 @@ pub fn commit_schema(
tenant_id: &Option<String>,
) -> Result<(), StagingError> {
let _span = info_span!("commit_schema", stream_name).entered();
let mut stream_metadata = PARSEABLE.streams.write().expect("lock poisoned");
let mut stream_metadata = PARSEABLE.streams.write();
let tenant_id = tenant_id.as_deref().unwrap_or(DEFAULT_TENANT);
let map = &mut stream_metadata
.get_mut(tenant_id)
Expand All @@ -166,7 +165,6 @@ pub fn commit_schema(
.ok_or_else(|| StreamNotFound(stream_name.to_string()))?
.metadata
.write()
.expect(LOCK_EXPECT)
.schema;
let current_schema = Schema::new(map.values().cloned().collect::<Fields>());
let schema = Schema::try_merge(vec![current_schema, schema.as_ref().clone()])?;
Expand Down
7 changes: 3 additions & 4 deletions src/handlers/http/logstream.rs
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ use crate::utils::get_tenant_id_from_request;
use crate::utils::json::flatten::{
self, convert_to_array, generic_flattening, has_more_than_max_allowed_levels,
};
use crate::{LOCK_EXPECT, stats, validator};
use crate::{stats, validator};

use actix_web::http::StatusCode;
use actix_web::web::{Json, Path};
Expand Down Expand Up @@ -397,15 +397,14 @@ pub async fn get_stream_info(
};

let tenant_id = tenant_id.as_deref().unwrap_or(DEFAULT_TENANT);
let hash_map = PARSEABLE.streams.read().unwrap();
let hash_map = PARSEABLE.streams.read();
let stream_meta = hash_map
.get(tenant_id)
.ok_or_else(|| TenantNotFound(tenant_id.to_owned()))?
.get(&stream_name)
.ok_or_else(|| StreamNotFound(stream_name.clone()))?
.metadata
.read()
.expect(LOCK_EXPECT);
.read();

let stream_info =
StreamInfo::from_metadata(&stream_meta, stream_first_event_at, stream_latest_event_at);
Expand Down
2 changes: 1 addition & 1 deletion src/handlers/http/modal/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -636,7 +636,7 @@ pub async fn initialize_hot_tier_metadata_on_startup(
) -> anyhow::Result<()> {
// Collect hot tier configurations from streams before doing async operations
let hot_tier_configs: Vec<(String, Option<String>, StreamHotTier)> = {
let tenants_guard = PARSEABLE.streams.read().unwrap();
let tenants_guard = PARSEABLE.streams.read();
tenants_guard
.iter()
.flat_map(|(tenant_id, streams)| {
Expand Down
5 changes: 1 addition & 4 deletions src/parseable/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -280,7 +280,6 @@ impl Parseable {
let tenant_id = tenant_id.as_deref().unwrap_or(DEFAULT_TENANT);
self.streams
.read()
.unwrap()
.get(tenant_id)
.ok_or_else(|| StreamNotFound(format!("{stream_name} with tenant {tenant_id}")))
.map(|v| v.get(stream_name))?
Expand Down Expand Up @@ -1219,9 +1218,7 @@ impl Parseable {
write_user_groups().remove(tenant_id);

// delete streams
if let Ok(mut streams) = PARSEABLE.streams.write() {
streams.remove(tenant_id);
}
PARSEABLE.streams.write().remove(tenant_id);

// delete from in-mem
if let Ok(mut tenants) = self.tenants.write() {
Expand Down
4 changes: 0 additions & 4 deletions src/parseable/staging/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,6 @@
*
*/

use std::sync::PoisonError;

use crate::{parseable::StreamNotFound, tenants::TenantNotFound};

pub mod reader;
Expand All @@ -38,6 +36,4 @@ pub enum StagingError {
StreamNotFound(#[from] StreamNotFound),
#[error("{0}")]
TenantNotFound(#[from] TenantNotFound),
#[error("{0}")]
PoisonError(#[from] PoisonError<String>),
}
Loading
Loading