lbug 0.12.0 → 0.12.3-dev.1
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.
- package/lbug-source/.github/workflows/benchmark-workflow.yml +7 -4
- package/lbug-source/.github/workflows/build-and-deploy-extension.yml +4 -11
- package/lbug-source/.github/workflows/build-and-deploy.yml +37 -11
- package/lbug-source/.github/workflows/build-extensions.yml +0 -8
- package/lbug-source/.github/workflows/business-intelligence-benchmark.yml +1 -1
- package/lbug-source/.github/workflows/ci-workflow.yml +139 -34
- package/lbug-source/.github/workflows/clickbench-workflow.yml +5 -0
- package/lbug-source/.github/workflows/gen-docs.yml +55 -29
- package/lbug-source/.github/workflows/get-extensions-from-ghcr.yml +2 -2
- package/lbug-source/.github/workflows/interactive-v1-benchmark.yml +6 -1
- package/lbug-source/.github/workflows/java-workflow.yml +31 -33
- package/lbug-source/.github/workflows/ldbc-fintech-benchmark-workflow.yml +1 -1
- package/lbug-source/.github/workflows/lsqb-benchmark-workflow.yml +16 -8
- package/lbug-source/.github/workflows/precompiled-bin-workflow.yml +10 -8
- package/lbug-source/.github/workflows/purge-extension.yml +2 -2
- package/lbug-source/.github/workflows/python-wheel-workflow.yml +24 -12
- package/lbug-source/.github/workflows/wasm-workflow.yml +6 -1
- package/lbug-source/.gitignore +1 -0
- package/lbug-source/AGENTS.md +19 -0
- package/lbug-source/CMakeLists.txt +9 -7
- package/lbug-source/Makefile +1 -2
- package/lbug-source/benchmark/lsqb/benchmark_runner.py +1 -2
- package/lbug-source/benchmark/lsqb/serializer.py +1 -2
- package/lbug-source/dataset/books/books.csv +3 -0
- package/lbug-source/extension/azure/test/test_files/azure.test +2 -0
- package/lbug-source/extension/duckdb/test/test_files/duckdb.test +1 -0
- package/lbug-source/extension/duckdb/test/test_files/remote_duckdb.test +2 -0
- package/lbug-source/extension/fts/src/function/create_fts_index.cpp +6 -8
- package/lbug-source/extension/fts/test/test_files/multi_index.test +44 -0
- package/lbug-source/extension/httpfs/test/test_files/gcs_download.test +1 -0
- package/lbug-source/extension/httpfs/test/test_files/gcs_glob.test +1 -0
- package/lbug-source/extension/httpfs/test/test_files/gcs_remote_database.test +1 -0
- package/lbug-source/extension/httpfs/test/test_files/http.test +13 -0
- package/lbug-source/extension/httpfs/test/test_files/s3_download.test +1 -0
- package/lbug-source/extension/iceberg/test/test_files/iceberg.test +1 -0
- package/lbug-source/extension/json/test/scan_json.test +1 -0
- package/lbug-source/extension/sqlite/test/test_files/sqlite.test +1 -0
- package/lbug-source/extension/vector/test/test_files/transaction.test +56 -0
- package/lbug-source/extension/vector/test/test_files/update.test +84 -0
- package/lbug-source/scripts/extension/PRODUCTION_RELEASES +1 -14
- package/lbug-source/scripts/pip-package/setup.py +0 -3
- package/lbug-source/scripts/update-nightly-build-version.py +15 -0
- package/lbug-source/src/CMakeLists.txt +1 -1
- package/lbug-source/src/c_api/value.cpp +5 -2
- package/lbug-source/src/include/c_api/lbug.h +5 -3
- package/lbug-source/src/storage/table/node_table.cpp +1 -0
- package/lbug-source/test/c_api/value_test.cpp +4 -3
- package/lbug-source/test/test_files/extension/extension.test +0 -3
- package/lbug-source/tools/nodejs_api/README.md +2 -2
- package/lbug-source/tools/nodejs_api/package.json +2 -2
- package/lbug-source/tools/python_api/Makefile +2 -2
- package/lbug-source/tools/python_api/pyproject.toml +36 -0
- package/lbug-source/tools/wasm/examples/browser_in_memory/package.json +1 -1
- package/lbug-source/tools/wasm/examples/browser_persistent/package.json +1 -1
- package/lbug-source/tools/wasm/examples/nodejs/package.json +1 -1
- package/lbug-source/tools/wasm/package.json +1 -1
- package/package.json +3 -3
- package/prebuilt/lbugjs-darwin-arm64.node +0 -0
- package/prebuilt/lbugjs-linux-arm64.node +0 -0
- package/prebuilt/lbugjs-linux-x64.node +0 -0
- package/prebuilt/lbugjs-win32-x64.node +0 -0
- package/lbug-source/tools/python_api/requirements_dev.txt +0 -20
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
--
|
|
4
4
|
|
|
5
5
|
-CASE ScanFromHTTPCSV
|
|
6
|
+
-SKIP
|
|
6
7
|
-LOAD_DYNAMIC_EXTENSION httpfs
|
|
7
8
|
-STATEMENT load from "http://localhost/dataset/tinysnb/vPerson.csv" return * limit 5;
|
|
8
9
|
---- 5
|
|
@@ -12,7 +13,16 @@
|
|
|
12
13
|
5|Dan|2|False|True|20|4.8|1950-07-23|2031-11-30 12:25:30|10 years 5 months 13:00:00.000024|[1,9]|[Wolfeschlegelstein,Daniel]|[[7,4],[8,8],[9]]|[76,88,99,89]|1.300|a0ee-bc99-9c0b-4ef8-bb6d-6bb9-bd38-0a14
|
|
13
14
|
7|Elizabeth|1|False|True|20|4.7|1980-10-26|1976-12-23 11:21:42|48:24:11|[2]|[Ein]|[[6],[7],[8]]|[96,59,65,88]|1.463|{a0eebc99-9c0b4ef8-bb6d6bb9-bd380a15}
|
|
14
15
|
|
|
16
|
+
-CASE AttachHTTPDatabase
|
|
17
|
+
-SKIP
|
|
18
|
+
-LOAD_DYNAMIC_EXTENSION httpfs
|
|
19
|
+
|
|
20
|
+
-CASE ScanFromHTTPCSV
|
|
21
|
+
-SKIP
|
|
22
|
+
-LOAD_DYNAMIC_EXTENSION httpfs
|
|
23
|
+
|
|
15
24
|
-CASE ScanFromLargeFiles
|
|
25
|
+
-SKIP
|
|
16
26
|
-LOAD_DYNAMIC_EXTENSION httpfs
|
|
17
27
|
-STATEMENT load from "http://localhost/dataset/copy-test/node/parquet/types_50k_0.parquet" return count(*);
|
|
18
28
|
---- 1
|
|
@@ -22,6 +32,7 @@
|
|
|
22
32
|
50000
|
|
23
33
|
|
|
24
34
|
-CASE CopyFromHTTPCSV
|
|
35
|
+
-SKIP
|
|
25
36
|
-LOAD_DYNAMIC_EXTENSION httpfs
|
|
26
37
|
-STATEMENT CREATE NODE TABLE User(name STRING, age INT64, PRIMARY KEY (name))
|
|
27
38
|
---- ok
|
|
@@ -35,6 +46,7 @@ Zhang|50
|
|
|
35
46
|
Noura|25
|
|
36
47
|
|
|
37
48
|
-CASE ScanFromHTTPS
|
|
49
|
+
-SKIP
|
|
38
50
|
-LOAD_DYNAMIC_EXTENSION httpfs
|
|
39
51
|
-STATEMENT load from "https://extension.ladybugdb.com/dataset/test/city.csv" return *;
|
|
40
52
|
---- 3
|
|
@@ -43,6 +55,7 @@ Kitchener|200000
|
|
|
43
55
|
Guelph|75000
|
|
44
56
|
|
|
45
57
|
-CASE AttachHTTPDatabase
|
|
58
|
+
-SKIP
|
|
46
59
|
-LOAD_DYNAMIC_EXTENSION httpfs
|
|
47
60
|
-LOG validateTableNotExists
|
|
48
61
|
-STATEMENT CALL SHOW_TABLES() RETURN *
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
Binder exception: Cannot load from file type iceberg. If this file type is part of a lbug extension please load the extension then try again.
|
|
10
10
|
|
|
11
11
|
-CASE IcebergFunctions
|
|
12
|
+
-SKIP
|
|
12
13
|
-LOAD_DYNAMIC_EXTENSION iceberg
|
|
13
14
|
-LOG NOT_allow_moved_paths
|
|
14
15
|
-STATEMENT LOAD FROM '${LBUG_ROOT_DIRECTORY}/extension/iceberg/test/iceberg_tables/lineitem_iceberg' (file_format='iceberg', allow_moved_paths=false) RETURN *
|
|
@@ -173,6 +173,7 @@ Sóló cón tu párejâ|126|this is a very very good movie|{rating: 5.300000, st
|
|
|
173
173
|
The 😂😃🧘🏻♂️🌍🌦️🍞🚗 movie|2544|the movie is very very good|{rating: 7.000000, stars: 10, views: 982, release: 2018-11-13 13:33:11, release_ns: 2018-11-13 13:33:11.123456, release_ms: 2018-11-13 13:33:11.123456, release_sec: 2018-11-13 13:33:11.123456, release_tz: 2018-11-13 13:33:11.123456, film: 2014-09-12, u8: 12, u16: 120, u32: 55, u64: 1, hugedata: 1919810}||{audience1= 33}|8.989000
|
|
174
174
|
|
|
175
175
|
-CASE ScanFromHttpfsJson
|
|
176
|
+
-SKIP
|
|
176
177
|
-LOAD_DYNAMIC_EXTENSION json
|
|
177
178
|
-LOAD_DYNAMIC_EXTENSION httpfs
|
|
178
179
|
-STATEMENT LOAD FROM "http://localhost/dataset/json-misc/prim-test.json" return *;
|
|
@@ -75,6 +75,7 @@ Detached database successfully.
|
|
|
75
75
|
alice
|
|
76
76
|
|
|
77
77
|
-CASE TestingDataTypesSqlite
|
|
78
|
+
-SKIP
|
|
78
79
|
-SKIP_FSM_LEAK_CHECK
|
|
79
80
|
-LOAD_DYNAMIC_EXTENSION sqlite
|
|
80
81
|
-STATEMENT ATTACH '${LBUG_ROOT_DIRECTORY}/extension/sqlite/test/sqlite_database/datatypeTestingSqlite' as datatype (dbtype sqlite);
|
|
@@ -390,3 +390,59 @@ embeddings|e_hnsw_index|HNSW|[vec]
|
|
|
390
390
|
333
|
|
391
391
|
444
|
|
392
392
|
598
|
|
393
|
+
|
|
394
|
+
-CASE UpdateAfterDropIndex
|
|
395
|
+
-SKIP_IN_MEM
|
|
396
|
+
-LOAD_DYNAMIC_EXTENSION vector
|
|
397
|
+
-STATEMENT CREATE NODE TABLE Person(id STRING, name STRING, embeddings FLOAT[8], PRIMARY KEY(id));
|
|
398
|
+
---- ok
|
|
399
|
+
-STATEMENT CREATE (p:Person {id: "person-1", name: "Alice", embeddings: [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8]});
|
|
400
|
+
---- ok
|
|
401
|
+
-STATEMENT CALL CREATE_VECTOR_INDEX('Person', 'person_embeddings_idx', 'embeddings', metric := 'cosine');
|
|
402
|
+
---- ok
|
|
403
|
+
-STATEMENT CALL SHOW_INDEXES() RETURN table_name, index_name;
|
|
404
|
+
---- 1
|
|
405
|
+
Person|person_embeddings_idx
|
|
406
|
+
-STATEMENT CALL DROP_VECTOR_INDEX('Person', 'person_embeddings_idx');
|
|
407
|
+
---- ok
|
|
408
|
+
-STATEMENT CALL SHOW_INDEXES() RETURN *;
|
|
409
|
+
---- 0
|
|
410
|
+
-STATEMENT MATCH (p:Person {id: "person-1"}) SET p.embeddings = [0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9] RETURN p.id;
|
|
411
|
+
---- 1
|
|
412
|
+
person-1
|
|
413
|
+
-STATEMENT MATCH (p:Person {id: "person-1"}) RETURN p.embeddings;
|
|
414
|
+
---- 1
|
|
415
|
+
[0.200000,0.300000,0.400000,0.500000,0.600000,0.700000,0.800000,0.900000]
|
|
416
|
+
-RELOADDB
|
|
417
|
+
-STATEMENT MATCH (p:Person {id: "person-1"}) SET p.embeddings = [0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0] RETURN p.id;
|
|
418
|
+
---- 1
|
|
419
|
+
person-1
|
|
420
|
+
-STATEMENT MATCH (p:Person {id: "person-1"}) RETURN p.embeddings;
|
|
421
|
+
---- 1
|
|
422
|
+
[0.300000,0.400000,0.500000,0.600000,0.700000,0.800000,0.900000,1.000000]
|
|
423
|
+
|
|
424
|
+
-CASE MergeAfterDropIndex
|
|
425
|
+
-SKIP_IN_MEM
|
|
426
|
+
-LOAD_DYNAMIC_EXTENSION vector
|
|
427
|
+
-STATEMENT CREATE NODE TABLE Organization(id STRING, name STRING, embeddings FLOAT[8], PRIMARY KEY(id));
|
|
428
|
+
---- ok
|
|
429
|
+
-STATEMENT CREATE (o:Organization {id: "org-1", name: "Company", embeddings: [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8]});
|
|
430
|
+
---- ok
|
|
431
|
+
-STATEMENT CALL CREATE_VECTOR_INDEX('Organization', 'org_embeddings_idx', 'embeddings', metric := 'l2');
|
|
432
|
+
---- ok
|
|
433
|
+
-STATEMENT CALL DROP_VECTOR_INDEX('Organization', 'org_embeddings_idx');
|
|
434
|
+
---- ok
|
|
435
|
+
-STATEMENT MERGE (o:Organization {id: "org-1"}) SET o.embeddings = [0.5, 0.6, 0.7, 0.8, 0.9, 1.0, 1.1, 1.2] RETURN o.id;
|
|
436
|
+
---- 1
|
|
437
|
+
org-1
|
|
438
|
+
-STATEMENT MATCH (o:Organization {id: "org-1"}) RETURN o.embeddings;
|
|
439
|
+
---- 1
|
|
440
|
+
[0.500000,0.600000,0.700000,0.800000,0.900000,1.000000,1.100000,1.200000]
|
|
441
|
+
-STATEMENT MERGE (o:Organization {id: "org-2"}) ON CREATE SET o.name = "NewOrg", o.embeddings = [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8] RETURN o.id;
|
|
442
|
+
---- 1
|
|
443
|
+
org-2
|
|
444
|
+
-RELOADDB
|
|
445
|
+
-STATEMENT MATCH (o:Organization) RETURN o.id, o.embeddings ORDER BY o.id;
|
|
446
|
+
---- 2
|
|
447
|
+
org-1|[0.500000,0.600000,0.700000,0.800000,0.900000,1.000000,1.100000,1.200000]
|
|
448
|
+
org-2|[0.100000,0.200000,0.300000,0.400000,0.500000,0.600000,0.700000,0.800000]
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
-DATASET CSV empty
|
|
2
|
+
-BUFFER_POOL_SIZE 134217728
|
|
3
|
+
|
|
4
|
+
--
|
|
5
|
+
|
|
6
|
+
-CASE UpdateVectorProperty
|
|
7
|
+
-LOAD_DYNAMIC_EXTENSION vector
|
|
8
|
+
-STATEMENT CREATE NODE TABLE embeddings (id int64, vec FLOAT[8], PRIMARY KEY (id));
|
|
9
|
+
---- ok
|
|
10
|
+
-STATEMENT CALL threads=1;
|
|
11
|
+
---- ok
|
|
12
|
+
-STATEMENT COPY embeddings FROM "${LBUG_ROOT_DIRECTORY}/dataset/embeddings/embeddings-8-1k.csv" (deLim=',');
|
|
13
|
+
---- ok
|
|
14
|
+
-STATEMENT CALL CREATE_VECTOR_INDEX('embeddings', 'e_hnsw_index','vec', metric := 'l2');
|
|
15
|
+
---- ok
|
|
16
|
+
-STATEMENT CREATE (t:embeddings {id: 1000, vec: [0.1521,0.3021,0.5366,0.2774,0.5593,0.5589,0.1365,0.8557]});
|
|
17
|
+
---- ok
|
|
18
|
+
-STATEMENT MATCH (t:embeddings) WHERE t.id = 1000 SET t.vec = [0.1521,0.3021,0.5366,0.2774,0.5593,0.5589,0.1365,0.0];
|
|
19
|
+
---- error
|
|
20
|
+
Runtime exception: Cannot set property vec in table embeddings because it is used in one or more indexes. Try delete and then insert.
|
|
21
|
+
|
|
22
|
+
-CASE UpdatePrimaryKey
|
|
23
|
+
-LOAD_DYNAMIC_EXTENSION vector
|
|
24
|
+
-STATEMENT CREATE NODE TABLE embeddings (id int64, vec FLOAT[8], PRIMARY KEY (id));
|
|
25
|
+
---- ok
|
|
26
|
+
-STATEMENT CALL threads=1;
|
|
27
|
+
---- ok
|
|
28
|
+
-STATEMENT COPY embeddings FROM "${LBUG_ROOT_DIRECTORY}/dataset/embeddings/embeddings-8-1k.csv" (deLim=',');
|
|
29
|
+
---- ok
|
|
30
|
+
-STATEMENT CALL CREATE_VECTOR_INDEX('embeddings', 'e_hnsw_index','vec', metric := 'l2');
|
|
31
|
+
---- ok
|
|
32
|
+
-STATEMENT CREATE (t:embeddings {id: 1000, vec: [0.1521,0.3021,0.5366,0.2774,0.5593,0.5589,0.1365,0.8557]});
|
|
33
|
+
---- ok
|
|
34
|
+
-STATEMENT MATCH (t:embeddings) WHERE t.id = 1000 SET t.id = 1;
|
|
35
|
+
---- error
|
|
36
|
+
Binder exception: Cannot set property id in table embeddings because it is used as primary key. Try delete and then insert.
|
|
37
|
+
|
|
38
|
+
-CASE DeleteAndInsert
|
|
39
|
+
-LOAD_DYNAMIC_EXTENSION vector
|
|
40
|
+
-STATEMENT CREATE NODE TABLE embeddings(id INT64 PRIMARY KEY, title STRING, published_year INT64, vec FLOAT[384]);
|
|
41
|
+
---- ok
|
|
42
|
+
-STATEMENT CALL threads=1;
|
|
43
|
+
---- ok
|
|
44
|
+
-STATEMENT COPY embeddings FROM "${LBUG_ROOT_DIRECTORY}/dataset/books/books.csv" (deLim=',');
|
|
45
|
+
---- ok
|
|
46
|
+
-STATEMENT CALL CREATE_VECTOR_INDEX('embeddings', 'e_hnsw_index','vec', metric := 'l2');
|
|
47
|
+
---- ok
|
|
48
|
+
-STATEMENT CALL QUERY_VECTOR_INDEX('embeddings', 'e_hnsw_index', [-0.08304853737354279,-0.020585404708981514,-0.0509379617869854,0.03479354456067085,-0.11813158541917801,-0.022585391998291016,0.000689070497173816,-0.0457182414829731,0.011306572705507278,-0.031156159937381744,0.05671192333102226,-0.06878625601530075,-0.02894800342619419,0.039227377623319626,-0.024016229435801506,-0.0060184127651154995,-0.011686223559081554,-0.06417945772409439,-0.08726289123296738,-0.05126213654875755,0.010797262191772461,-0.004546705167740583,0.007328117731958628,0.032176680862903595,0.01062939502298832,0.00931419339030981,0.08034238964319229,-0.005698892287909985,0.06931844353675842,-0.053622953593730927,0.04066690430045128,0.06261418014764786,0.009296705015003681,-0.0278452280908823,0.004991802386939526,0.029851572588086128,0.016903048381209373,-0.019055668264627457,0.055076319724321365,-0.01817430555820465,0.0065304902382195,0.011707567609846592,-0.04950125887989998,0.015748074278235435,0.003966465592384338,0.044103074818849564,0.06040498986840248,0.010776469483971596,-0.05709626525640488,-0.0849628895521164,-0.04497400298714638,0.0257484819740057,-0.009737192653119564,0.026926036924123764,0.08299572765827179,0.03719377890229225,0.07925763726234436,-0.028637854382395744,-0.05194132775068283,-0.10992258042097092,-0.03710110858082771,-0.036725450307130814,-0.0382792092859745,0.05444487929344177,0.19726455211639404,0.020997820422053337,-0.015920456498861313,0.06538067013025284,-0.012968774884939194,0.0062084742821753025,-0.03842930868268013,-0.020584270358085632,-0.01633630506694317,0.03421171382069588,0.08500393480062485,-0.05790746584534645,0.03329910337924957,0.040874168276786804,0.08091091364622116,0.11162357777357101,0.042778026312589645,-0.12173154205083847,-0.020847905427217484,0.06534169614315033,0.02539641782641411,0.016980383545160294,-0.050530806183815,-0.023421572521328926,-0.06318700313568115,-0.0699368268251419,-0.08303093910217285,-0.09778175503015518,-0.007213904522359371,-0.0007251045317389071,-0.006016620434820652,0.024347525089979172,0.05141197517514229,-0.03679395467042923,0.04540250450372696,0.08500988781452179,0.11084067821502686,-0.0005618152790702879,0.0001796935684978962,0.034022748470306396,0.03315793722867966,0.013885930180549622,0.006286488845944405,0.021033186465501785,0.00964267272502184,-0.0015390281332656741,0.006030015181750059,-0.03349592536687851,0.03646736964583397,-0.030008355155587196,-0.018402257934212685,-0.042453039437532425,0.057676076889038086,0.14727634191513062,-0.037098269909620285,-0.01931891217827797,-0.0033551121596246958,0.027810173109173775,-0.002369416644796729,0.08153031021356583,-0.0357547402381897,0.010088938288390636,-0.06867047399282455,-5.1213335435770626e-33,0.04189281910657883,-0.03248955309391022,0.07230716198682785,0.038300685584545135,0.07021919637918472,0.03160807490348816,0.02875838428735733,-0.06413891911506653,-0.0024398057721555233,-0.038075875490903854,-0.0030057954136282206,0.0311278086155653,0.04101073741912842,-0.0005872913170605898,0.05330154299736023,0.031099742278456688,-0.08356330543756485,0.0011608878849074244,0.06657203286886215,0.026241451501846313,-0.0015170741826295853,0.021294495090842247,-0.09065700322389603,-0.003927814774215221,-0.0389481857419014,-0.0040688589215278625,0.07121507078409195,-0.001776993740350008,-0.02950090728700161,0.0022221223916858435,-0.015435175970196724,0.11576541513204575,-0.1070084199309349,-0.025283537805080414,0.01918623596429825,0.026469694450497627,-0.003952694125473499,0.0007155280327424407,-0.04415374621748924,-0.09781445562839508,-0.0385773628950119,-0.0027703605592250824,0.026768198236823082,-0.03669164329767227,0.02027701959013939,-0.0074071153067052364,0.05908098444342613,-0.01985469087958336,0.003975667525082827,0.026086755096912384,0.01815151982009411,-0.06416861712932587,-0.06370942294597626,-0.000595815188717097,0.08855701982975006,-0.01931171491742134,0.05252119526267052,0.04054409638047218,-0.014436068944633007,0.06384892761707306,-0.027137305587530136,0.008217060938477516,0.0022059634793549776,0.05866124853491783,-0.004328733775764704,0.024397658184170723,-0.04576750099658966,-0.09047114849090576,0.007579905446618795,0.09357534348964691,-0.05882519856095314,0.06190042570233345,0.051312386989593506,-0.0290352962911129,0.09877830743789673,-0.05856052041053772,0.006568029057234526,-0.049481652677059174,-0.02793608233332634,0.016179628670215607,-0.01294016931205988,-0.05337013676762581,-0.017763560637831688,0.018318284302949905,-0.025164568796753883,-0.07102907449007034,-0.051840975880622864,-0.08271460980176926,-0.012137280777096748,0.011826427653431892,-0.09991904348134995,-0.0501118041574955,0.1065809354186058,-0.010411630384624004,-0.10244571417570114,3.418246104037039e-33,-0.09974873811006546,-0.028564082458615303,-0.0072223348543047905,0.02553599886596203,0.0076154982671141624,-0.01984667219221592,-0.06695002317428589,-0.006421919446438551,-0.03672897443175316,0.046671681106090546,0.06146644055843353,0.05907298997044563,0.10363759100437164,0.038946159183979034,-0.003113028360530734,0.02060862071812153,0.08486808836460114,-0.05163329467177391,0.03324402868747711,-0.012025052681565285,0.06647207587957382,-0.06872403621673584,-0.020568769425153732,-0.05755647271871567,0.02470565401017666,0.12362420558929443,0.07590768486261368,-0.02632785029709339,0.03537698835134506,0.015069860965013504,-0.019497603178024292,-0.09571786224842072,-0.07784659415483475,0.0071471082046628,-0.09032716602087021,0.01837398298084736,0.021843845024704933,0.07942605763673782,-0.04640638455748558,-0.07724647969007492,-0.0710376426577568,0.01247446145862341,-0.039928287267684937,0.03484963998198509,-0.00810939446091652,-0.021737519651651382,-0.041551850736141205,0.04097172990441322,-0.06579679250717163,-0.00057985819876194,-0.030350839719176292,0.06607013195753098,0.056716930121183395,-0.01444231066852808,-0.08820261061191559,0.07568710297346115,-0.049572743475437164,0.043571628630161285,0.12032952159643173,0.07197815179824829,-0.04597809165716171,-0.0007543807150796056,0.014722677879035473,0.11872830241918564,-0.03099094144999981,-0.04826081171631813,-0.06626967340707779,0.09913166612386703,0.013303464278578758,-0.0891442522406578,-0.008007635362446308,0.021501798182725906,-0.04871875047683716,-0.03298940137028694,0.04915681481361389,0.07495954632759094,0.024604294449090958,-0.034788887947797775,0.04378702491521835,0.018943089991807938,0.03162634000182152,0.022808808833360672,0.025081589818000793,0.03096061199903488,0.020125597715377808,-0.002861819928511977,0.003375211264938116,0.008664755150675774,-0.01168525405228138,-0.07076405733823776,6.949113594600931e-05,0.02929442562162876,-0.045941539108753204,-0.0356358140707016,-0.013447110541164875,-1.1639774477600895e-08,-0.0038555199280381203,-0.0006962883635424078,-0.020182235166430473,0.0024058702401816845,0.07691890001296997,0.02334095537662506,0.08726530522108078,-0.004261218011379242,-0.07040004432201385,0.030403397977352142,0.0311138853430748,0.004726859740912914,-0.06038655713200569,0.06969818472862244,0.04356805607676506,0.02549595572054386,-0.07030776143074036,-0.06392604857683182,-0.00588911073282361,0.05826269090175629,0.07832436263561249,0.029816333204507828,0.04835359752178192,0.012051043100655079,-0.06730470806360245,0.0022326321341097355,0.004913242533802986,-0.04215158522129059,-0.02779913879930973,0.008324249647557735,-0.018111959099769592,0.03209996968507767,0.036988094449043274,0.06142251193523407,-0.1250476837158203,-0.07703983038663864,-0.07750307768583298,-0.008620611391961575,-0.011400938034057617,0.05365649238228798,-0.05456513166427612,0.03658803179860115,-0.025964859873056412,0.04895640164613724,0.06672567874193192,0.019860422238707542,0.02608357183635235,-0.029424499720335007,0.04935729503631592,0.08432749658823013,-0.0650208368897438,0.05082103610038757,0.026151539757847786,-0.09470944106578827,-0.015095925889909267,0.04131830111145973,-0.04847506061196327,-0.030597023665905,-0.07693801075220108,0.06706839799880981,0.06115406006574631,-0.01113430131226778,-0.015445061028003693,0.01863049902021885], 3, efs := 500) RETURN node.id ORDER BY distance;
|
|
49
|
+
-CHECK_ORDER
|
|
50
|
+
---- 3
|
|
51
|
+
1
|
|
52
|
+
2
|
|
53
|
+
3
|
|
54
|
+
-STATEMENT MATCH (n:embeddings) DELETE n;
|
|
55
|
+
---- ok
|
|
56
|
+
-STATEMENT CALL DROP_VECTOR_INDEX('embeddings', 'e_hnsw_index');
|
|
57
|
+
---- ok
|
|
58
|
+
-STATEMENT COPY embeddings FROM "${LBUG_ROOT_DIRECTORY}/dataset/books/books.csv" (deLim=',');
|
|
59
|
+
---- ok
|
|
60
|
+
-STATEMENT CALL CREATE_VECTOR_INDEX('embeddings', 'e_hnsw_index','vec', metric := 'l2');
|
|
61
|
+
---- ok
|
|
62
|
+
-STATEMENT CALL QUERY_VECTOR_INDEX('embeddings', 'e_hnsw_index', [-0.08304853737354279,-0.020585404708981514,-0.0509379617869854,0.03479354456067085,-0.11813158541917801,-0.022585391998291016,0.000689070497173816,-0.0457182414829731,0.011306572705507278,-0.031156159937381744,0.05671192333102226,-0.06878625601530075,-0.02894800342619419,0.039227377623319626,-0.024016229435801506,-0.0060184127651154995,-0.011686223559081554,-0.06417945772409439,-0.08726289123296738,-0.05126213654875755,0.010797262191772461,-0.004546705167740583,0.007328117731958628,0.032176680862903595,0.01062939502298832,0.00931419339030981,0.08034238964319229,-0.005698892287909985,0.06931844353675842,-0.053622953593730927,0.04066690430045128,0.06261418014764786,0.009296705015003681,-0.0278452280908823,0.004991802386939526,0.029851572588086128,0.016903048381209373,-0.019055668264627457,0.055076319724321365,-0.01817430555820465,0.0065304902382195,0.011707567609846592,-0.04950125887989998,0.015748074278235435,0.003966465592384338,0.044103074818849564,0.06040498986840248,0.010776469483971596,-0.05709626525640488,-0.0849628895521164,-0.04497400298714638,0.0257484819740057,-0.009737192653119564,0.026926036924123764,0.08299572765827179,0.03719377890229225,0.07925763726234436,-0.028637854382395744,-0.05194132775068283,-0.10992258042097092,-0.03710110858082771,-0.036725450307130814,-0.0382792092859745,0.05444487929344177,0.19726455211639404,0.020997820422053337,-0.015920456498861313,0.06538067013025284,-0.012968774884939194,0.0062084742821753025,-0.03842930868268013,-0.020584270358085632,-0.01633630506694317,0.03421171382069588,0.08500393480062485,-0.05790746584534645,0.03329910337924957,0.040874168276786804,0.08091091364622116,0.11162357777357101,0.042778026312589645,-0.12173154205083847,-0.020847905427217484,0.06534169614315033,0.02539641782641411,0.016980383545160294,-0.050530806183815,-0.023421572521328926,-0.06318700313568115,-0.0699368268251419,-0.08303093910217285,-0.09778175503015518,-0.007213904522359371,-0.0007251045317389071,-0.006016620434820652,0.024347525089979172,0.05141197517514229,-0.03679395467042923,0.04540250450372696,0.08500988781452179,0.11084067821502686,-0.0005618152790702879,0.0001796935684978962,0.034022748470306396,0.03315793722867966,0.013885930180549622,0.006286488845944405,0.021033186465501785,0.00964267272502184,-0.0015390281332656741,0.006030015181750059,-0.03349592536687851,0.03646736964583397,-0.030008355155587196,-0.018402257934212685,-0.042453039437532425,0.057676076889038086,0.14727634191513062,-0.037098269909620285,-0.01931891217827797,-0.0033551121596246958,0.027810173109173775,-0.002369416644796729,0.08153031021356583,-0.0357547402381897,0.010088938288390636,-0.06867047399282455,-5.1213335435770626e-33,0.04189281910657883,-0.03248955309391022,0.07230716198682785,0.038300685584545135,0.07021919637918472,0.03160807490348816,0.02875838428735733,-0.06413891911506653,-0.0024398057721555233,-0.038075875490903854,-0.0030057954136282206,0.0311278086155653,0.04101073741912842,-0.0005872913170605898,0.05330154299736023,0.031099742278456688,-0.08356330543756485,0.0011608878849074244,0.06657203286886215,0.026241451501846313,-0.0015170741826295853,0.021294495090842247,-0.09065700322389603,-0.003927814774215221,-0.0389481857419014,-0.0040688589215278625,0.07121507078409195,-0.001776993740350008,-0.02950090728700161,0.0022221223916858435,-0.015435175970196724,0.11576541513204575,-0.1070084199309349,-0.025283537805080414,0.01918623596429825,0.026469694450497627,-0.003952694125473499,0.0007155280327424407,-0.04415374621748924,-0.09781445562839508,-0.0385773628950119,-0.0027703605592250824,0.026768198236823082,-0.03669164329767227,0.02027701959013939,-0.0074071153067052364,0.05908098444342613,-0.01985469087958336,0.003975667525082827,0.026086755096912384,0.01815151982009411,-0.06416861712932587,-0.06370942294597626,-0.000595815188717097,0.08855701982975006,-0.01931171491742134,0.05252119526267052,0.04054409638047218,-0.014436068944633007,0.06384892761707306,-0.027137305587530136,0.008217060938477516,0.0022059634793549776,0.05866124853491783,-0.004328733775764704,0.024397658184170723,-0.04576750099658966,-0.09047114849090576,0.007579905446618795,0.09357534348964691,-0.05882519856095314,0.06190042570233345,0.051312386989593506,-0.0290352962911129,0.09877830743789673,-0.05856052041053772,0.006568029057234526,-0.049481652677059174,-0.02793608233332634,0.016179628670215607,-0.01294016931205988,-0.05337013676762581,-0.017763560637831688,0.018318284302949905,-0.025164568796753883,-0.07102907449007034,-0.051840975880622864,-0.08271460980176926,-0.012137280777096748,0.011826427653431892,-0.09991904348134995,-0.0501118041574955,0.1065809354186058,-0.010411630384624004,-0.10244571417570114,3.418246104037039e-33,-0.09974873811006546,-0.028564082458615303,-0.0072223348543047905,0.02553599886596203,0.0076154982671141624,-0.01984667219221592,-0.06695002317428589,-0.006421919446438551,-0.03672897443175316,0.046671681106090546,0.06146644055843353,0.05907298997044563,0.10363759100437164,0.038946159183979034,-0.003113028360530734,0.02060862071812153,0.08486808836460114,-0.05163329467177391,0.03324402868747711,-0.012025052681565285,0.06647207587957382,-0.06872403621673584,-0.020568769425153732,-0.05755647271871567,0.02470565401017666,0.12362420558929443,0.07590768486261368,-0.02632785029709339,0.03537698835134506,0.015069860965013504,-0.019497603178024292,-0.09571786224842072,-0.07784659415483475,0.0071471082046628,-0.09032716602087021,0.01837398298084736,0.021843845024704933,0.07942605763673782,-0.04640638455748558,-0.07724647969007492,-0.0710376426577568,0.01247446145862341,-0.039928287267684937,0.03484963998198509,-0.00810939446091652,-0.021737519651651382,-0.041551850736141205,0.04097172990441322,-0.06579679250717163,-0.00057985819876194,-0.030350839719176292,0.06607013195753098,0.056716930121183395,-0.01444231066852808,-0.08820261061191559,0.07568710297346115,-0.049572743475437164,0.043571628630161285,0.12032952159643173,0.07197815179824829,-0.04597809165716171,-0.0007543807150796056,0.014722677879035473,0.11872830241918564,-0.03099094144999981,-0.04826081171631813,-0.06626967340707779,0.09913166612386703,0.013303464278578758,-0.0891442522406578,-0.008007635362446308,0.021501798182725906,-0.04871875047683716,-0.03298940137028694,0.04915681481361389,0.07495954632759094,0.024604294449090958,-0.034788887947797775,0.04378702491521835,0.018943089991807938,0.03162634000182152,0.022808808833360672,0.025081589818000793,0.03096061199903488,0.020125597715377808,-0.002861819928511977,0.003375211264938116,0.008664755150675774,-0.01168525405228138,-0.07076405733823776,6.949113594600931e-05,0.02929442562162876,-0.045941539108753204,-0.0356358140707016,-0.013447110541164875,-1.1639774477600895e-08,-0.0038555199280381203,-0.0006962883635424078,-0.020182235166430473,0.0024058702401816845,0.07691890001296997,0.02334095537662506,0.08726530522108078,-0.004261218011379242,-0.07040004432201385,0.030403397977352142,0.0311138853430748,0.004726859740912914,-0.06038655713200569,0.06969818472862244,0.04356805607676506,0.02549595572054386,-0.07030776143074036,-0.06392604857683182,-0.00588911073282361,0.05826269090175629,0.07832436263561249,0.029816333204507828,0.04835359752178192,0.012051043100655079,-0.06730470806360245,0.0022326321341097355,0.004913242533802986,-0.04215158522129059,-0.02779913879930973,0.008324249647557735,-0.018111959099769592,0.03209996968507767,0.036988094449043274,0.06142251193523407,-0.1250476837158203,-0.07703983038663864,-0.07750307768583298,-0.008620611391961575,-0.011400938034057617,0.05365649238228798,-0.05456513166427612,0.03658803179860115,-0.025964859873056412,0.04895640164613724,0.06672567874193192,0.019860422238707542,0.02608357183635235,-0.029424499720335007,0.04935729503631592,0.08432749658823013,-0.0650208368897438,0.05082103610038757,0.026151539757847786,-0.09470944106578827,-0.015095925889909267,0.04131830111145973,-0.04847506061196327,-0.030597023665905,-0.07693801075220108,0.06706839799880981,0.06115406006574631,-0.01113430131226778,-0.015445061028003693,0.01863049902021885], 3, efs := 500) RETURN node.id ORDER BY distance;
|
|
63
|
+
-CHECK_ORDER
|
|
64
|
+
---- 3
|
|
65
|
+
1
|
|
66
|
+
2
|
|
67
|
+
3
|
|
68
|
+
|
|
69
|
+
-CASE IndexThenUpdate
|
|
70
|
+
-LOAD_DYNAMIC_EXTENSION vector
|
|
71
|
+
-STATEMENT CREATE NODE TABLE embeddings(id INT64 PRIMARY KEY, title STRING, published_year INT64, vec FLOAT[384]);
|
|
72
|
+
---- ok
|
|
73
|
+
-STATEMENT CALL threads=1;
|
|
74
|
+
---- ok
|
|
75
|
+
-STATEMENT CALL CREATE_VECTOR_INDEX('embeddings', 'e_hnsw_index','vec', metric := 'l2');
|
|
76
|
+
---- ok
|
|
77
|
+
-STATEMENT COPY embeddings FROM "${LBUG_ROOT_DIRECTORY}/dataset/books/books.csv" (deLim=',');
|
|
78
|
+
---- ok
|
|
79
|
+
-STATEMENT CALL QUERY_VECTOR_INDEX('embeddings', 'e_hnsw_index', [-0.08304853737354279,-0.020585404708981514,-0.0509379617869854,0.03479354456067085,-0.11813158541917801,-0.022585391998291016,0.000689070497173816,-0.0457182414829731,0.011306572705507278,-0.031156159937381744,0.05671192333102226,-0.06878625601530075,-0.02894800342619419,0.039227377623319626,-0.024016229435801506,-0.0060184127651154995,-0.011686223559081554,-0.06417945772409439,-0.08726289123296738,-0.05126213654875755,0.010797262191772461,-0.004546705167740583,0.007328117731958628,0.032176680862903595,0.01062939502298832,0.00931419339030981,0.08034238964319229,-0.005698892287909985,0.06931844353675842,-0.053622953593730927,0.04066690430045128,0.06261418014764786,0.009296705015003681,-0.0278452280908823,0.004991802386939526,0.029851572588086128,0.016903048381209373,-0.019055668264627457,0.055076319724321365,-0.01817430555820465,0.0065304902382195,0.011707567609846592,-0.04950125887989998,0.015748074278235435,0.003966465592384338,0.044103074818849564,0.06040498986840248,0.010776469483971596,-0.05709626525640488,-0.0849628895521164,-0.04497400298714638,0.0257484819740057,-0.009737192653119564,0.026926036924123764,0.08299572765827179,0.03719377890229225,0.07925763726234436,-0.028637854382395744,-0.05194132775068283,-0.10992258042097092,-0.03710110858082771,-0.036725450307130814,-0.0382792092859745,0.05444487929344177,0.19726455211639404,0.020997820422053337,-0.015920456498861313,0.06538067013025284,-0.012968774884939194,0.0062084742821753025,-0.03842930868268013,-0.020584270358085632,-0.01633630506694317,0.03421171382069588,0.08500393480062485,-0.05790746584534645,0.03329910337924957,0.040874168276786804,0.08091091364622116,0.11162357777357101,0.042778026312589645,-0.12173154205083847,-0.020847905427217484,0.06534169614315033,0.02539641782641411,0.016980383545160294,-0.050530806183815,-0.023421572521328926,-0.06318700313568115,-0.0699368268251419,-0.08303093910217285,-0.09778175503015518,-0.007213904522359371,-0.0007251045317389071,-0.006016620434820652,0.024347525089979172,0.05141197517514229,-0.03679395467042923,0.04540250450372696,0.08500988781452179,0.11084067821502686,-0.0005618152790702879,0.0001796935684978962,0.034022748470306396,0.03315793722867966,0.013885930180549622,0.006286488845944405,0.021033186465501785,0.00964267272502184,-0.0015390281332656741,0.006030015181750059,-0.03349592536687851,0.03646736964583397,-0.030008355155587196,-0.018402257934212685,-0.042453039437532425,0.057676076889038086,0.14727634191513062,-0.037098269909620285,-0.01931891217827797,-0.0033551121596246958,0.027810173109173775,-0.002369416644796729,0.08153031021356583,-0.0357547402381897,0.010088938288390636,-0.06867047399282455,-5.1213335435770626e-33,0.04189281910657883,-0.03248955309391022,0.07230716198682785,0.038300685584545135,0.07021919637918472,0.03160807490348816,0.02875838428735733,-0.06413891911506653,-0.0024398057721555233,-0.038075875490903854,-0.0030057954136282206,0.0311278086155653,0.04101073741912842,-0.0005872913170605898,0.05330154299736023,0.031099742278456688,-0.08356330543756485,0.0011608878849074244,0.06657203286886215,0.026241451501846313,-0.0015170741826295853,0.021294495090842247,-0.09065700322389603,-0.003927814774215221,-0.0389481857419014,-0.0040688589215278625,0.07121507078409195,-0.001776993740350008,-0.02950090728700161,0.0022221223916858435,-0.015435175970196724,0.11576541513204575,-0.1070084199309349,-0.025283537805080414,0.01918623596429825,0.026469694450497627,-0.003952694125473499,0.0007155280327424407,-0.04415374621748924,-0.09781445562839508,-0.0385773628950119,-0.0027703605592250824,0.026768198236823082,-0.03669164329767227,0.02027701959013939,-0.0074071153067052364,0.05908098444342613,-0.01985469087958336,0.003975667525082827,0.026086755096912384,0.01815151982009411,-0.06416861712932587,-0.06370942294597626,-0.000595815188717097,0.08855701982975006,-0.01931171491742134,0.05252119526267052,0.04054409638047218,-0.014436068944633007,0.06384892761707306,-0.027137305587530136,0.008217060938477516,0.0022059634793549776,0.05866124853491783,-0.004328733775764704,0.024397658184170723,-0.04576750099658966,-0.09047114849090576,0.007579905446618795,0.09357534348964691,-0.05882519856095314,0.06190042570233345,0.051312386989593506,-0.0290352962911129,0.09877830743789673,-0.05856052041053772,0.006568029057234526,-0.049481652677059174,-0.02793608233332634,0.016179628670215607,-0.01294016931205988,-0.05337013676762581,-0.017763560637831688,0.018318284302949905,-0.025164568796753883,-0.07102907449007034,-0.051840975880622864,-0.08271460980176926,-0.012137280777096748,0.011826427653431892,-0.09991904348134995,-0.0501118041574955,0.1065809354186058,-0.010411630384624004,-0.10244571417570114,3.418246104037039e-33,-0.09974873811006546,-0.028564082458615303,-0.0072223348543047905,0.02553599886596203,0.0076154982671141624,-0.01984667219221592,-0.06695002317428589,-0.006421919446438551,-0.03672897443175316,0.046671681106090546,0.06146644055843353,0.05907298997044563,0.10363759100437164,0.038946159183979034,-0.003113028360530734,0.02060862071812153,0.08486808836460114,-0.05163329467177391,0.03324402868747711,-0.012025052681565285,0.06647207587957382,-0.06872403621673584,-0.020568769425153732,-0.05755647271871567,0.02470565401017666,0.12362420558929443,0.07590768486261368,-0.02632785029709339,0.03537698835134506,0.015069860965013504,-0.019497603178024292,-0.09571786224842072,-0.07784659415483475,0.0071471082046628,-0.09032716602087021,0.01837398298084736,0.021843845024704933,0.07942605763673782,-0.04640638455748558,-0.07724647969007492,-0.0710376426577568,0.01247446145862341,-0.039928287267684937,0.03484963998198509,-0.00810939446091652,-0.021737519651651382,-0.041551850736141205,0.04097172990441322,-0.06579679250717163,-0.00057985819876194,-0.030350839719176292,0.06607013195753098,0.056716930121183395,-0.01444231066852808,-0.08820261061191559,0.07568710297346115,-0.049572743475437164,0.043571628630161285,0.12032952159643173,0.07197815179824829,-0.04597809165716171,-0.0007543807150796056,0.014722677879035473,0.11872830241918564,-0.03099094144999981,-0.04826081171631813,-0.06626967340707779,0.09913166612386703,0.013303464278578758,-0.0891442522406578,-0.008007635362446308,0.021501798182725906,-0.04871875047683716,-0.03298940137028694,0.04915681481361389,0.07495954632759094,0.024604294449090958,-0.034788887947797775,0.04378702491521835,0.018943089991807938,0.03162634000182152,0.022808808833360672,0.025081589818000793,0.03096061199903488,0.020125597715377808,-0.002861819928511977,0.003375211264938116,0.008664755150675774,-0.01168525405228138,-0.07076405733823776,6.949113594600931e-05,0.02929442562162876,-0.045941539108753204,-0.0356358140707016,-0.013447110541164875,-1.1639774477600895e-08,-0.0038555199280381203,-0.0006962883635424078,-0.020182235166430473,0.0024058702401816845,0.07691890001296997,0.02334095537662506,0.08726530522108078,-0.004261218011379242,-0.07040004432201385,0.030403397977352142,0.0311138853430748,0.004726859740912914,-0.06038655713200569,0.06969818472862244,0.04356805607676506,0.02549595572054386,-0.07030776143074036,-0.06392604857683182,-0.00588911073282361,0.05826269090175629,0.07832436263561249,0.029816333204507828,0.04835359752178192,0.012051043100655079,-0.06730470806360245,0.0022326321341097355,0.004913242533802986,-0.04215158522129059,-0.02779913879930973,0.008324249647557735,-0.018111959099769592,0.03209996968507767,0.036988094449043274,0.06142251193523407,-0.1250476837158203,-0.07703983038663864,-0.07750307768583298,-0.008620611391961575,-0.011400938034057617,0.05365649238228798,-0.05456513166427612,0.03658803179860115,-0.025964859873056412,0.04895640164613724,0.06672567874193192,0.019860422238707542,0.02608357183635235,-0.029424499720335007,0.04935729503631592,0.08432749658823013,-0.0650208368897438,0.05082103610038757,0.026151539757847786,-0.09470944106578827,-0.015095925889909267,0.04131830111145973,-0.04847506061196327,-0.030597023665905,-0.07693801075220108,0.06706839799880981,0.06115406006574631,-0.01113430131226778,-0.015445061028003693,0.01863049902021885], 3, efs := 500) RETURN node.id ORDER BY distance;
|
|
80
|
+
-CHECK_ORDER
|
|
81
|
+
---- 3
|
|
82
|
+
1
|
|
83
|
+
2
|
|
84
|
+
3
|
|
@@ -10,9 +10,6 @@ from setuptools.command.build_py import build_py as _build_py
|
|
|
10
10
|
|
|
11
11
|
base_dir = os.path.dirname(__file__)
|
|
12
12
|
|
|
13
|
-
with open(os.path.join(base_dir, 'real_ladybug-source', 'tools', 'python_api', 'requirements_dev.txt')) as f:
|
|
14
|
-
requirements = f.read().splitlines()
|
|
15
|
-
|
|
16
13
|
|
|
17
14
|
def _get_lbug_version():
|
|
18
15
|
cmake_file = os.path.join(base_dir, 'real_ladybug-source', 'CMakeLists.txt')
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
PYPI_URL = "https://pypi.org/pypi/real_ladybug/json"
|
|
2
|
+
TEST_PYPI_URL = "https://test.pypi.org/pypi/real_ladybug/json"
|
|
2
3
|
CMAKE_KEYWORD = "project(Lbug VERSION "
|
|
3
4
|
CMAKE_SUFFIX = " LANGUAGES CXX C)\n"
|
|
4
5
|
EXTENSION_KEYWORD = 'add_definitions(-DLBUG_EXTENSION_VERSION="'
|
|
@@ -16,6 +17,8 @@ def main():
|
|
|
16
17
|
from packaging.version import Version
|
|
17
18
|
except ImportError:
|
|
18
19
|
from distutils.version import LooseVersion as Version
|
|
20
|
+
|
|
21
|
+
# Fetch releases from production PyPI
|
|
19
22
|
try:
|
|
20
23
|
with urllib.request.urlopen(PYPI_URL) as url:
|
|
21
24
|
data = json.loads(url.read().decode())
|
|
@@ -25,6 +28,18 @@ def main():
|
|
|
25
28
|
else:
|
|
26
29
|
raise
|
|
27
30
|
releases = data["releases"]
|
|
31
|
+
|
|
32
|
+
# Fetch releases from test PyPI for dev versions
|
|
33
|
+
try:
|
|
34
|
+
with urllib.request.urlopen(TEST_PYPI_URL) as url:
|
|
35
|
+
test_data = json.loads(url.read().decode())
|
|
36
|
+
# Merge test.pypi.org releases into releases dict
|
|
37
|
+
releases.update(test_data["releases"])
|
|
38
|
+
except urllib.error.HTTPError as e:
|
|
39
|
+
if e.code == 404:
|
|
40
|
+
pass # No releases on test PyPI
|
|
41
|
+
else:
|
|
42
|
+
raise
|
|
28
43
|
versions = list(releases.keys())
|
|
29
44
|
versions.sort(key=Version)
|
|
30
45
|
dev_versions = [v for v in versions if "dev" in v]
|
|
@@ -42,7 +42,7 @@ target_link_libraries(lbug PUBLIC ${LBUG_LIBRARIES})
|
|
|
42
42
|
target_link_libraries(lbug_shared PUBLIC ${LBUG_LIBRARIES})
|
|
43
43
|
unset(LBUG_LIBRARIES)
|
|
44
44
|
|
|
45
|
-
set(LBUG_INCLUDES $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include> $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}> ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include/c_api)
|
|
45
|
+
set(LBUG_INCLUDES $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include> $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}> ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include/c_api ${CMAKE_CURRENT_BINARY_DIR}/../src/include)
|
|
46
46
|
target_include_directories(lbug PUBLIC ${LBUG_INCLUDES})
|
|
47
47
|
target_include_directories(lbug_shared PUBLIC ${LBUG_INCLUDES})
|
|
48
48
|
unset(LBUG_INCLUDES)
|
|
@@ -732,14 +732,17 @@ lbug_state lbug_value_get_string(lbug_value* value, char** out_result) {
|
|
|
732
732
|
return LbugSuccess;
|
|
733
733
|
}
|
|
734
734
|
|
|
735
|
-
lbug_state lbug_value_get_blob(lbug_value* value, uint8_t** out_result) {
|
|
735
|
+
lbug_state lbug_value_get_blob(lbug_value* value, uint8_t** out_result, uint64_t* out_length) {
|
|
736
736
|
auto logical_type_id = static_cast<Value*>(value->_value)->getDataType().getLogicalTypeID();
|
|
737
737
|
if (logical_type_id != LogicalTypeID::BLOB) {
|
|
738
738
|
return LbugError;
|
|
739
739
|
}
|
|
740
740
|
try {
|
|
741
741
|
auto blob = static_cast<Value*>(value->_value)->getValue<std::string>();
|
|
742
|
-
*
|
|
742
|
+
*out_length = blob.size();
|
|
743
|
+
auto* buffer = (uint8_t*)malloc(sizeof(uint8_t) * blob.size());
|
|
744
|
+
memcpy(buffer, blob.data(), blob.size());
|
|
745
|
+
*out_result = buffer;
|
|
743
746
|
} catch (Exception& e) {
|
|
744
747
|
return LbugError;
|
|
745
748
|
}
|
|
@@ -1299,13 +1299,15 @@ LBUG_C_API lbug_state lbug_value_get_decimal_as_string(lbug_value* value, char**
|
|
|
1299
1299
|
*/
|
|
1300
1300
|
LBUG_C_API lbug_state lbug_value_get_string(lbug_value* value, char** out_result);
|
|
1301
1301
|
/**
|
|
1302
|
-
* @brief Returns the blob value of the given value. The
|
|
1303
|
-
* to a string. The value must be of type BLOB.
|
|
1302
|
+
* @brief Returns the blob value of the given value. The value must be of type BLOB.
|
|
1304
1303
|
* @param value The value to return.
|
|
1305
1304
|
* @param[out] out_result The output parameter that will hold the blob value.
|
|
1305
|
+
* @param[out] out_length The output parameter that will hold the length of the blob.
|
|
1306
1306
|
* @return The state indicating the success or failure of the operation.
|
|
1307
|
+
* @note The caller is responsible for freeing the returned memory using `lbug_destroy_blob`.
|
|
1307
1308
|
*/
|
|
1308
|
-
LBUG_C_API lbug_state lbug_value_get_blob(lbug_value* value, uint8_t** out_result
|
|
1309
|
+
LBUG_C_API lbug_state lbug_value_get_blob(lbug_value* value, uint8_t** out_result,
|
|
1310
|
+
uint64_t* out_length);
|
|
1309
1311
|
/**
|
|
1310
1312
|
* @brief Returns the uuid value of the given value.
|
|
1311
1313
|
* to a string. The value must be of type UUID.
|
|
@@ -1764,19 +1764,20 @@ TEST_F(CApiValueTest, GetBlob) {
|
|
|
1764
1764
|
ASSERT_TRUE(value._is_owned_by_cpp);
|
|
1765
1765
|
ASSERT_FALSE(lbug_value_is_null(&value));
|
|
1766
1766
|
uint8_t* blob;
|
|
1767
|
-
|
|
1767
|
+
uint64_t length;
|
|
1768
|
+
ASSERT_EQ(lbug_value_get_blob(&value, &blob, &length), LbugSuccess);
|
|
1769
|
+
ASSERT_EQ(length, 4);
|
|
1768
1770
|
ASSERT_EQ(blob[0], 0xAA);
|
|
1769
1771
|
ASSERT_EQ(blob[1], 0xBB);
|
|
1770
1772
|
ASSERT_EQ(blob[2], 0xCD);
|
|
1771
1773
|
ASSERT_EQ(blob[3], 0x1A);
|
|
1772
|
-
ASSERT_EQ(blob[4], 0x00);
|
|
1773
1774
|
lbug_destroy_blob(blob);
|
|
1774
1775
|
lbug_value_destroy(&value);
|
|
1775
1776
|
lbug_flat_tuple_destroy(&flatTuple);
|
|
1776
1777
|
lbug_query_result_destroy(&result);
|
|
1777
1778
|
|
|
1778
1779
|
lbug_value* badValue = lbug_value_create_string((char*)"abcdefg");
|
|
1779
|
-
ASSERT_EQ(lbug_value_get_blob(badValue, &blob), LbugError);
|
|
1780
|
+
ASSERT_EQ(lbug_value_get_blob(badValue, &blob, &length), LbugError);
|
|
1780
1781
|
lbug_value_destroy(badValue);
|
|
1781
1782
|
}
|
|
1782
1783
|
|
|
@@ -16,7 +16,6 @@ Binder exception: The extension sqlitescanner is neither an official extension,
|
|
|
16
16
|
Binder exception: The extension /tmp/iceberg is neither an official extension, nor does the extension path: '/tmp/iceberg' exists.
|
|
17
17
|
|
|
18
18
|
-CASE LoadNotInstalledExtension
|
|
19
|
-
-SKIP
|
|
20
19
|
-SKIP_IN_MEM
|
|
21
20
|
-SKIP_WASM
|
|
22
21
|
-STATEMENT INSTALL HTTPFS;
|
|
@@ -29,7 +28,6 @@ Binder exception: Extension: httpfs is an official extension and has not been in
|
|
|
29
28
|
You can install it by: install httpfs.
|
|
30
29
|
|
|
31
30
|
-CASE UninstallExtensionError
|
|
32
|
-
-SKIP
|
|
33
31
|
-SKIP_IN_MEM
|
|
34
32
|
-SKIP_WASM
|
|
35
33
|
-STATEMENT INSTALL fts;
|
|
@@ -50,7 +48,6 @@ Binder exception: The extension XXX is not an official extension.
|
|
|
50
48
|
Only official extensions can be uninstalled.
|
|
51
49
|
|
|
52
50
|
-CASE ForceInstallExtension
|
|
53
|
-
-SKIP
|
|
54
51
|
-SKIP_IN_MEM
|
|
55
52
|
-SKIP_WASM
|
|
56
53
|
-STATEMENT INSTALL neo4j;
|
|
@@ -18,7 +18,7 @@ npm install lbug
|
|
|
18
18
|
### Example (ES Modules)
|
|
19
19
|
|
|
20
20
|
```js
|
|
21
|
-
// Import the
|
|
21
|
+
// Import the Ladybug module (ESM)
|
|
22
22
|
import { Database, Connection } from "lbug";
|
|
23
23
|
|
|
24
24
|
const main = async () => {
|
|
@@ -146,4 +146,4 @@ Refer to the [npm documentation](https://docs.npmjs.com/cli/v9/commands/npm-publ
|
|
|
146
146
|
|
|
147
147
|
* [Ladybug GitHub](https://github.com/lbugdb/lbug)
|
|
148
148
|
* [Ladybug Documentation](https://docs.ladybugdb.com)
|
|
149
|
-
* [Issue Tracker](https://github.com/
|
|
149
|
+
* [Issue Tracker](https://github.com/LadybugDB/ladybug/issues)
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"homepage": "https://ladybugdb.com/",
|
|
17
17
|
"repository": {
|
|
18
18
|
"type": "git",
|
|
19
|
-
"url": "https://github.com/
|
|
19
|
+
"url": "https://github.com/LadybugDB/ladybug"
|
|
20
20
|
},
|
|
21
21
|
"scripts": {
|
|
22
22
|
"test": "mocha test --timeout 20000",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"clean-all": "node clean.js all",
|
|
25
25
|
"build": "node build.js"
|
|
26
26
|
},
|
|
27
|
-
"author": "
|
|
27
|
+
"author": "Ladybug Team",
|
|
28
28
|
"license": "MIT",
|
|
29
29
|
"devDependencies": {
|
|
30
30
|
"chai": "^4.4.1",
|
|
@@ -17,11 +17,11 @@ else
|
|
|
17
17
|
endif
|
|
18
18
|
|
|
19
19
|
.venv: ## Set up a Python virtual environment and install dev packages
|
|
20
|
-
|
|
20
|
+
uv venv $(VENV)
|
|
21
21
|
|
|
22
22
|
requirements: .venv ## Install/update Python dev packages
|
|
23
23
|
@unset CONDA_PREFIX \
|
|
24
|
-
&&
|
|
24
|
+
&& uv pip install -e .[dev]
|
|
25
25
|
|
|
26
26
|
pytest: requirements
|
|
27
27
|
ifeq ($(OS),Windows_NT)
|
|
@@ -12,6 +12,41 @@ Documentation = "https://docs.ladybugdb.com/"
|
|
|
12
12
|
Repository = "https://github.com/lbugdb/lbug"
|
|
13
13
|
Changelog = "https://github.com/LadybugDB/ladybug/releases"
|
|
14
14
|
|
|
15
|
+
[project.optional-dependencies]
|
|
16
|
+
dev = [
|
|
17
|
+
"networkx~=3.0",
|
|
18
|
+
"numpy~=2.0",
|
|
19
|
+
"pandas~=2.2",
|
|
20
|
+
"polars~=1.30",
|
|
21
|
+
"pyarrow~=20.0",
|
|
22
|
+
"pybind11~=2.13",
|
|
23
|
+
"pytest",
|
|
24
|
+
"pytest-asyncio~=1.0",
|
|
25
|
+
"setuptools~=80.9",
|
|
26
|
+
"ruff==0.11.12",
|
|
27
|
+
"mypy==1.16.0",
|
|
28
|
+
"torch>=2.5.0",
|
|
29
|
+
"torch-geometric>=2.5.0",
|
|
30
|
+
]
|
|
31
|
+
|
|
32
|
+
[[tool.uv.index]]
|
|
33
|
+
name = "pypi"
|
|
34
|
+
url = "https://pypi.org/simple"
|
|
35
|
+
|
|
36
|
+
[[tool.uv.index]]
|
|
37
|
+
name = "pytorch-cpu"
|
|
38
|
+
url = "https://download.pytorch.org/whl/cpu"
|
|
39
|
+
|
|
40
|
+
[[tool.uv.index]]
|
|
41
|
+
name = "torch-geometric"
|
|
42
|
+
url = "https://data.pyg.org/whl/torch-2.5.0+cpu/"
|
|
43
|
+
|
|
44
|
+
[tool.uv.sources]
|
|
45
|
+
torch = { index = "pytorch-cpu" }
|
|
46
|
+
|
|
47
|
+
[tool.uv]
|
|
48
|
+
index-strategy = "unsafe-best-match"
|
|
49
|
+
|
|
15
50
|
[tool.mypy]
|
|
16
51
|
files = ["src_py", "test"]
|
|
17
52
|
strict = true
|
|
@@ -92,6 +127,7 @@ strict = true
|
|
|
92
127
|
docstring-code-format = true
|
|
93
128
|
|
|
94
129
|
[tool.setuptools.packages.find]
|
|
130
|
+
where = ["src_py", "build"]
|
|
95
131
|
exclude = ["src_cpp*"]
|
|
96
132
|
|
|
97
133
|
[build-system]
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lbug",
|
|
3
|
-
"version": "0.12.
|
|
3
|
+
"version": "0.12.3-dev.1",
|
|
4
4
|
"description": "An in-process property graph database management system built for query speed and scalability.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"module": "./index.mjs",
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"homepage": "https://ladybugdb.com/",
|
|
17
17
|
"repository": {
|
|
18
18
|
"type": "git",
|
|
19
|
-
"url": "https://github.com/
|
|
19
|
+
"url": "https://github.com/LadybugDB/ladybug"
|
|
20
20
|
},
|
|
21
21
|
"scripts": {
|
|
22
22
|
"test": "mocha test --timeout 20000",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"build": "node build.js",
|
|
26
26
|
"install": "node install.js"
|
|
27
27
|
},
|
|
28
|
-
"author": "
|
|
28
|
+
"author": "Ladybug Team",
|
|
29
29
|
"license": "MIT",
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"chai": "^4.4.1",
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|