Skip to content

Commit

Permalink
fix: return version string based on request protocol (#4680)
Browse files Browse the repository at this point in the history
* fix: return version string based on request protocol

* fix: resolve lint issue
  • Loading branch information
sunng87 authored Sep 9, 2024
1 parent a8477e4 commit c22a398
Show file tree
Hide file tree
Showing 4 changed files with 25 additions and 13 deletions.
22 changes: 17 additions & 5 deletions src/common/function/src/system/version.rs
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ use common_query::error::Result;
use common_query::prelude::{Signature, Volatility};
use datatypes::data_type::ConcreteDataType;
use datatypes::vectors::{StringVector, VectorRef};
use session::context::Channel;

use crate::function::{Function, FunctionContext};

Expand All @@ -44,11 +45,22 @@ impl Function for VersionFunction {
Signature::exact(vec![], Volatility::Immutable)
}

fn eval(&self, _func_ctx: FunctionContext, _columns: &[VectorRef]) -> Result<VectorRef> {
let result = StringVector::from(vec![format!(
"5.7.20-greptimedb-{}",
env!("CARGO_PKG_VERSION")
)]);
fn eval(&self, func_ctx: FunctionContext, _columns: &[VectorRef]) -> Result<VectorRef> {
let version = match func_ctx.query_ctx.channel() {
Channel::Mysql => {
format!(
"{}-greptimedb-{}",
std::env::var("GREPTIMEDB_MYSQL_SERVER_VERSION")
.unwrap_or_else(|_| "8.4.2".to_string()),
env!("CARGO_PKG_VERSION")
)
}
Channel::Postgres => {
format!("16.3-greptimedb-{}", env!("CARGO_PKG_VERSION"))
}
_ => env!("CARGO_PKG_VERSION").to_string(),
};
let result = StringVector::from(vec![version]);
Ok(Arc::new(result))
}
}
2 changes: 1 addition & 1 deletion src/servers/src/postgres.rs
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ pub(crate) struct GreptimeDBStartupParameters {
impl GreptimeDBStartupParameters {
fn new() -> GreptimeDBStartupParameters {
GreptimeDBStartupParameters {
version: format!("16.3-greptime-{}", env!("CARGO_PKG_VERSION")),
version: format!("16.3-greptimedb-{}", env!("CARGO_PKG_VERSION")),
}
}
}
Expand Down
12 changes: 6 additions & 6 deletions tests/cases/standalone/common/function/system.result
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,12 @@ SELECT build();

++|build()|++|branch:BRANCH|commit:COMMIT|commit_short:COMMIT_SHORT|clean:CLEAN|version:VERSION++

-- SQLNESS REPLACE greptimedb-[\d\.]+ greptimedb-VERSION
-- SQLNESS REPLACE [\d\.]+ VERSION
SELECT version();

+-------------------------+
| version() |
+-------------------------+
| 5.7.20-greptimedb-VERSION |
+-------------------------+
+-----------+
| version() |
+-----------+
| VERSION |
+-----------+

2 changes: 1 addition & 1 deletion tests/cases/standalone/common/function/system.sql
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@
-- SQLNESS REPLACE [\s\-]+
SELECT build();

-- SQLNESS REPLACE greptimedb-[\d\.]+ greptimedb-VERSION
-- SQLNESS REPLACE [\d\.]+ VERSION
SELECT version();

0 comments on commit c22a398

Please sign in to comment.