pyobvector 0.2.9__tar.gz → 0.2.11__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. {pyobvector-0.2.9 → pyobvector-0.2.11}/PKG-INFO +2 -2
  2. {pyobvector-0.2.9 → pyobvector-0.2.11}/README.md +1 -1
  3. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/client/ob_vec_json_table_client.py +9 -3
  4. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyproject.toml +1 -1
  5. {pyobvector-0.2.9 → pyobvector-0.2.11}/LICENSE +0 -0
  6. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/__init__.py +0 -0
  7. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/client/__init__.py +0 -0
  8. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/client/collection_schema.py +0 -0
  9. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/client/enum.py +0 -0
  10. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/client/exceptions.py +0 -0
  11. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/client/fts_index_param.py +0 -0
  12. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/client/index_param.py +0 -0
  13. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/client/milvus_like_client.py +0 -0
  14. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/client/ob_vec_client.py +0 -0
  15. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/client/partitions.py +0 -0
  16. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/client/schema_type.py +0 -0
  17. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/json_table/__init__.py +0 -0
  18. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/json_table/json_value_returning_func.py +0 -0
  19. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/json_table/oceanbase_dialect.py +0 -0
  20. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/json_table/virtual_data_type.py +0 -0
  21. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/schema/__init__.py +0 -0
  22. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/schema/dialect.py +0 -0
  23. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/schema/full_text_index.py +0 -0
  24. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/schema/geo_srid_point.py +0 -0
  25. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/schema/gis_func.py +0 -0
  26. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/schema/match_against_func.py +0 -0
  27. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/schema/ob_table.py +0 -0
  28. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/schema/reflection.py +0 -0
  29. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/schema/replace_stmt.py +0 -0
  30. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/schema/vec_dist_func.py +0 -0
  31. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/schema/vector.py +0 -0
  32. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/schema/vector_index.py +0 -0
  33. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/util/__init__.py +0 -0
  34. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/util/ob_version.py +0 -0
  35. {pyobvector-0.2.9 → pyobvector-0.2.11}/pyobvector/util/vector.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pyobvector
3
- Version: 0.2.9
3
+ Version: 0.2.11
4
4
  Summary: A python SDK for OceanBase Vector Store, based on SQLAlchemy, compatible with Milvus API.
5
5
  Author: shanhaikang.shk
6
6
  Author-email: shanhaikang.shk@oceanbase.com
@@ -36,7 +36,7 @@ poetry install
36
36
  - install with pip:
37
37
 
38
38
  ```shell
39
- pip install pyobvector==0.2.9
39
+ pip install pyobvector==0.2.11
40
40
  ```
41
41
 
42
42
  ## Build Doc
@@ -15,7 +15,7 @@ poetry install
15
15
  - install with pip:
16
16
 
17
17
  ```shell
18
- pip install pyobvector==0.2.9
18
+ pip install pyobvector==0.2.11
19
19
  ```
20
20
 
21
21
  ## Build Doc
@@ -26,8 +26,8 @@ from ..json_table import (
26
26
  logger = logging.getLogger(__name__)
27
27
  logger.setLevel(logging.DEBUG)
28
28
 
29
- JSON_TABLE_META_TABLE_NAME = "_meta_json_t"
30
- JSON_TABLE_DATA_TABLE_NAME = "_data_json_t"
29
+ JSON_TABLE_META_TABLE_NAME = "meta_json_t"
30
+ JSON_TABLE_DATA_TABLE_NAME = "data_json_t"
31
31
 
32
32
  class ObVecJsonTableClient(ObVecClient):
33
33
  """OceanBase Vector Store Client with JSON Table."""
@@ -846,6 +846,7 @@ class ObVecJsonTableClient(ObVecClient):
846
846
  new_select_exprs.append(data_id_col_expr)
847
847
  need_replace_select_exprs = True
848
848
 
849
+ alias_names = set()
849
850
  for select_expr in ast.args['expressions']:
850
851
  if isinstance(select_expr, exp.Star):
851
852
  need_replace_select_exprs = True
@@ -857,6 +858,8 @@ class ObVecJsonTableClient(ObVecClient):
857
858
  col_expr.args['this'] = identifier
858
859
  new_select_exprs.append(col_expr)
859
860
  else:
861
+ if isinstance(select_expr, exp.Alias):
862
+ alias_names.add(select_expr.args['alias'].args['this'])
860
863
  new_select_exprs.append(select_expr)
861
864
  if need_replace_select_exprs:
862
865
  ast.args['expressions'] = new_select_exprs
@@ -865,6 +868,9 @@ class ObVecJsonTableClient(ObVecClient):
865
868
  json_table_str = f"json_table({JSON_TABLE_DATA_TABLE_NAME}.jdata, '$' COLUMNS ({', '.join(json_table_meta_str)})) {tmp_table_name}"
866
869
 
867
870
  for col in ast.find_all(exp.Column):
871
+ col_name = col.args["this"].args["this"]
872
+ if col_name in alias_names:
873
+ continue
868
874
  if 'table' in col.args.keys():
869
875
  if col.args['table'].args['this'] != JSON_TABLE_DATA_TABLE_NAME:
870
876
  col.args['table'].args['this'] = tmp_table_name
@@ -894,6 +900,6 @@ class ObVecJsonTableClient(ObVecClient):
894
900
  where_clause.args['this'] = parse_one(extra_filter_str)
895
901
  ast.args['where'] = where_clause
896
902
 
897
- select_sql = str(ast)
903
+ select_sql = ast.sql(dialect="mysql", identify=True)
898
904
  logger.debug(f"===================== do select: {select_sql}")
899
905
  return self.perform_raw_text_sql(select_sql)
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "pyobvector"
3
- version = "0.2.9"
3
+ version = "0.2.11"
4
4
  description = "A python SDK for OceanBase Vector Store, based on SQLAlchemy, compatible with Milvus API."
5
5
  authors = ["shanhaikang.shk <shanhaikang.shk@oceanbase.com>"]
6
6
  readme = "README.md"
File without changes