From 5a5e7278110a8cd442d7957831da0cd6790017cf Mon Sep 17 00:00:00 2001 From: leolin49 Date: Sat, 2 Jul 2022 15:30:00 +0800 Subject: [PATCH 1/6] Create "make.bat" in windows for golang maker MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 新增golang maker在windows下的编译文件 --- maker/golang/make.bat | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 maker/golang/make.bat diff --git a/maker/golang/make.bat b/maker/golang/make.bat new file mode 100644 index 0000000..28ae394 --- /dev/null +++ b/maker/golang/make.bat @@ -0,0 +1,18 @@ +::ip2region golang maker makefile in windows +@echo off + +if [%1] == [] goto:build + +if %1==clean ( + call:clean +) else if %1==build ( + call:build +) +exit /b 0 + +:build +go build -o xdb_maker.exe +exit /b 0 + +:clean +del/f/s/q xdb_maker.exe From e09c9b57b93c14132722d7a971e53e44efaa5608 Mon Sep 17 00:00:00 2001 From: Lion Date: Sat, 2 Jul 2022 18:07:17 +0800 Subject: [PATCH 2/6] update the docs for vectorIndex/content buffer type and resource close --- binding/c/ReadMe.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/binding/c/ReadMe.md b/binding/c/ReadMe.md index 0fb5117..591f905 100644 --- a/binding/c/ReadMe.md +++ b/binding/c/ReadMe.md @@ -49,7 +49,7 @@ int main(int argc, char *argv[]) { int main(int argc, char *argv[]) { char *db_path = "ip2region.xdb file path"; - char *v_index; + xdb_vector_index_t *v_index; xdb_searcher_t searcher; char region_buffer[256], ip_buffer[16], *ip = "1.2.3.4"; long s_time; @@ -84,7 +84,7 @@ int main(int argc, char *argv[]) { // 4、关闭 xdb 查询器,如果是要关闭服务,也需要释放 v_index 的内存。 xdb_close(&searcher); - xdb_free(v_index); + xdb_close_vector_index(v_index); return 0; } ``` @@ -98,7 +98,7 @@ int main(int argc, char *argv[]) { int main(int argc, char *argv[]) { char *db_path = "ip2region.xdb file path"; - char *c_buffer; + xdb_content_t *c_buffer; xdb_searcher_t searcher; char region_buffer[256], ip_buffer[16], *ip = "1.2.3.4"; long s_time; @@ -132,7 +132,7 @@ int main(int argc, char *argv[]) { // 4、关闭 xdb 查询器,关闭服务的时候需要释放 c_buffer 的内存。 xdb_close(&searcher); - xdb_free(c_buffer); + xdb_close_content(c_buffer); return 0; } ``` From 14fc2c5de37d1a4cb131b3dbee126b94b40df92a Mon Sep 17 00:00:00 2001 From: Lion Date: Sat, 2 Jul 2022 18:15:54 +0800 Subject: [PATCH 3/6] keep the original byte for self-define header --- .../java/src/main/java/org/lionsoul/ip2region/xdb/Header.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/binding/java/src/main/java/org/lionsoul/ip2region/xdb/Header.java b/binding/java/src/main/java/org/lionsoul/ip2region/xdb/Header.java index 8239639..8ff0680 100644 --- a/binding/java/src/main/java/org/lionsoul/ip2region/xdb/Header.java +++ b/binding/java/src/main/java/org/lionsoul/ip2region/xdb/Header.java @@ -15,6 +15,7 @@ public class Header { public final int createdAt; public final int startIndexPtr; public final int endIndexPtr; + public final byte[] buffer; public Header(byte[] buff) { assert buff.length >= 16; @@ -23,6 +24,7 @@ public class Header { createdAt = Searcher.getInt(buff, 4); startIndexPtr = Searcher.getInt(buff, 8); endIndexPtr = Searcher.getInt(buff, 12); + buffer = buff; } @Override public String toString() { From 100493ec11ccbed075f150160a03a44d9c228793 Mon Sep 17 00:00:00 2001 From: Lion Date: Sat, 2 Jul 2022 18:25:13 +0800 Subject: [PATCH 4/6] update the version number to 2.6.3 --- binding/java/ReadMe.md | 2 +- binding/java/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/binding/java/ReadMe.md b/binding/java/ReadMe.md index 35dc7e8..c59526c 100644 --- a/binding/java/ReadMe.md +++ b/binding/java/ReadMe.md @@ -7,7 +7,7 @@ org.lionsoul ip2region - 2.6.2 + 2.6.3 ``` diff --git a/binding/java/pom.xml b/binding/java/pom.xml index 60b69b5..5df4def 100644 --- a/binding/java/pom.xml +++ b/binding/java/pom.xml @@ -4,7 +4,7 @@ org.lionsoul ip2region - 2.6.2 + 2.6.3 jar ip2region From 4b19c716ff51b214c8a390fd23c4921f325544ba Mon Sep 17 00:00:00 2001 From: Lion Date: Mon, 4 Jul 2022 10:36:00 +0800 Subject: [PATCH 5/6] lua_c xdb searcher is ready --- ReadMe.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ReadMe.md b/ReadMe.md index dfac983..79a5f57 100644 --- a/ReadMe.md +++ b/ReadMe.md @@ -39,7 +39,7 @@ API 介绍,使用文档和测试程序请参考对应 `searcher` 查询客户 | [java](binding/java) | java 查询客户端实现 | 已完成 | [Lion](https://github.com/lionsoul2014) | | [lua](binding/lua) | lua 查询客户端实现 | 开发中... | [Lion](https://github.com/lionsoul2014) | | [c](binding/c) | ANSC c 查询客户端实现 | 已完成 | [Lion](https://github.com/lionsoul2014) | -| [lua_c](binding/lua_c) | lua 查询客户端实现 | 开发中... | [Lion](https://github.com/lionsoul2014) | +| [lua_c](binding/lua_c) | lua 查询客户端实现 | 已完成 | [Lion](https://github.com/lionsoul2014) | | [rust](binding/rust) | rust 查询客户端实现 | 开发中... | [Lion](https://github.com/lionsoul2014) | | [python](binding/python) | python 查询客户端实现 | 待开始 | 待确定 | | [nodejs](binding/nodejs) | nodejs 查询客户端实现 | 待开始 | 待确定 | From e58757ada5ed2084a48ef21714eb96575d955e36 Mon Sep 17 00:00:00 2001 From: Lion Date: Tue, 5 Jul 2022 13:47:47 +0800 Subject: [PATCH 6/6] require the local xdb_searcher.so and fix the bug for err check and print --- binding/lua_c/bench_test.lua | 3 +++ binding/lua_c/search_test.lua | 3 +++ binding/lua_c/util_test.lua | 9 ++++++--- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/binding/lua_c/bench_test.lua b/binding/lua_c/bench_test.lua index b43391b..7ab41b7 100644 --- a/binding/lua_c/bench_test.lua +++ b/binding/lua_c/bench_test.lua @@ -6,6 +6,9 @@ -- @Author Lion -- @Date 2022/06/30 +-- set the package to load the current xdb_searcher.so +package.path = "./?.lua" .. package.path +package.cpath = "./?.so" .. package.cpath local xdb = require("xdb_searcher") function printHelp() diff --git a/binding/lua_c/search_test.lua b/binding/lua_c/search_test.lua index 4e65a39..62245be 100644 --- a/binding/lua_c/search_test.lua +++ b/binding/lua_c/search_test.lua @@ -6,6 +6,9 @@ -- @Author Lion -- @Date 2022/06/30 +-- set the package to load the current xdb_searcher.so +package.path = "./?.lua" .. package.path +package.cpath = "./?.so" .. package.cpath local xdb = require("xdb_searcher") function printHelp() diff --git a/binding/lua_c/util_test.lua b/binding/lua_c/util_test.lua index e9e2702..5a481c5 100644 --- a/binding/lua_c/util_test.lua +++ b/binding/lua_c/util_test.lua @@ -6,6 +6,9 @@ -- @Author Lion -- @Date 2022/06/30 +-- set the package to load the current xdb_searcher.so +package.path = "./?.lua" .. package.path +package.cpath = "./?.so" .. package.cpath local xdb = require("xdb_searcher") ---- ip checking testing @@ -18,9 +21,9 @@ local ip_list = { local s_time = xdb.now() for _, ip_src in ipairs(ip_list) do - ip, ok = xdb.check_ip(ip_src) - if ok == false then - print(string.format("invalid ip address `%s`", ip_src)) + ip, err = xdb.check_ip(ip_src) + if err ~= nil then + print(string.format("invalid ip address `%s`: %s", ip_src, err)) else ip_dst = xdb.long2ip(ip) io.write(string.format("long(%-15s)=%10d, long2ip(%-10d)=%-15s", ip_src, ip, ip, ip_dst))