From 6a9628c62c8b456d71d6f59dcb0dc96542a14746 Mon Sep 17 00:00:00 2001 From: Satyam Singh Date: Mon, 3 Jul 2023 21:52:51 +0530 Subject: [PATCH] Sort inferred fields --- server/src/event/format/json.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/server/src/event/format/json.rs b/server/src/event/format/json.rs index c84d599e2..256c7f49e 100644 --- a/server/src/event/format/json.rs +++ b/server/src/event/format/json.rs @@ -24,6 +24,7 @@ use arrow_array::RecordBatch; use arrow_json::reader::{infer_json_schema_from_iterator, ReaderBuilder}; use arrow_schema::{DataType, Field, Fields, Schema}; use datafusion::arrow::util::bit_util::round_upto_multiple_of_64; +use itertools::Itertools; use serde_json::Value; use std::{collections::HashMap, sync::Arc}; @@ -73,7 +74,12 @@ impl EventFormat for Event { return Err(anyhow!("Could not merge schema of this event with that of the existing stream. {:?}", err)); } is_first = true; - infer_schema.fields.iter().cloned().collect() + infer_schema + .fields + .iter() + .cloned() + .sorted_by(|a, b| a.name().cmp(b.name())) + .collect() } Err(err) => { return Err(anyhow!(