Fix version comparison with imported_version (#23326)
Signed-off-by: Yongtao Huang <yongtaoh2022@gmail.com>
This commit is contained in:
@@ -7,6 +7,7 @@ from urllib.parse import urlparse
|
|||||||
import requests
|
import requests
|
||||||
from elasticsearch import Elasticsearch
|
from elasticsearch import Elasticsearch
|
||||||
from flask import current_app
|
from flask import current_app
|
||||||
|
from packaging.version import parse as parse_version
|
||||||
from pydantic import BaseModel, model_validator
|
from pydantic import BaseModel, model_validator
|
||||||
|
|
||||||
from core.rag.datasource.vdb.field import Field
|
from core.rag.datasource.vdb.field import Field
|
||||||
@@ -149,7 +150,7 @@ class ElasticSearchVector(BaseVector):
|
|||||||
return cast(str, info["version"]["number"])
|
return cast(str, info["version"]["number"])
|
||||||
|
|
||||||
def _check_version(self):
|
def _check_version(self):
|
||||||
if self._version < "8.0.0":
|
if parse_version(self._version) < parse_version("8.0.0"):
|
||||||
raise ValueError("Elasticsearch vector database version must be greater than 8.0.0")
|
raise ValueError("Elasticsearch vector database version must be greater than 8.0.0")
|
||||||
|
|
||||||
def get_type(self) -> str:
|
def get_type(self) -> str:
|
||||||
|
@@ -12,6 +12,7 @@ import yaml # type: ignore
|
|||||||
from Crypto.Cipher import AES
|
from Crypto.Cipher import AES
|
||||||
from Crypto.Util.Padding import pad, unpad
|
from Crypto.Util.Padding import pad, unpad
|
||||||
from packaging import version
|
from packaging import version
|
||||||
|
from packaging.version import parse as parse_version
|
||||||
from pydantic import BaseModel, Field
|
from pydantic import BaseModel, Field
|
||||||
from sqlalchemy import select
|
from sqlalchemy import select
|
||||||
from sqlalchemy.orm import Session
|
from sqlalchemy.orm import Session
|
||||||
@@ -269,7 +270,7 @@ class AppDslService:
|
|||||||
check_dependencies_pending_data = None
|
check_dependencies_pending_data = None
|
||||||
if dependencies:
|
if dependencies:
|
||||||
check_dependencies_pending_data = [PluginDependency.model_validate(d) for d in dependencies]
|
check_dependencies_pending_data = [PluginDependency.model_validate(d) for d in dependencies]
|
||||||
elif imported_version <= "0.1.5":
|
elif parse_version(imported_version) <= parse_version("0.1.5"):
|
||||||
if "workflow" in data:
|
if "workflow" in data:
|
||||||
graph = data.get("workflow", {}).get("graph", {})
|
graph = data.get("workflow", {}).get("graph", {})
|
||||||
dependencies_list = self._extract_dependencies_from_workflow_graph(graph)
|
dependencies_list = self._extract_dependencies_from_workflow_graph(graph)
|
||||||
|
Reference in New Issue
Block a user