From 1c70db716f4a4d0a1abd646cbf787ca06e543623 Mon Sep 17 00:00:00 2001 From: CooooolFrog Date: Fri, 29 Mar 2024 11:18:54 +0800 Subject: [PATCH 01/10] rename package --- horaedb-common/src/main/.DS_Store | Bin 0 -> 6148 bytes horaedb-common/src/main/java/.DS_Store | Bin 0 -> 6148 bytes .../apache/horaedb}/common/Copiable.java | 2 +- .../apache/horaedb}/common/Display.java | 2 +- .../apache/horaedb}/common/Endpoint.java | 4 +- .../horaedb}/common/InFlightLimiter.java | 8 +- .../apache/horaedb}/common/Lifecycle.java | 2 +- .../apache/horaedb}/common/Limiter.java | 2 +- .../apache/horaedb}/common/OptKeys.java | 2 +- .../apache/horaedb}/common/SPI.java | 2 +- .../apache/horaedb}/common/Streamable.java | 2 +- .../horaedb}/common/VisibleForTest.java | 2 +- .../horaedb}/common/parser/SqlParser.java | 2 +- .../common/parser/SqlParserFactory.java | 2 +- .../parser/SqlParserFactoryProvider.java | 4 +- .../common/signal/FileOutputHelper.java | 8 +- .../horaedb}/common/signal/FileSignal.java | 2 +- .../horaedb}/common/signal/FileSignals.java | 2 +- .../apache/horaedb}/common/signal/Signal.java | 2 +- .../horaedb}/common/signal/SignalHandler.java | 2 +- .../common/signal/SignalHandlersLoader.java | 9 +- .../horaedb}/common/signal/SignalHelper.java | 4 +- .../apache/horaedb}/common/util/Clock.java | 2 +- .../apache/horaedb}/common/util/Cpus.java | 4 +- .../horaedb}/common/util/DirectExecutor.java | 2 +- .../common/util/ExecutorServiceHelper.java | 2 +- .../apache/horaedb}/common/util/Files.java | 2 +- .../util/LogScheduledThreadPoolExecutor.java | 2 +- .../common/util/LogThreadPoolExecutor.java | 2 +- .../horaedb}/common/util/MetricExecutor.java | 2 +- .../horaedb}/common/util/MetricReporter.java | 2 +- .../MetricScheduledThreadPoolExecutor.java | 2 +- .../common/util/MetricThreadPoolExecutor.java | 2 +- .../horaedb}/common/util/MetricsUtil.java | 2 +- .../common/util/NamedThreadFactory.java | 2 +- .../horaedb}/common/util/ObjectPool.java | 2 +- .../apache/horaedb}/common/util/Platform.java | 5 +- .../horaedb}/common/util/RcObjectPool.java | 2 +- .../common/util/RcResourceHolder.java | 2 +- .../apache/horaedb}/common/util/RefCell.java | 2 +- .../apache/horaedb}/common/util/Requires.java | 2 +- .../common/util/SerializingExecutor.java | 2 +- .../horaedb}/common/util/ServiceLoader.java | 5 +- .../common/util/SharedScheduledPool.java | 2 +- .../common/util/SharedThreadPool.java | 2 +- .../apache/horaedb}/common/util/Spines.java | 2 +- .../common/util/StringBuilderHelper.java | 2 +- .../apache/horaedb}/common/util/Strings.java | 2 +- .../common/util/SystemPropertyUtil.java | 2 +- .../common/util/ThreadPoolMetricRegistry.java | 2 +- .../horaedb}/common/util/ThreadPoolUtil.java | 2 +- .../horaedb}/common/util/TopKSelector.java | 2 +- .../horaedb}/common/util/UnsignedUtil.java | 2 +- .../util/internal/IntegerFieldUpdater.java | 2 +- .../util/internal/LongFieldUpdater.java | 2 +- .../util/internal/ReferenceFieldUpdater.java | 2 +- .../ReflectionIntegerFieldUpdater.java | 2 +- .../internal/ReflectionLongFieldUpdater.java | 2 +- .../ReflectionReferenceFieldUpdater.java | 2 +- .../common/util/internal/ThrowUtil.java | 2 +- .../internal/UnsafeIntegerFieldUpdater.java | 2 +- .../util/internal/UnsafeLongFieldUpdater.java | 2 +- .../internal/UnsafeReferenceFieldUpdater.java | 2 +- .../common/util/internal/UnsafeUtil.java | 2 +- .../common/util/internal/Updaters.java | 2 +- .../java/io/ceresdb/common/EndpointTest.java | 1 + .../common/util/DirectExecutorTest.java | 2 + .../util/ExecutorServiceHelperTest.java | 3 + .../ceresdb/common/util/RcObjectPoolTest.java | 2 + .../io/ceresdb/common/util/SpinedBufTest.java | 1 + .../io/ceresdb/common/util/StringsTest.java | 1 + .../ceresdb/common/util/TopKSelectorTest.java | 1 + .../ceresdb/common/util/UnsignedUtilTest.java | 1 + .../main/java/io/ceresdb/rpc/GrpcClient.java | 28 +- .../main/java/io/ceresdb/rpc/GrpcFactory.java | 2 +- .../io/ceresdb/rpc/MarshallerRegistry.java | 2 +- .../ClientRequestLimitInterceptor.java | 2 +- .../rpc/interceptors/MetricInterceptor.java | 2 +- .../rpc/limit/LimitMetricRegistry.java | 2 +- .../java/io/ceresdb/rpc/limit/VegasLimit.java | 2 +- .../rpc/signal/RpcLimitSignalHandler.java | 8 +- ...pache.horaedb.common.signal.SignalHandler} | 0 .../rpc/RequestLimiterInterceptorTest.java | 2 +- .../java/io/ceresdb/rpc/StringMarshaller.java | 2 +- .../main/java/io/ceresdb/HoraeDBClient.java | 12 +- .../src/main/java/io/ceresdb/QueryClient.java | 18 +- .../src/main/java/io/ceresdb/Route.java | 6 +- .../main/java/io/ceresdb/RouterClient.java | 13 +- .../src/main/java/io/ceresdb/WriteClient.java | 15 +- .../java/io/ceresdb/limit/CeresDBLimiter.java | 6 +- .../java/io/ceresdb/limit/LimitedPolicy.java | 2 +- .../src/main/java/io/ceresdb/models/Err.java | 6 +- .../main/java/io/ceresdb/models/Point.java | 2 +- .../main/java/io/ceresdb/models/Result.java | 4 +- .../java/io/ceresdb/models/SqlQueryOk.java | 4 +- .../io/ceresdb/models/SqlQueryRequest.java | 6 +- .../main/java/io/ceresdb/models/Value.java | 4 +- .../main/java/io/ceresdb/models/WriteOk.java | 6 +- .../io/ceresdb/options/HoraeDBOptions.java | 6 +- .../java/io/ceresdb/options/QueryOptions.java | 2 +- .../io/ceresdb/options/RouterOptions.java | 4 +- .../java/io/ceresdb/options/WriteOptions.java | 2 +- .../signal/ClearRouteCacheSignalHandler.java | 9 +- .../ceresdb/signal/DisplaySignalHandler.java | 13 +- .../ceresdb/signal/MetricsSignalHandler.java | 15 +- .../signal/RwLoggingSignalHandler.java | 10 +- .../ceresdb/signal/ShowHelpSignalHandler.java | 11 +- .../signal/ShowRouteCacheSignalHandler.java | 13 +- .../io/ceresdb/util/RpcServiceRegister.java | 4 +- .../src/main/java/io/ceresdb/util/Utils.java | 17 +- .../java/io/ceresdb/HoraeDBClientTest.java | 6 +- .../src/test/java/io/ceresdb/UtilsTest.java | 2 +- .../test/java/io/ceresdb/models/ErrTest.java | 3 +- .../src/main/java/io/ceresdb/rpc/Context.java | 2 +- .../main/java/io/ceresdb/rpc/Observer.java | 2 +- .../main/java/io/ceresdb/rpc/RpcClient.java | 6 +- .../io/ceresdb/rpc/RpcFactoryProvider.java | 2 +- .../main/java/io/ceresdb/rpc/RpcOptions.java | 4 +- .../io/ceresdb/sql/AbstractCharStream.java | 469 --------------- .../java/io/ceresdb/sql/CeresDBParser.java | 95 --- .../io/ceresdb/sql/CeresDBParserFactory.java | 17 - .../io/ceresdb/sql/CeresDBSqlStatement.java | 259 --------- .../java/io/ceresdb/sql/LanguageType.java | 11 - .../java/io/ceresdb/sql/OperationType.java | 10 - .../java/io/ceresdb/sql/ParseException.java | 179 ------ .../java/io/ceresdb/sql/ParseHandler.java | 54 -- .../java/io/ceresdb/sql/SimpleCharStream.java | 93 --- .../main/java/io/ceresdb/sql/SqlUtils.java | 78 --- .../java/io/ceresdb/sql/StatementType.java | 49 -- .../src/main/java/io/ceresdb/sql/Token.java | 130 ----- .../io/ceresdb/sql/TokenMgrException.java | 147 ----- .../horaedb/sql/AbstractCharStream.java | 547 ++++++++++++++++++ .../apache/horaedb}/sql/CeresDBSqlParser.java | 2 +- .../sql/CeresDBSqlParserConstants.java | 2 +- .../sql/CeresDBSqlParserTokenManager.java | 2 +- .../apache/horaedb}/sql/CharStream.java | 7 +- .../apache/horaedb/sql/ParseException.java | 189 ++++++ .../apache/horaedb/sql/SimpleCharStream.java | 127 ++++ .../java/org/apache/horaedb/sql/Token.java | 132 +++++ .../apache/horaedb/sql/TokenMgrException.java | 146 +++++ .../src/main/javacc/CeresDBSqlParser.jj | 2 +- .../io.ceresdb.common.parser.SqlParserFactory | 1 - ...che.horaedb.common.parser.SqlParserFactory | 1 + .../apache/horaedb}/sql/TableParserTest.java | 9 +- .../apache/horaedb}/sql/JSqlParser.java | 2 +- .../horaedb}/sql/JSqlParserFactory.java | 2 +- .../apache/horaedb}/sql/SqlParserUtil.java | 2 +- .../io.ceresdb.common.parser.SqlParserFactory | 1 - ...che.horaedb.common.parser.SqlParserFactory | 1 + .../horaedb}/sql/JSqlMetricParserTest.java | 2 +- pom.xml | 30 +- 151 files changed, 1385 insertions(+), 1873 deletions(-) create mode 100644 horaedb-common/src/main/.DS_Store create mode 100644 horaedb-common/src/main/java/.DS_Store rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/Copiable.java (87%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/Display.java (97%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/Endpoint.java (96%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/InFlightLimiter.java (90%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/Lifecycle.java (92%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/Limiter.java (98%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/OptKeys.java (96%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/SPI.java (93%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/Streamable.java (89%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/VisibleForTest.java (94%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/parser/SqlParser.java (97%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/parser/SqlParserFactory.java (90%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/parser/SqlParserFactoryProvider.java (81%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/signal/FileOutputHelper.java (84%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/signal/FileSignal.java (95%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/signal/FileSignals.java (94%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/signal/Signal.java (88%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/signal/SignalHandler.java (91%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/signal/SignalHandlersLoader.java (88%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/signal/SignalHelper.java (96%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/Clock.java (95%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/Cpus.java (87%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/DirectExecutor.java (94%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/ExecutorServiceHelper.java (98%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/Files.java (97%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/LogScheduledThreadPoolExecutor.java (98%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/LogThreadPoolExecutor.java (98%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/MetricExecutor.java (96%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/MetricReporter.java (99%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/MetricScheduledThreadPoolExecutor.java (97%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/MetricThreadPoolExecutor.java (98%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/MetricsUtil.java (99%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/NamedThreadFactory.java (98%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/ObjectPool.java (94%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/Platform.java (94%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/RcObjectPool.java (94%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/RcResourceHolder.java (98%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/RefCell.java (86%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/Requires.java (98%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/SerializingExecutor.java (99%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/ServiceLoader.java (99%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/SharedScheduledPool.java (91%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/SharedThreadPool.java (90%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/Spines.java (89%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/StringBuilderHelper.java (96%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/Strings.java (99%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/SystemPropertyUtil.java (99%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/ThreadPoolMetricRegistry.java (95%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/ThreadPoolUtil.java (99%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/TopKSelector.java (97%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/UnsignedUtil.java (94%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/internal/IntegerFieldUpdater.java (80%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/internal/LongFieldUpdater.java (80%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/internal/ReferenceFieldUpdater.java (80%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/internal/ReflectionIntegerFieldUpdater.java (94%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/internal/ReflectionLongFieldUpdater.java (94%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/internal/ReflectionReferenceFieldUpdater.java (94%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/internal/ThrowUtil.java (96%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/internal/UnsafeIntegerFieldUpdater.java (94%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/internal/UnsafeLongFieldUpdater.java (94%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/internal/UnsafeReferenceFieldUpdater.java (95%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/internal/UnsafeUtil.java (99%) rename horaedb-common/src/main/java/{io/ceresdb => org/apache/horaedb}/common/util/internal/Updaters.java (98%) rename horaedb-grpc/src/main/resources/META-INF/services/{io.ceresdb.common.signal.SignalHandler => org.apache.horaedb.common.signal.SignalHandler} (100%) delete mode 100644 horaedb-sql-javacc/src/main/java/io/ceresdb/sql/AbstractCharStream.java delete mode 100644 horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBParser.java delete mode 100644 horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBParserFactory.java delete mode 100644 horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBSqlStatement.java delete mode 100644 horaedb-sql-javacc/src/main/java/io/ceresdb/sql/LanguageType.java delete mode 100644 horaedb-sql-javacc/src/main/java/io/ceresdb/sql/OperationType.java delete mode 100644 horaedb-sql-javacc/src/main/java/io/ceresdb/sql/ParseException.java delete mode 100644 horaedb-sql-javacc/src/main/java/io/ceresdb/sql/ParseHandler.java delete mode 100644 horaedb-sql-javacc/src/main/java/io/ceresdb/sql/SimpleCharStream.java delete mode 100644 horaedb-sql-javacc/src/main/java/io/ceresdb/sql/SqlUtils.java delete mode 100644 horaedb-sql-javacc/src/main/java/io/ceresdb/sql/StatementType.java delete mode 100644 horaedb-sql-javacc/src/main/java/io/ceresdb/sql/Token.java delete mode 100644 horaedb-sql-javacc/src/main/java/io/ceresdb/sql/TokenMgrException.java create mode 100644 horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/AbstractCharStream.java rename horaedb-sql-javacc/src/main/java/{io/ceresdb => org/apache/horaedb}/sql/CeresDBSqlParser.java (99%) rename horaedb-sql-javacc/src/main/java/{io/ceresdb => org/apache/horaedb}/sql/CeresDBSqlParserConstants.java (99%) rename horaedb-sql-javacc/src/main/java/{io/ceresdb => org/apache/horaedb}/sql/CeresDBSqlParserTokenManager.java (99%) rename horaedb-sql-javacc/src/main/java/{io/ceresdb => org/apache/horaedb}/sql/CharStream.java (95%) create mode 100644 horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/ParseException.java create mode 100644 horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/SimpleCharStream.java create mode 100644 horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/Token.java create mode 100644 horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/TokenMgrException.java delete mode 100644 horaedb-sql-javacc/src/main/resources/META-INF/services/io.ceresdb.common.parser.SqlParserFactory create mode 100644 horaedb-sql-javacc/src/main/resources/META-INF/services/org.apache.horaedb.common.parser.SqlParserFactory rename horaedb-sql-javacc/src/test/java/{io/ceresdb => org/apache/horaedb}/sql/TableParserTest.java (97%) rename horaedb-sql/src/main/java/{io/ceresdb => org/apache/horaedb}/sql/JSqlParser.java (99%) rename horaedb-sql/src/main/java/{io/ceresdb => org/apache/horaedb}/sql/JSqlParserFactory.java (92%) rename horaedb-sql/src/main/java/{io/ceresdb => org/apache/horaedb}/sql/SqlParserUtil.java (99%) delete mode 100644 horaedb-sql/src/main/resources/META-INF/services/io.ceresdb.common.parser.SqlParserFactory create mode 100644 horaedb-sql/src/main/resources/META-INF/services/org.apache.horaedb.common.parser.SqlParserFactory rename horaedb-sql/src/test/java/{io/ceresdb => org/apache/horaedb}/sql/JSqlMetricParserTest.java (99%) diff --git a/horaedb-common/src/main/.DS_Store b/horaedb-common/src/main/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..a5c61c7fff17146eb8a8452dee29a08244640d61 GIT binary patch literal 6148 zcmeHK%}T>S5Z-O0O({YS3Oz1(Em&(?5HBIt7cim+m70*E(U>hw+8#8mql`oo54ty)wF<8PYD4*+@`I9t}={@+${4$S_7$63S0b*ct z88Byp-Pl|TXywEJG4KNexIYMJh_1mxquM&4!|OA~EkqR1@hyQU47vsjjSvChx)e~C za`VLCx*Yt%E}fjZ>51`CZi T3i?$!AYB9$A=D8Azrer;idafS literal 0 HcmV?d00001 diff --git a/horaedb-common/src/main/java/.DS_Store b/horaedb-common/src/main/java/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..430c8530f44dbf21acafdd88b5173107cd9089ab GIT binary patch literal 6148 zcmeHKF-`+P479lvk!Vs3!aNc7k7oIDX`Y=gL5(o&$YWY6t- zyr-Muyf!mmzwhtNR%W(@6YYaxZp_nXc2zq>=NZFpdlivs@(*ma?hD66WMH19z%2C|F}!96&vNAZ;*W`0ZXR#OIrV0*3B_yl z@D_CQK2cE$NP(#WT`pJb{}1pB^Z&F+D=8oa{*?m0*gS34_@wHsvyWr1ZSZIKw}BgU mglNUUXvJ8t72o{gH9jNX7mkThj{PVH>LNg0WK!TS6!-#~yCaJL literal 0 HcmV?d00001 diff --git a/horaedb-common/src/main/java/io/ceresdb/common/Copiable.java b/horaedb-common/src/main/java/org/apache/horaedb/common/Copiable.java similarity index 87% rename from horaedb-common/src/main/java/io/ceresdb/common/Copiable.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/Copiable.java index 866041d..16c0975 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/Copiable.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/Copiable.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common; +package org.apache.horaedb.common; /** * Copiable mark interface. diff --git a/horaedb-common/src/main/java/io/ceresdb/common/Display.java b/horaedb-common/src/main/java/org/apache/horaedb/common/Display.java similarity index 97% rename from horaedb-common/src/main/java/io/ceresdb/common/Display.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/Display.java index efaa44b..2d5804f 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/Display.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/Display.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common; +package org.apache.horaedb.common; import java.io.PrintWriter; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/Endpoint.java b/horaedb-common/src/main/java/org/apache/horaedb/common/Endpoint.java similarity index 96% rename from horaedb-common/src/main/java/io/ceresdb/common/Endpoint.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/Endpoint.java index 8fc5c13..8e9deeb 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/Endpoint.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/Endpoint.java @@ -1,11 +1,11 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common; +package org.apache.horaedb.common; import java.io.Serializable; -import io.ceresdb.common.util.Strings; +import org.apache.horaedb.common.util.Strings; /** * A IP address with port. diff --git a/horaedb-common/src/main/java/io/ceresdb/common/InFlightLimiter.java b/horaedb-common/src/main/java/org/apache/horaedb/common/InFlightLimiter.java similarity index 90% rename from horaedb-common/src/main/java/io/ceresdb/common/InFlightLimiter.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/InFlightLimiter.java index 6a1f32c..e78311e 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/InFlightLimiter.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/InFlightLimiter.java @@ -1,14 +1,14 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common; +package org.apache.horaedb.common; import java.util.concurrent.Semaphore; import java.util.concurrent.TimeUnit; -import io.ceresdb.common.util.Clock; -import io.ceresdb.common.util.MetricsUtil; -import io.ceresdb.common.util.internal.ThrowUtil; +import org.apache.horaedb.common.util.Clock; +import org.apache.horaedb.common.util.MetricsUtil; +import org.apache.horaedb.common.util.internal.ThrowUtil; import com.codahale.metrics.Timer; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/Lifecycle.java b/horaedb-common/src/main/java/org/apache/horaedb/common/Lifecycle.java similarity index 92% rename from horaedb-common/src/main/java/io/ceresdb/common/Lifecycle.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/Lifecycle.java index 1e5508a..7198527 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/Lifecycle.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/Lifecycle.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common; +package org.apache.horaedb.common; /** * Service life cycle mark interface. diff --git a/horaedb-common/src/main/java/io/ceresdb/common/Limiter.java b/horaedb-common/src/main/java/org/apache/horaedb/common/Limiter.java similarity index 98% rename from horaedb-common/src/main/java/io/ceresdb/common/Limiter.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/Limiter.java index 8d7e8a9..395024c 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/Limiter.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/Limiter.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common; +package org.apache.horaedb.common; import java.util.concurrent.TimeUnit; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/OptKeys.java b/horaedb-common/src/main/java/org/apache/horaedb/common/OptKeys.java similarity index 96% rename from horaedb-common/src/main/java/io/ceresdb/common/OptKeys.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/OptKeys.java index f027192..9e5dbc2 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/OptKeys.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/OptKeys.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common; +package org.apache.horaedb.common; /** * System properties option keys diff --git a/horaedb-common/src/main/java/io/ceresdb/common/SPI.java b/horaedb-common/src/main/java/org/apache/horaedb/common/SPI.java similarity index 93% rename from horaedb-common/src/main/java/io/ceresdb/common/SPI.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/SPI.java index f7036d3..1da28ae 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/SPI.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/SPI.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common; +package org.apache.horaedb.common; import java.lang.annotation.Documented; import java.lang.annotation.ElementType; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/Streamable.java b/horaedb-common/src/main/java/org/apache/horaedb/common/Streamable.java similarity index 89% rename from horaedb-common/src/main/java/io/ceresdb/common/Streamable.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/Streamable.java index de5d326..bbe35e1 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/Streamable.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/Streamable.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common; +package org.apache.horaedb.common; import java.util.stream.Stream; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/VisibleForTest.java b/horaedb-common/src/main/java/org/apache/horaedb/common/VisibleForTest.java similarity index 94% rename from horaedb-common/src/main/java/io/ceresdb/common/VisibleForTest.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/VisibleForTest.java index 7714954..a9954b9 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/VisibleForTest.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/VisibleForTest.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common; +package org.apache.horaedb.common; import java.lang.annotation.Documented; import java.lang.annotation.ElementType; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/parser/SqlParser.java b/horaedb-common/src/main/java/org/apache/horaedb/common/parser/SqlParser.java similarity index 97% rename from horaedb-common/src/main/java/io/ceresdb/common/parser/SqlParser.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/parser/SqlParser.java index 5f82eda..d59a0f2 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/parser/SqlParser.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/parser/SqlParser.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.parser; +package org.apache.horaedb.common.parser; import java.util.Collections; import java.util.List; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/parser/SqlParserFactory.java b/horaedb-common/src/main/java/org/apache/horaedb/common/parser/SqlParserFactory.java similarity index 90% rename from horaedb-common/src/main/java/io/ceresdb/common/parser/SqlParserFactory.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/parser/SqlParserFactory.java index f6c7501..4a672c7 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/parser/SqlParserFactory.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/parser/SqlParserFactory.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.parser; +package org.apache.horaedb.common.parser; public interface SqlParserFactory { diff --git a/horaedb-common/src/main/java/io/ceresdb/common/parser/SqlParserFactoryProvider.java b/horaedb-common/src/main/java/org/apache/horaedb/common/parser/SqlParserFactoryProvider.java similarity index 81% rename from horaedb-common/src/main/java/io/ceresdb/common/parser/SqlParserFactoryProvider.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/parser/SqlParserFactoryProvider.java index a39ec30..f13a476 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/parser/SqlParserFactoryProvider.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/parser/SqlParserFactoryProvider.java @@ -1,9 +1,9 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.parser; +package org.apache.horaedb.common.parser; -import io.ceresdb.common.util.ServiceLoader; +import org.apache.horaedb.common.util.ServiceLoader; public class SqlParserFactoryProvider { diff --git a/horaedb-common/src/main/java/io/ceresdb/common/signal/FileOutputHelper.java b/horaedb-common/src/main/java/org/apache/horaedb/common/signal/FileOutputHelper.java similarity index 84% rename from horaedb-common/src/main/java/io/ceresdb/common/signal/FileOutputHelper.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/signal/FileOutputHelper.java index 01b8f2d..df42190 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/signal/FileOutputHelper.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/signal/FileOutputHelper.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.signal; +package org.apache.horaedb.common.signal; import java.io.File; import java.io.IOException; @@ -9,9 +9,9 @@ import java.text.SimpleDateFormat; import java.util.Date; -import io.ceresdb.common.OptKeys; -import io.ceresdb.common.util.Files; -import io.ceresdb.common.util.SystemPropertyUtil; +import org.apache.horaedb.common.OptKeys; +import org.apache.horaedb.common.util.Files; +import org.apache.horaedb.common.util.SystemPropertyUtil; public final class FileOutputHelper { diff --git a/horaedb-common/src/main/java/io/ceresdb/common/signal/FileSignal.java b/horaedb-common/src/main/java/org/apache/horaedb/common/signal/FileSignal.java similarity index 95% rename from horaedb-common/src/main/java/io/ceresdb/common/signal/FileSignal.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/signal/FileSignal.java index a56f006..5197378 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/signal/FileSignal.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/signal/FileSignal.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.signal; +package org.apache.horaedb.common.signal; import java.util.Optional; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/signal/FileSignals.java b/horaedb-common/src/main/java/org/apache/horaedb/common/signal/FileSignals.java similarity index 94% rename from horaedb-common/src/main/java/io/ceresdb/common/signal/FileSignals.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/signal/FileSignals.java index 175d530..8a90aa8 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/signal/FileSignals.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/signal/FileSignals.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.signal; +package org.apache.horaedb.common.signal; import java.io.File; import java.nio.file.Paths; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/signal/Signal.java b/horaedb-common/src/main/java/org/apache/horaedb/common/signal/Signal.java similarity index 88% rename from horaedb-common/src/main/java/io/ceresdb/common/signal/Signal.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/signal/Signal.java index 5abfb27..04a110d 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/signal/Signal.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/signal/Signal.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.signal; +package org.apache.horaedb.common.signal; /** * Signal types. diff --git a/horaedb-common/src/main/java/io/ceresdb/common/signal/SignalHandler.java b/horaedb-common/src/main/java/org/apache/horaedb/common/signal/SignalHandler.java similarity index 91% rename from horaedb-common/src/main/java/io/ceresdb/common/signal/SignalHandler.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/signal/SignalHandler.java index 9faae9b..d3b2f5d 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/signal/SignalHandler.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/signal/SignalHandler.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.signal; +package org.apache.horaedb.common.signal; /** * This is the signal handler interface. diff --git a/horaedb-common/src/main/java/io/ceresdb/common/signal/SignalHandlersLoader.java b/horaedb-common/src/main/java/org/apache/horaedb/common/signal/SignalHandlersLoader.java similarity index 88% rename from horaedb-common/src/main/java/io/ceresdb/common/signal/SignalHandlersLoader.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/signal/SignalHandlersLoader.java index 68e48f0..65d963c 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/signal/SignalHandlersLoader.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/signal/SignalHandlersLoader.java @@ -1,20 +1,19 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.signal; +package org.apache.horaedb.common.signal; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import org.apache.horaedb.common.OptKeys; +import org.apache.horaedb.common.util.ServiceLoader; +import org.apache.horaedb.common.util.SystemPropertyUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.common.OptKeys; -import io.ceresdb.common.util.ServiceLoader; -import io.ceresdb.common.util.SystemPropertyUtil; - /** * A tool class for loading and registering all signals. * diff --git a/horaedb-common/src/main/java/io/ceresdb/common/signal/SignalHelper.java b/horaedb-common/src/main/java/org/apache/horaedb/common/signal/SignalHelper.java similarity index 96% rename from horaedb-common/src/main/java/io/ceresdb/common/signal/SignalHelper.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/signal/SignalHelper.java index 4d7d0a8..c598dcf 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/signal/SignalHelper.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/signal/SignalHelper.java @@ -1,14 +1,14 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.signal; +package org.apache.horaedb.common.signal; import java.util.List; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.common.util.Platform; +import org.apache.horaedb.common.util.Platform; /** * A signal helper, provides ANSI/ISO C signal support. diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/Clock.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/Clock.java similarity index 95% rename from horaedb-common/src/main/java/io/ceresdb/common/util/Clock.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/Clock.java index 872dd49..f5aa34a 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/Clock.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/Clock.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; public abstract class Clock { diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/Cpus.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/Cpus.java similarity index 87% rename from horaedb-common/src/main/java/io/ceresdb/common/util/Cpus.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/Cpus.java index 0b9bca1..19f9d68 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/Cpus.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/Cpus.java @@ -1,9 +1,9 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; -import io.ceresdb.common.OptKeys; +import org.apache.horaedb.common.OptKeys; /** * Utility for cpu. diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/DirectExecutor.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/DirectExecutor.java similarity index 94% rename from horaedb-common/src/main/java/io/ceresdb/common/util/DirectExecutor.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/DirectExecutor.java index e33f712..7842378 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/DirectExecutor.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/DirectExecutor.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.util.concurrent.Executor; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/ExecutorServiceHelper.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/ExecutorServiceHelper.java similarity index 98% rename from horaedb-common/src/main/java/io/ceresdb/common/util/ExecutorServiceHelper.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/ExecutorServiceHelper.java index c9eada6..3e82d07 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/ExecutorServiceHelper.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/ExecutorServiceHelper.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.util.concurrent.ExecutorService; import java.util.concurrent.TimeUnit; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/Files.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/Files.java similarity index 97% rename from horaedb-common/src/main/java/io/ceresdb/common/util/Files.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/Files.java index 71e569d..103be15 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/Files.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/Files.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.io.File; import java.io.IOException; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/LogScheduledThreadPoolExecutor.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/LogScheduledThreadPoolExecutor.java similarity index 98% rename from horaedb-common/src/main/java/io/ceresdb/common/util/LogScheduledThreadPoolExecutor.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/LogScheduledThreadPoolExecutor.java index 31f4378..3d58e00 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/LogScheduledThreadPoolExecutor.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/LogScheduledThreadPoolExecutor.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.util.concurrent.CancellationException; import java.util.concurrent.ExecutionException; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/LogThreadPoolExecutor.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/LogThreadPoolExecutor.java similarity index 98% rename from horaedb-common/src/main/java/io/ceresdb/common/util/LogThreadPoolExecutor.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/LogThreadPoolExecutor.java index 5ca7968..26fc552 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/LogThreadPoolExecutor.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/LogThreadPoolExecutor.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.util.concurrent.BlockingQueue; import java.util.concurrent.CancellationException; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/MetricExecutor.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/MetricExecutor.java similarity index 96% rename from horaedb-common/src/main/java/io/ceresdb/common/util/MetricExecutor.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/MetricExecutor.java index 5112b6e..8518b3d 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/MetricExecutor.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/MetricExecutor.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.util.concurrent.Executor; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/MetricReporter.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/MetricReporter.java similarity index 99% rename from horaedb-common/src/main/java/io/ceresdb/common/util/MetricReporter.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/MetricReporter.java index b261e21..4baa3b7 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/MetricReporter.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/MetricReporter.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.io.PrintStream; import java.text.DateFormat; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/MetricScheduledThreadPoolExecutor.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/MetricScheduledThreadPoolExecutor.java similarity index 97% rename from horaedb-common/src/main/java/io/ceresdb/common/util/MetricScheduledThreadPoolExecutor.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/MetricScheduledThreadPoolExecutor.java index f4b38c4..cde7e0d 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/MetricScheduledThreadPoolExecutor.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/MetricScheduledThreadPoolExecutor.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.util.concurrent.RejectedExecutionHandler; import java.util.concurrent.ThreadFactory; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/MetricThreadPoolExecutor.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/MetricThreadPoolExecutor.java similarity index 98% rename from horaedb-common/src/main/java/io/ceresdb/common/util/MetricThreadPoolExecutor.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/MetricThreadPoolExecutor.java index 558caab..ca149fe 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/MetricThreadPoolExecutor.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/MetricThreadPoolExecutor.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.util.concurrent.BlockingQueue; import java.util.concurrent.RejectedExecutionHandler; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/MetricsUtil.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/MetricsUtil.java similarity index 99% rename from horaedb-common/src/main/java/io/ceresdb/common/util/MetricsUtil.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/MetricsUtil.java index fad76fb..2c3de70 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/MetricsUtil.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/MetricsUtil.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/NamedThreadFactory.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/NamedThreadFactory.java similarity index 98% rename from horaedb-common/src/main/java/io/ceresdb/common/util/NamedThreadFactory.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/NamedThreadFactory.java index 83ea4e3..585f731 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/NamedThreadFactory.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/NamedThreadFactory.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.util.concurrent.ThreadFactory; import java.util.concurrent.atomic.AtomicInteger; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/ObjectPool.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/ObjectPool.java similarity index 94% rename from horaedb-common/src/main/java/io/ceresdb/common/util/ObjectPool.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/ObjectPool.java index a1c31cb..f9666c5 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/ObjectPool.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/ObjectPool.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; /** * An object pool. diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/Platform.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/Platform.java similarity index 94% rename from horaedb-common/src/main/java/io/ceresdb/common/util/Platform.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/Platform.java index 9c65d3c..abe9519 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/Platform.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/Platform.java @@ -1,15 +1,14 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.util.Locale; +import org.apache.horaedb.common.OptKeys; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.common.OptKeys; - public class Platform { private static final Logger LOG = LoggerFactory.getLogger(Platform.class); diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/RcObjectPool.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/RcObjectPool.java similarity index 94% rename from horaedb-common/src/main/java/io/ceresdb/common/util/RcObjectPool.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/RcObjectPool.java index d8ba9d6..e181b23 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/RcObjectPool.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/RcObjectPool.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; /** * An shared object pool with ref count. diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/RcResourceHolder.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/RcResourceHolder.java similarity index 98% rename from horaedb-common/src/main/java/io/ceresdb/common/util/RcResourceHolder.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/RcResourceHolder.java index d8f10f0..683e447 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/RcResourceHolder.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/RcResourceHolder.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.util.IdentityHashMap; import java.util.Map; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/RefCell.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/RefCell.java similarity index 86% rename from horaedb-common/src/main/java/io/ceresdb/common/util/RefCell.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/RefCell.java index 8e11724..8f5fc9c 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/RefCell.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/RefCell.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; public class RefCell { diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/Requires.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/Requires.java similarity index 98% rename from horaedb-common/src/main/java/io/ceresdb/common/util/Requires.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/Requires.java index a6125e1..fa5a407 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/Requires.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/Requires.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; /** * Simple static methods to be called at the start of your own methods to verify diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/SerializingExecutor.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/SerializingExecutor.java similarity index 99% rename from horaedb-common/src/main/java/io/ceresdb/common/util/SerializingExecutor.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/SerializingExecutor.java index 612be8c..64a0194 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/SerializingExecutor.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/SerializingExecutor.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.util.Queue; import java.util.concurrent.ConcurrentLinkedQueue; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/ServiceLoader.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/ServiceLoader.java similarity index 99% rename from horaedb-common/src/main/java/io/ceresdb/common/util/ServiceLoader.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/ServiceLoader.java index f8e2bd6..ab90f7b 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/ServiceLoader.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/ServiceLoader.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.io.BufferedReader; import java.io.IOException; @@ -19,11 +19,10 @@ import java.util.ServiceConfigurationError; import java.util.function.Supplier; +import org.apache.horaedb.common.SPI; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.common.SPI; - /** * A simple service-provider loading facility (SPI). * diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/SharedScheduledPool.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/SharedScheduledPool.java similarity index 91% rename from horaedb-common/src/main/java/io/ceresdb/common/util/SharedScheduledPool.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/SharedScheduledPool.java index 194f62a..0bfe209 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/SharedScheduledPool.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/SharedScheduledPool.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.util.concurrent.ScheduledExecutorService; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/SharedThreadPool.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/SharedThreadPool.java similarity index 90% rename from horaedb-common/src/main/java/io/ceresdb/common/util/SharedThreadPool.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/SharedThreadPool.java index 1589ace..9d1c5f5 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/SharedThreadPool.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/SharedThreadPool.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.util.concurrent.ExecutorService; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/Spines.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/Spines.java similarity index 89% rename from horaedb-common/src/main/java/io/ceresdb/common/util/Spines.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/Spines.java index 67d4c98..f6676f4 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/Spines.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/Spines.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.util.ArrayList; import java.util.List; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/StringBuilderHelper.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/StringBuilderHelper.java similarity index 96% rename from horaedb-common/src/main/java/io/ceresdb/common/util/StringBuilderHelper.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/StringBuilderHelper.java index f5daadd..22ab3a4 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/StringBuilderHelper.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/StringBuilderHelper.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; /** * Reuse {@link StringBuilder} based on {@link ThreadLocal}. diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/Strings.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/Strings.java similarity index 99% rename from horaedb-common/src/main/java/io/ceresdb/common/util/Strings.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/Strings.java index 10daca2..a5cce6e 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/Strings.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/Strings.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.util.ArrayList; import java.util.List; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/SystemPropertyUtil.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/SystemPropertyUtil.java similarity index 99% rename from horaedb-common/src/main/java/io/ceresdb/common/util/SystemPropertyUtil.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/SystemPropertyUtil.java index dd97f0c..1ca4f84 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/SystemPropertyUtil.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/SystemPropertyUtil.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.security.AccessController; import java.security.PrivilegedAction; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/ThreadPoolMetricRegistry.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/ThreadPoolMetricRegistry.java similarity index 95% rename from horaedb-common/src/main/java/io/ceresdb/common/util/ThreadPoolMetricRegistry.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/ThreadPoolMetricRegistry.java index baa9447..05c6130 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/ThreadPoolMetricRegistry.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/ThreadPoolMetricRegistry.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import com.codahale.metrics.MetricRegistry; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/ThreadPoolUtil.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/ThreadPoolUtil.java similarity index 99% rename from horaedb-common/src/main/java/io/ceresdb/common/util/ThreadPoolUtil.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/ThreadPoolUtil.java index a366b7b..0323548 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/ThreadPoolUtil.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/ThreadPoolUtil.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.util.concurrent.BlockingQueue; import java.util.concurrent.RejectedExecutionHandler; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/TopKSelector.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/TopKSelector.java similarity index 97% rename from horaedb-common/src/main/java/io/ceresdb/common/util/TopKSelector.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/TopKSelector.java index a27af8e..8078a3f 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/TopKSelector.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/TopKSelector.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.util.Comparator; import java.util.PriorityQueue; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/UnsignedUtil.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/UnsignedUtil.java similarity index 94% rename from horaedb-common/src/main/java/io/ceresdb/common/util/UnsignedUtil.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/UnsignedUtil.java index e4b4ea0..f7a39de 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/UnsignedUtil.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/UnsignedUtil.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util; +package org.apache.horaedb.common.util; import java.math.BigInteger; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/IntegerFieldUpdater.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/IntegerFieldUpdater.java similarity index 80% rename from horaedb-common/src/main/java/io/ceresdb/common/util/internal/IntegerFieldUpdater.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/IntegerFieldUpdater.java index 312de92..d023981 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/IntegerFieldUpdater.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/IntegerFieldUpdater.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util.internal; +package org.apache.horaedb.common.util.internal; public interface IntegerFieldUpdater { diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/LongFieldUpdater.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/LongFieldUpdater.java similarity index 80% rename from horaedb-common/src/main/java/io/ceresdb/common/util/internal/LongFieldUpdater.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/LongFieldUpdater.java index d498057..603954c 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/LongFieldUpdater.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/LongFieldUpdater.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util.internal; +package org.apache.horaedb.common.util.internal; public interface LongFieldUpdater { diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/ReferenceFieldUpdater.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/ReferenceFieldUpdater.java similarity index 80% rename from horaedb-common/src/main/java/io/ceresdb/common/util/internal/ReferenceFieldUpdater.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/ReferenceFieldUpdater.java index 4def0b1..128f109 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/ReferenceFieldUpdater.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/ReferenceFieldUpdater.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util.internal; +package org.apache.horaedb.common.util.internal; public interface ReferenceFieldUpdater { diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/ReflectionIntegerFieldUpdater.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/ReflectionIntegerFieldUpdater.java similarity index 94% rename from horaedb-common/src/main/java/io/ceresdb/common/util/internal/ReflectionIntegerFieldUpdater.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/ReflectionIntegerFieldUpdater.java index 69b562a..315898f 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/ReflectionIntegerFieldUpdater.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/ReflectionIntegerFieldUpdater.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util.internal; +package org.apache.horaedb.common.util.internal; import java.lang.reflect.Field; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/ReflectionLongFieldUpdater.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/ReflectionLongFieldUpdater.java similarity index 94% rename from horaedb-common/src/main/java/io/ceresdb/common/util/internal/ReflectionLongFieldUpdater.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/ReflectionLongFieldUpdater.java index 638dd30..59f53fa 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/ReflectionLongFieldUpdater.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/ReflectionLongFieldUpdater.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util.internal; +package org.apache.horaedb.common.util.internal; import java.lang.reflect.Field; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/ReflectionReferenceFieldUpdater.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/ReflectionReferenceFieldUpdater.java similarity index 94% rename from horaedb-common/src/main/java/io/ceresdb/common/util/internal/ReflectionReferenceFieldUpdater.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/ReflectionReferenceFieldUpdater.java index e37c65f..683ecee 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/ReflectionReferenceFieldUpdater.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/ReflectionReferenceFieldUpdater.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util.internal; +package org.apache.horaedb.common.util.internal; import java.lang.reflect.Field; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/ThrowUtil.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/ThrowUtil.java similarity index 96% rename from horaedb-common/src/main/java/io/ceresdb/common/util/internal/ThrowUtil.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/ThrowUtil.java index c3fe329..f7b82e8 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/ThrowUtil.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/ThrowUtil.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util.internal; +package org.apache.horaedb.common.util.internal; /** * Throwing tool. diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/UnsafeIntegerFieldUpdater.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/UnsafeIntegerFieldUpdater.java similarity index 94% rename from horaedb-common/src/main/java/io/ceresdb/common/util/internal/UnsafeIntegerFieldUpdater.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/UnsafeIntegerFieldUpdater.java index 9514310..2c1b309 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/UnsafeIntegerFieldUpdater.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/UnsafeIntegerFieldUpdater.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util.internal; +package org.apache.horaedb.common.util.internal; import java.lang.reflect.Field; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/UnsafeLongFieldUpdater.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/UnsafeLongFieldUpdater.java similarity index 94% rename from horaedb-common/src/main/java/io/ceresdb/common/util/internal/UnsafeLongFieldUpdater.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/UnsafeLongFieldUpdater.java index c2e0a64..0622135 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/UnsafeLongFieldUpdater.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/UnsafeLongFieldUpdater.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util.internal; +package org.apache.horaedb.common.util.internal; import java.lang.reflect.Field; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/UnsafeReferenceFieldUpdater.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/UnsafeReferenceFieldUpdater.java similarity index 95% rename from horaedb-common/src/main/java/io/ceresdb/common/util/internal/UnsafeReferenceFieldUpdater.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/UnsafeReferenceFieldUpdater.java index 6b0ffae..69fba3e 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/UnsafeReferenceFieldUpdater.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/UnsafeReferenceFieldUpdater.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util.internal; +package org.apache.horaedb.common.util.internal; import java.lang.reflect.Field; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/UnsafeUtil.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/UnsafeUtil.java similarity index 99% rename from horaedb-common/src/main/java/io/ceresdb/common/util/internal/UnsafeUtil.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/UnsafeUtil.java index 5d0e13c..f62378f 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/UnsafeUtil.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/UnsafeUtil.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util.internal; +package org.apache.horaedb.common.util.internal; import java.lang.reflect.Field; import java.nio.Buffer; diff --git a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/Updaters.java b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/Updaters.java similarity index 98% rename from horaedb-common/src/main/java/io/ceresdb/common/util/internal/Updaters.java rename to horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/Updaters.java index d7fe18e..f7dc35e 100644 --- a/horaedb-common/src/main/java/io/ceresdb/common/util/internal/Updaters.java +++ b/horaedb-common/src/main/java/org/apache/horaedb/common/util/internal/Updaters.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common.util.internal; +package org.apache.horaedb.common.util.internal; /** * Sometime instead of reflection, better performance. diff --git a/horaedb-common/src/test/java/io/ceresdb/common/EndpointTest.java b/horaedb-common/src/test/java/io/ceresdb/common/EndpointTest.java index 3c0d539..3a43894 100644 --- a/horaedb-common/src/test/java/io/ceresdb/common/EndpointTest.java +++ b/horaedb-common/src/test/java/io/ceresdb/common/EndpointTest.java @@ -3,6 +3,7 @@ */ package io.ceresdb.common; +import org.apache.horaedb.common.Endpoint; import org.junit.Assert; import org.junit.Test; diff --git a/horaedb-common/src/test/java/io/ceresdb/common/util/DirectExecutorTest.java b/horaedb-common/src/test/java/io/ceresdb/common/util/DirectExecutorTest.java index 26600b6..3052497 100644 --- a/horaedb-common/src/test/java/io/ceresdb/common/util/DirectExecutorTest.java +++ b/horaedb-common/src/test/java/io/ceresdb/common/util/DirectExecutorTest.java @@ -5,6 +5,8 @@ import java.util.concurrent.Executor; +import org.apache.horaedb.common.util.DirectExecutor; +import org.apache.horaedb.common.util.RefCell; import org.junit.Assert; import org.junit.Test; diff --git a/horaedb-common/src/test/java/io/ceresdb/common/util/ExecutorServiceHelperTest.java b/horaedb-common/src/test/java/io/ceresdb/common/util/ExecutorServiceHelperTest.java index a75775d..b6ef8d0 100644 --- a/horaedb-common/src/test/java/io/ceresdb/common/util/ExecutorServiceHelperTest.java +++ b/horaedb-common/src/test/java/io/ceresdb/common/util/ExecutorServiceHelperTest.java @@ -6,6 +6,9 @@ import java.util.concurrent.ExecutorService; import java.util.concurrent.SynchronousQueue; +import org.apache.horaedb.common.util.ExecutorServiceHelper; +import org.apache.horaedb.common.util.NamedThreadFactory; +import org.apache.horaedb.common.util.ThreadPoolUtil; import org.junit.Assert; import org.junit.Test; diff --git a/horaedb-common/src/test/java/io/ceresdb/common/util/RcObjectPoolTest.java b/horaedb-common/src/test/java/io/ceresdb/common/util/RcObjectPoolTest.java index 3e0656b..f070df9 100644 --- a/horaedb-common/src/test/java/io/ceresdb/common/util/RcObjectPoolTest.java +++ b/horaedb-common/src/test/java/io/ceresdb/common/util/RcObjectPoolTest.java @@ -3,6 +3,8 @@ */ package io.ceresdb.common.util; +import org.apache.horaedb.common.util.ObjectPool; +import org.apache.horaedb.common.util.RcObjectPool; import org.junit.Assert; import org.junit.Test; diff --git a/horaedb-common/src/test/java/io/ceresdb/common/util/SpinedBufTest.java b/horaedb-common/src/test/java/io/ceresdb/common/util/SpinedBufTest.java index 83e479f..7fb854a 100644 --- a/horaedb-common/src/test/java/io/ceresdb/common/util/SpinedBufTest.java +++ b/horaedb-common/src/test/java/io/ceresdb/common/util/SpinedBufTest.java @@ -7,6 +7,7 @@ import java.util.Arrays; import java.util.Collection; +import org.apache.horaedb.common.util.Spines; import org.junit.Assert; import org.junit.Test; diff --git a/horaedb-common/src/test/java/io/ceresdb/common/util/StringsTest.java b/horaedb-common/src/test/java/io/ceresdb/common/util/StringsTest.java index f7984c3..31dacb2 100644 --- a/horaedb-common/src/test/java/io/ceresdb/common/util/StringsTest.java +++ b/horaedb-common/src/test/java/io/ceresdb/common/util/StringsTest.java @@ -3,6 +3,7 @@ */ package io.ceresdb.common.util; +import org.apache.horaedb.common.util.Strings; import org.junit.Assert; import org.junit.Test; diff --git a/horaedb-common/src/test/java/io/ceresdb/common/util/TopKSelectorTest.java b/horaedb-common/src/test/java/io/ceresdb/common/util/TopKSelectorTest.java index 256dd53..031a228 100644 --- a/horaedb-common/src/test/java/io/ceresdb/common/util/TopKSelectorTest.java +++ b/horaedb-common/src/test/java/io/ceresdb/common/util/TopKSelectorTest.java @@ -9,6 +9,7 @@ import java.util.Map; import java.util.stream.Collectors; +import org.apache.horaedb.common.util.TopKSelector; import org.junit.Assert; import org.junit.Test; diff --git a/horaedb-common/src/test/java/io/ceresdb/common/util/UnsignedUtilTest.java b/horaedb-common/src/test/java/io/ceresdb/common/util/UnsignedUtilTest.java index fcf13f5..7d948ca 100644 --- a/horaedb-common/src/test/java/io/ceresdb/common/util/UnsignedUtilTest.java +++ b/horaedb-common/src/test/java/io/ceresdb/common/util/UnsignedUtilTest.java @@ -5,6 +5,7 @@ import java.math.BigInteger; +import org.apache.horaedb.common.util.UnsignedUtil; import org.junit.Assert; import org.junit.Test; diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/GrpcClient.java b/horaedb-grpc/src/main/java/io/ceresdb/rpc/GrpcClient.java index 80946c9..7ac5c32 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/GrpcClient.java +++ b/horaedb-grpc/src/main/java/io/ceresdb/rpc/GrpcClient.java @@ -38,20 +38,20 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.common.Endpoint; -import io.ceresdb.common.OptKeys; -import io.ceresdb.common.util.Clock; -import io.ceresdb.common.util.Cpus; -import io.ceresdb.common.util.ExecutorServiceHelper; -import io.ceresdb.common.util.MetricsUtil; -import io.ceresdb.common.util.NamedThreadFactory; -import io.ceresdb.common.util.ObjectPool; -import io.ceresdb.common.util.RefCell; -import io.ceresdb.common.util.Requires; -import io.ceresdb.common.util.SharedThreadPool; -import io.ceresdb.common.util.StringBuilderHelper; -import io.ceresdb.common.util.SystemPropertyUtil; -import io.ceresdb.common.util.ThreadPoolUtil; +import org.apache.horaedb.common.Endpoint; +import org.apache.horaedb.common.OptKeys; +import org.apache.horaedb.common.util.Clock; +import org.apache.horaedb.common.util.Cpus; +import org.apache.horaedb.common.util.ExecutorServiceHelper; +import org.apache.horaedb.common.util.MetricsUtil; +import org.apache.horaedb.common.util.NamedThreadFactory; +import org.apache.horaedb.common.util.ObjectPool; +import org.apache.horaedb.common.util.RefCell; +import org.apache.horaedb.common.util.Requires; +import org.apache.horaedb.common.util.SharedThreadPool; +import org.apache.horaedb.common.util.StringBuilderHelper; +import org.apache.horaedb.common.util.SystemPropertyUtil; +import org.apache.horaedb.common.util.ThreadPoolUtil; import io.ceresdb.rpc.errors.ConnectFailException; import io.ceresdb.rpc.errors.InvokeTimeoutException; import io.ceresdb.rpc.errors.OnlyErrorMessage; diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/GrpcFactory.java b/horaedb-grpc/src/main/java/io/ceresdb/rpc/GrpcFactory.java index 4fb1f8c..603a945 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/GrpcFactory.java +++ b/horaedb-grpc/src/main/java/io/ceresdb/rpc/GrpcFactory.java @@ -3,7 +3,7 @@ */ package io.ceresdb.rpc; -import io.ceresdb.common.SPI; +import org.apache.horaedb.common.SPI; import com.google.protobuf.Message; /** diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/MarshallerRegistry.java b/horaedb-grpc/src/main/java/io/ceresdb/rpc/MarshallerRegistry.java index bd81c22..279cca5 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/MarshallerRegistry.java +++ b/horaedb-grpc/src/main/java/io/ceresdb/rpc/MarshallerRegistry.java @@ -8,7 +8,7 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.stream.Collectors; -import io.ceresdb.common.util.Requires; +import org.apache.horaedb.common.util.Requires; import com.google.protobuf.Message; /** diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/interceptors/ClientRequestLimitInterceptor.java b/horaedb-grpc/src/main/java/io/ceresdb/rpc/interceptors/ClientRequestLimitInterceptor.java index 2a65f92..9738de5 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/interceptors/ClientRequestLimitInterceptor.java +++ b/horaedb-grpc/src/main/java/io/ceresdb/rpc/interceptors/ClientRequestLimitInterceptor.java @@ -16,7 +16,7 @@ import io.grpc.MethodDescriptor; import io.grpc.Status; -import io.ceresdb.common.util.MetricsUtil; +import org.apache.horaedb.common.util.MetricsUtil; import io.ceresdb.rpc.limit.LimitMetricRegistry; import io.ceresdb.rpc.limit.RequestLimitCtx; import com.netflix.concurrency.limits.Limiter; diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/interceptors/MetricInterceptor.java b/horaedb-grpc/src/main/java/io/ceresdb/rpc/interceptors/MetricInterceptor.java index a2276c2..3a98bd4 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/interceptors/MetricInterceptor.java +++ b/horaedb-grpc/src/main/java/io/ceresdb/rpc/interceptors/MetricInterceptor.java @@ -12,7 +12,7 @@ import io.grpc.Metadata; import io.grpc.MethodDescriptor; -import io.ceresdb.common.util.MetricsUtil; +import org.apache.horaedb.common.util.MetricsUtil; import com.codahale.metrics.Counter; import com.google.protobuf.MessageLite; diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/LimitMetricRegistry.java b/horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/LimitMetricRegistry.java index e939799..67ed9b0 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/LimitMetricRegistry.java +++ b/horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/LimitMetricRegistry.java @@ -5,7 +5,7 @@ import java.util.function.Supplier; -import io.ceresdb.common.util.MetricsUtil; +import org.apache.horaedb.common.util.MetricsUtil; import com.netflix.concurrency.limits.MetricRegistry; /** diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/VegasLimit.java b/horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/VegasLimit.java index a952569..33857fc 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/VegasLimit.java +++ b/horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/VegasLimit.java @@ -3,7 +3,7 @@ */ package io.ceresdb.rpc.limit; -import io.ceresdb.common.util.Requires; +import org.apache.horaedb.common.util.Requires; import com.netflix.concurrency.limits.MetricIds; import com.netflix.concurrency.limits.MetricRegistry; import com.netflix.concurrency.limits.MetricRegistry.SampleListener; diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/signal/RpcLimitSignalHandler.java b/horaedb-grpc/src/main/java/io/ceresdb/rpc/signal/RpcLimitSignalHandler.java index d4b8824..16b7a5b 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/signal/RpcLimitSignalHandler.java +++ b/horaedb-grpc/src/main/java/io/ceresdb/rpc/signal/RpcLimitSignalHandler.java @@ -6,10 +6,10 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.common.SPI; -import io.ceresdb.common.signal.FileSignal; -import io.ceresdb.common.signal.FileSignals; -import io.ceresdb.common.signal.SignalHandler; +import org.apache.horaedb.common.SPI; +import org.apache.horaedb.common.signal.FileSignal; +import org.apache.horaedb.common.signal.FileSignals; +import org.apache.horaedb.common.signal.SignalHandler; import io.ceresdb.rpc.interceptors.ClientRequestLimitInterceptor; /** diff --git a/horaedb-grpc/src/main/resources/META-INF/services/io.ceresdb.common.signal.SignalHandler b/horaedb-grpc/src/main/resources/META-INF/services/org.apache.horaedb.common.signal.SignalHandler similarity index 100% rename from horaedb-grpc/src/main/resources/META-INF/services/io.ceresdb.common.signal.SignalHandler rename to horaedb-grpc/src/main/resources/META-INF/services/org.apache.horaedb.common.signal.SignalHandler diff --git a/horaedb-grpc/src/test/java/io/ceresdb/rpc/RequestLimiterInterceptorTest.java b/horaedb-grpc/src/test/java/io/ceresdb/rpc/RequestLimiterInterceptorTest.java index 908fe8a..2084193 100644 --- a/horaedb-grpc/src/test/java/io/ceresdb/rpc/RequestLimiterInterceptorTest.java +++ b/horaedb-grpc/src/test/java/io/ceresdb/rpc/RequestLimiterInterceptorTest.java @@ -22,7 +22,7 @@ import org.junit.Ignore; import org.junit.Test; -import io.ceresdb.common.util.MetricsUtil; +import org.apache.horaedb.common.util.MetricsUtil; import io.ceresdb.rpc.interceptors.ClientRequestLimitInterceptor; import io.ceresdb.rpc.limit.LimitMetricRegistry; import io.ceresdb.rpc.limit.RequestLimitCtx; diff --git a/horaedb-grpc/src/test/java/io/ceresdb/rpc/StringMarshaller.java b/horaedb-grpc/src/test/java/io/ceresdb/rpc/StringMarshaller.java index 6fd9a9e..9f1e13f 100644 --- a/horaedb-grpc/src/test/java/io/ceresdb/rpc/StringMarshaller.java +++ b/horaedb-grpc/src/test/java/io/ceresdb/rpc/StringMarshaller.java @@ -12,7 +12,7 @@ import io.grpc.MethodDescriptor.Marshaller; -import io.ceresdb.common.util.StringBuilderHelper; +import org.apache.horaedb.common.util.StringBuilderHelper; public final class StringMarshaller implements Marshaller { diff --git a/horaedb-protocol/src/main/java/io/ceresdb/HoraeDBClient.java b/horaedb-protocol/src/main/java/io/ceresdb/HoraeDBClient.java index fc9799c..64106db 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/HoraeDBClient.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/HoraeDBClient.java @@ -13,15 +13,15 @@ import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicInteger; +import org.apache.horaedb.common.Display; +import org.apache.horaedb.common.Endpoint; +import org.apache.horaedb.common.Lifecycle; +import org.apache.horaedb.common.signal.SignalHandlersLoader; +import org.apache.horaedb.common.util.MetricExecutor; +import org.apache.horaedb.common.util.MetricsUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.common.Display; -import io.ceresdb.common.Endpoint; -import io.ceresdb.common.Lifecycle; -import io.ceresdb.common.signal.SignalHandlersLoader; -import io.ceresdb.common.util.MetricExecutor; -import io.ceresdb.common.util.MetricsUtil; import io.ceresdb.models.Err; import io.ceresdb.models.Point; import io.ceresdb.models.RequestContext; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/QueryClient.java b/horaedb-protocol/src/main/java/io/ceresdb/QueryClient.java index e812fe9..4e606d8 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/QueryClient.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/QueryClient.java @@ -8,24 +8,20 @@ import java.util.concurrent.Executor; import java.util.stream.Collectors; -import io.ceresdb.common.parser.SqlParser; -import io.ceresdb.common.parser.SqlParserFactoryProvider; -import io.ceresdb.common.util.Strings; import io.ceresdb.limit.LimitedPolicy; import io.ceresdb.limit.QueryLimiter; import io.ceresdb.models.RequestContext; import io.ceresdb.proto.internal.Storage; +import org.apache.horaedb.common.Display; +import org.apache.horaedb.common.Endpoint; +import org.apache.horaedb.common.Lifecycle; +import org.apache.horaedb.common.VisibleForTest; +import org.apache.horaedb.common.parser.SqlParser; +import org.apache.horaedb.common.parser.SqlParserFactoryProvider; +import org.apache.horaedb.common.util.*; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.common.Display; -import io.ceresdb.common.Endpoint; -import io.ceresdb.common.Lifecycle; -import io.ceresdb.common.VisibleForTest; -import io.ceresdb.common.util.Clock; -import io.ceresdb.common.util.MetricsUtil; -import io.ceresdb.common.util.Requires; -import io.ceresdb.common.util.SerializingExecutor; import io.ceresdb.errors.StreamException; import io.ceresdb.models.Err; import io.ceresdb.models.SqlQueryOk; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/Route.java b/horaedb-protocol/src/main/java/io/ceresdb/Route.java index ed5d641..9b7c492 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/Route.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/Route.java @@ -3,10 +3,10 @@ */ package io.ceresdb; -import java.util.concurrent.atomic.AtomicLong; +import org.apache.horaedb.common.Endpoint; +import org.apache.horaedb.common.util.Clock; -import io.ceresdb.common.Endpoint; -import io.ceresdb.common.util.Clock; +import java.util.concurrent.atomic.AtomicLong; /** * Route info for table. diff --git a/horaedb-protocol/src/main/java/io/ceresdb/RouterClient.java b/horaedb-protocol/src/main/java/io/ceresdb/RouterClient.java index 85ee77c..f36e29a 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/RouterClient.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/RouterClient.java @@ -19,18 +19,13 @@ import io.ceresdb.models.RequestContext; import io.ceresdb.proto.internal.Storage; +import org.apache.horaedb.common.Display; +import org.apache.horaedb.common.Endpoint; +import org.apache.horaedb.common.Lifecycle; +import org.apache.horaedb.common.util.*; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.common.Display; -import io.ceresdb.common.Endpoint; -import io.ceresdb.common.Lifecycle; -import io.ceresdb.common.util.Clock; -import io.ceresdb.common.util.Cpus; -import io.ceresdb.common.util.MetricsUtil; -import io.ceresdb.common.util.Requires; -import io.ceresdb.common.util.SharedScheduledPool; -import io.ceresdb.common.util.TopKSelector; import io.ceresdb.errors.RouteTableException; import io.ceresdb.options.RouterOptions; import io.ceresdb.rpc.Context; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/WriteClient.java b/horaedb-protocol/src/main/java/io/ceresdb/WriteClient.java index e73153b..88fad3b 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/WriteClient.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/WriteClient.java @@ -16,19 +16,14 @@ import java.util.stream.Collectors; import java.util.stream.Stream; +import org.apache.horaedb.common.Display; +import org.apache.horaedb.common.Endpoint; +import org.apache.horaedb.common.Lifecycle; +import org.apache.horaedb.common.VisibleForTest; +import org.apache.horaedb.common.util.*; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.common.Display; -import io.ceresdb.common.Endpoint; -import io.ceresdb.common.Lifecycle; -import io.ceresdb.common.VisibleForTest; -import io.ceresdb.common.util.Clock; -import io.ceresdb.common.util.MetricsUtil; -import io.ceresdb.common.util.Requires; -import io.ceresdb.common.util.SerializingExecutor; -import io.ceresdb.common.util.Spines; -import io.ceresdb.common.util.Strings; import io.ceresdb.errors.StreamException; import io.ceresdb.limit.LimitedPolicy; import io.ceresdb.limit.WriteLimiter; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/limit/CeresDBLimiter.java b/horaedb-protocol/src/main/java/io/ceresdb/limit/CeresDBLimiter.java index 0cfa1f5..52be073 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/limit/CeresDBLimiter.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/limit/CeresDBLimiter.java @@ -7,10 +7,10 @@ import java.util.function.Supplier; import io.ceresdb.util.Utils; -import io.ceresdb.common.InFlightLimiter; -import io.ceresdb.common.Limiter; -import io.ceresdb.common.util.MetricsUtil; import com.codahale.metrics.Histogram; +import org.apache.horaedb.common.InFlightLimiter; +import org.apache.horaedb.common.Limiter; +import org.apache.horaedb.common.util.MetricsUtil; /** * A Write/Query limiter that limits traffic according to the number of diff --git a/horaedb-protocol/src/main/java/io/ceresdb/limit/LimitedPolicy.java b/horaedb-protocol/src/main/java/io/ceresdb/limit/LimitedPolicy.java index 1564d2d..1679852 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/limit/LimitedPolicy.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/limit/LimitedPolicy.java @@ -5,8 +5,8 @@ import java.util.concurrent.TimeUnit; -import io.ceresdb.common.Limiter; import io.ceresdb.errors.LimitedException; +import org.apache.horaedb.common.Limiter; /** * A limited policy using a given {@code Limiter}. diff --git a/horaedb-protocol/src/main/java/io/ceresdb/models/Err.java b/horaedb-protocol/src/main/java/io/ceresdb/models/Err.java index f4b3c7d..86fccdb 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/models/Err.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/models/Err.java @@ -3,6 +3,9 @@ */ package io.ceresdb.models; +import org.apache.horaedb.common.Endpoint; +import org.apache.horaedb.common.Streamable; + import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -11,9 +14,6 @@ import java.util.stream.Collectors; import java.util.stream.Stream; -import io.ceresdb.common.Endpoint; -import io.ceresdb.common.Streamable; - /** * Contains the write or query error value. * diff --git a/horaedb-protocol/src/main/java/io/ceresdb/models/Point.java b/horaedb-protocol/src/main/java/io/ceresdb/models/Point.java index a0da8f4..9f566a9 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/models/Point.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/models/Point.java @@ -9,7 +9,7 @@ import java.util.TreeMap; import io.ceresdb.util.Utils; -import io.ceresdb.common.util.Requires; +import org.apache.horaedb.common.util.Requires; /** * A time series data point with multiple fields diff --git a/horaedb-protocol/src/main/java/io/ceresdb/models/Result.java b/horaedb-protocol/src/main/java/io/ceresdb/models/Result.java index a3a6da8..0480cbf 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/models/Result.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/models/Result.java @@ -3,9 +3,9 @@ */ package io.ceresdb.models; -import java.util.function.Function; +import org.apache.horaedb.common.util.Requires; -import io.ceresdb.common.util.Requires; +import java.util.function.Function; /** * `Result` is a type that represents either success ([`Ok`]) or failure ([`Err`]). diff --git a/horaedb-protocol/src/main/java/io/ceresdb/models/SqlQueryOk.java b/horaedb-protocol/src/main/java/io/ceresdb/models/SqlQueryOk.java index 2202483..46b5114 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/models/SqlQueryOk.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/models/SqlQueryOk.java @@ -3,13 +3,13 @@ */ package io.ceresdb.models; +import org.apache.horaedb.common.Streamable; + import java.util.Collections; import java.util.List; import java.util.function.Function; import java.util.stream.Stream; -import io.ceresdb.common.Streamable; - /** * Contains the success value of query. * diff --git a/horaedb-protocol/src/main/java/io/ceresdb/models/SqlQueryRequest.java b/horaedb-protocol/src/main/java/io/ceresdb/models/SqlQueryRequest.java index b05297c..da2186d 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/models/SqlQueryRequest.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/models/SqlQueryRequest.java @@ -3,14 +3,14 @@ */ package io.ceresdb.models; +import org.apache.horaedb.common.util.Requires; +import org.apache.horaedb.common.util.Strings; + import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; -import io.ceresdb.common.util.Requires; -import io.ceresdb.common.util.Strings; - /** * The query request condition. * diff --git a/horaedb-protocol/src/main/java/io/ceresdb/models/Value.java b/horaedb-protocol/src/main/java/io/ceresdb/models/Value.java index b9a29c4..13ff7a7 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/models/Value.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/models/Value.java @@ -3,11 +3,11 @@ */ package io.ceresdb.models; +import org.apache.horaedb.common.util.Requires; + import java.util.Objects; import java.util.Optional; -import io.ceresdb.common.util.Requires; - public class Value { public enum DataType { diff --git a/horaedb-protocol/src/main/java/io/ceresdb/models/WriteOk.java b/horaedb-protocol/src/main/java/io/ceresdb/models/WriteOk.java index 0a65405..1551b29 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/models/WriteOk.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/models/WriteOk.java @@ -3,12 +3,12 @@ */ package io.ceresdb.models; +import org.apache.horaedb.common.OptKeys; +import org.apache.horaedb.common.util.SystemPropertyUtil; + import java.util.Collection; import java.util.Set; -import io.ceresdb.common.OptKeys; -import io.ceresdb.common.util.SystemPropertyUtil; - /** * Contains the success value of write. * diff --git a/horaedb-protocol/src/main/java/io/ceresdb/options/HoraeDBOptions.java b/horaedb-protocol/src/main/java/io/ceresdb/options/HoraeDBOptions.java index 37c2faa..d63656f 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/options/HoraeDBOptions.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/options/HoraeDBOptions.java @@ -7,10 +7,10 @@ import io.ceresdb.limit.LimitedPolicy; import io.ceresdb.RouteMode; -import io.ceresdb.common.Copiable; -import io.ceresdb.common.Endpoint; -import io.ceresdb.common.util.Requires; import io.ceresdb.rpc.RpcOptions; +import org.apache.horaedb.common.Copiable; +import org.apache.horaedb.common.Endpoint; +import org.apache.horaedb.common.util.Requires; /** * CeresDB client options. diff --git a/horaedb-protocol/src/main/java/io/ceresdb/options/QueryOptions.java b/horaedb-protocol/src/main/java/io/ceresdb/options/QueryOptions.java index baef4be..beace94 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/options/QueryOptions.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/options/QueryOptions.java @@ -7,7 +7,7 @@ import io.ceresdb.limit.LimitedPolicy; import io.ceresdb.RouterClient; -import io.ceresdb.common.Copiable; +import org.apache.horaedb.common.Copiable; /** * Query options. diff --git a/horaedb-protocol/src/main/java/io/ceresdb/options/RouterOptions.java b/horaedb-protocol/src/main/java/io/ceresdb/options/RouterOptions.java index 4c67dc5..c3a65ec 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/options/RouterOptions.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/options/RouterOptions.java @@ -4,9 +4,9 @@ package io.ceresdb.options; import io.ceresdb.RouteMode; -import io.ceresdb.common.Copiable; -import io.ceresdb.common.Endpoint; import io.ceresdb.rpc.RpcClient; +import org.apache.horaedb.common.Copiable; +import org.apache.horaedb.common.Endpoint; /** * Router options. diff --git a/horaedb-protocol/src/main/java/io/ceresdb/options/WriteOptions.java b/horaedb-protocol/src/main/java/io/ceresdb/options/WriteOptions.java index e2292e0..409de7a 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/options/WriteOptions.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/options/WriteOptions.java @@ -7,7 +7,7 @@ import io.ceresdb.limit.LimitedPolicy; import io.ceresdb.RouterClient; -import io.ceresdb.common.Copiable; +import org.apache.horaedb.common.Copiable; /** * Write options. diff --git a/horaedb-protocol/src/main/java/io/ceresdb/signal/ClearRouteCacheSignalHandler.java b/horaedb-protocol/src/main/java/io/ceresdb/signal/ClearRouteCacheSignalHandler.java index b81154e..c990890 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/signal/ClearRouteCacheSignalHandler.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/signal/ClearRouteCacheSignalHandler.java @@ -6,14 +6,13 @@ import java.util.List; import io.ceresdb.HoraeDBClient; +import org.apache.horaedb.common.SPI; +import org.apache.horaedb.common.signal.FileSignal; +import org.apache.horaedb.common.signal.FileSignals; +import org.apache.horaedb.common.signal.SignalHandler; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.common.SPI; -import io.ceresdb.common.signal.FileSignal; -import io.ceresdb.common.signal.FileSignals; -import io.ceresdb.common.signal.SignalHandler; - /** * A signal handler that can clear the route cache. * diff --git a/horaedb-protocol/src/main/java/io/ceresdb/signal/DisplaySignalHandler.java b/horaedb-protocol/src/main/java/io/ceresdb/signal/DisplaySignalHandler.java index 0db4923..1965510 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/signal/DisplaySignalHandler.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/signal/DisplaySignalHandler.java @@ -12,16 +12,15 @@ import java.util.List; import io.ceresdb.HoraeDBClient; +import org.apache.horaedb.common.Display; +import org.apache.horaedb.common.SPI; +import org.apache.horaedb.common.signal.FileOutputHelper; +import org.apache.horaedb.common.signal.FileSignals; +import org.apache.horaedb.common.signal.SignalHandler; +import org.apache.horaedb.common.util.Files; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.common.Display; -import io.ceresdb.common.SPI; -import io.ceresdb.common.signal.FileOutputHelper; -import io.ceresdb.common.signal.FileSignals; -import io.ceresdb.common.signal.SignalHandler; -import io.ceresdb.common.util.Files; - /** * A signal handler that can display all client instance's memory state. * diff --git a/horaedb-protocol/src/main/java/io/ceresdb/signal/MetricsSignalHandler.java b/horaedb-protocol/src/main/java/io/ceresdb/signal/MetricsSignalHandler.java index 3094ae0..35eeec5 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/signal/MetricsSignalHandler.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/signal/MetricsSignalHandler.java @@ -8,17 +8,16 @@ import java.io.IOException; import java.io.PrintStream; +import org.apache.horaedb.common.SPI; +import org.apache.horaedb.common.signal.FileOutputHelper; +import org.apache.horaedb.common.signal.FileSignals; +import org.apache.horaedb.common.signal.SignalHandler; +import org.apache.horaedb.common.util.Files; +import org.apache.horaedb.common.util.MetricReporter; +import org.apache.horaedb.common.util.MetricsUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.common.SPI; -import io.ceresdb.common.signal.FileOutputHelper; -import io.ceresdb.common.signal.FileSignals; -import io.ceresdb.common.signal.SignalHandler; -import io.ceresdb.common.util.Files; -import io.ceresdb.common.util.MetricReporter; -import io.ceresdb.common.util.MetricsUtil; - /** * A signal handle that can write the metrics into a file. * diff --git a/horaedb-protocol/src/main/java/io/ceresdb/signal/RwLoggingSignalHandler.java b/horaedb-protocol/src/main/java/io/ceresdb/signal/RwLoggingSignalHandler.java index 9eeac89..c980c0a 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/signal/RwLoggingSignalHandler.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/signal/RwLoggingSignalHandler.java @@ -3,15 +3,15 @@ */ package io.ceresdb.signal; +import org.apache.horaedb.common.SPI; +import org.apache.horaedb.common.signal.FileSignal; +import org.apache.horaedb.common.signal.FileSignals; +import org.apache.horaedb.common.signal.Signal; +import org.apache.horaedb.common.signal.SignalHandler; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import io.ceresdb.util.Utils; -import io.ceresdb.common.SPI; -import io.ceresdb.common.signal.FileSignal; -import io.ceresdb.common.signal.Signal; -import io.ceresdb.common.signal.SignalHandler; -import io.ceresdb.common.signal.FileSignals; /** * A signal handler that can reset RW_LOGGING by {@link Utils#resetRwLogging()}. diff --git a/horaedb-protocol/src/main/java/io/ceresdb/signal/ShowHelpSignalHandler.java b/horaedb-protocol/src/main/java/io/ceresdb/signal/ShowHelpSignalHandler.java index 7e0af3f..60fd2af 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/signal/ShowHelpSignalHandler.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/signal/ShowHelpSignalHandler.java @@ -3,15 +3,14 @@ */ package io.ceresdb.signal; +import org.apache.horaedb.common.SPI; +import org.apache.horaedb.common.signal.FileOutputHelper; +import org.apache.horaedb.common.signal.FileSignal; +import org.apache.horaedb.common.signal.FileSignals; +import org.apache.horaedb.common.signal.SignalHandler; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.common.SPI; -import io.ceresdb.common.signal.FileOutputHelper; -import io.ceresdb.common.signal.FileSignal; -import io.ceresdb.common.signal.FileSignals; -import io.ceresdb.common.signal.SignalHandler; - @SPI(priority = 99) public class ShowHelpSignalHandler implements SignalHandler { diff --git a/horaedb-protocol/src/main/java/io/ceresdb/signal/ShowRouteCacheSignalHandler.java b/horaedb-protocol/src/main/java/io/ceresdb/signal/ShowRouteCacheSignalHandler.java index f85de79..40644f9 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/signal/ShowRouteCacheSignalHandler.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/signal/ShowRouteCacheSignalHandler.java @@ -12,16 +12,15 @@ import java.util.List; import io.ceresdb.HoraeDBClient; +import org.apache.horaedb.common.Display; +import org.apache.horaedb.common.SPI; +import org.apache.horaedb.common.signal.FileOutputHelper; +import org.apache.horaedb.common.signal.FileSignals; +import org.apache.horaedb.common.signal.SignalHandler; +import org.apache.horaedb.common.util.Files; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.common.Display; -import io.ceresdb.common.SPI; -import io.ceresdb.common.signal.FileOutputHelper; -import io.ceresdb.common.signal.FileSignals; -import io.ceresdb.common.signal.SignalHandler; -import io.ceresdb.common.util.Files; - /** * A signal handler that can log all of the route cache items to file. * diff --git a/horaedb-protocol/src/main/java/io/ceresdb/util/RpcServiceRegister.java b/horaedb-protocol/src/main/java/io/ceresdb/util/RpcServiceRegister.java index 3f52411..611a693 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/util/RpcServiceRegister.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/util/RpcServiceRegister.java @@ -3,11 +3,11 @@ */ package io.ceresdb.util; -import io.ceresdb.common.OptKeys; -import io.ceresdb.common.util.SystemPropertyUtil; import io.ceresdb.proto.internal.Storage; import io.ceresdb.rpc.MethodDescriptor; import io.ceresdb.rpc.RpcFactoryProvider; +import org.apache.horaedb.common.OptKeys; +import org.apache.horaedb.common.util.SystemPropertyUtil; public class RpcServiceRegister { diff --git a/horaedb-protocol/src/main/java/io/ceresdb/util/Utils.java b/horaedb-protocol/src/main/java/io/ceresdb/util/Utils.java index 3bc304d..9157581 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/util/Utils.java +++ b/horaedb-protocol/src/main/java/io/ceresdb/util/Utils.java @@ -26,18 +26,7 @@ import java.util.stream.Collectors; import io.ceresdb.Route; -import io.ceresdb.common.Display; -import io.ceresdb.common.Endpoint; -import io.ceresdb.common.OptKeys; -import io.ceresdb.common.util.ExecutorServiceHelper; -import io.ceresdb.common.util.MetricsUtil; -import io.ceresdb.common.util.NamedThreadFactory; -import io.ceresdb.common.util.ObjectPool; -import io.ceresdb.common.util.Requires; -import io.ceresdb.common.util.SharedScheduledPool; -import io.ceresdb.common.util.Spines; -import io.ceresdb.common.util.SystemPropertyUtil; -import io.ceresdb.common.util.ThreadPoolUtil; + import io.ceresdb.models.Err; import io.ceresdb.models.Keyword; import io.ceresdb.models.Point; @@ -75,6 +64,10 @@ import com.github.luben.zstd.ZstdInputStream; import com.google.protobuf.ByteString; import com.google.protobuf.ByteStringHelper; +import org.apache.horaedb.common.Display; +import org.apache.horaedb.common.Endpoint; +import org.apache.horaedb.common.OptKeys; +import org.apache.horaedb.common.util.*; /** * Utils for CeresDBClient. diff --git a/horaedb-protocol/src/test/java/io/ceresdb/HoraeDBClientTest.java b/horaedb-protocol/src/test/java/io/ceresdb/HoraeDBClientTest.java index 80bdccb..bc77696 100644 --- a/horaedb-protocol/src/test/java/io/ceresdb/HoraeDBClientTest.java +++ b/horaedb-protocol/src/test/java/io/ceresdb/HoraeDBClientTest.java @@ -7,6 +7,9 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutionException; +import org.apache.horaedb.common.util.MetricsUtil; +import org.apache.horaedb.common.util.internal.ReferenceFieldUpdater; +import org.apache.horaedb.common.util.internal.Updaters; import org.junit.After; import org.junit.Assert; import org.junit.Before; @@ -16,9 +19,6 @@ import org.mockito.Mockito; import org.mockito.runners.MockitoJUnitRunner; -import io.ceresdb.common.util.MetricsUtil; -import io.ceresdb.common.util.internal.ReferenceFieldUpdater; -import io.ceresdb.common.util.internal.Updaters; import io.ceresdb.models.Err; import io.ceresdb.models.Point; import io.ceresdb.models.Result; diff --git a/horaedb-protocol/src/test/java/io/ceresdb/UtilsTest.java b/horaedb-protocol/src/test/java/io/ceresdb/UtilsTest.java index 1735508..5a4bf7f 100644 --- a/horaedb-protocol/src/test/java/io/ceresdb/UtilsTest.java +++ b/horaedb-protocol/src/test/java/io/ceresdb/UtilsTest.java @@ -10,10 +10,10 @@ import java.util.Map; import java.util.Optional; +import org.apache.horaedb.common.Endpoint; import org.junit.Assert; import org.junit.Test; -import io.ceresdb.common.Endpoint; import io.ceresdb.models.Err; import io.ceresdb.models.Point; import io.ceresdb.models.Result; diff --git a/horaedb-protocol/src/test/java/io/ceresdb/models/ErrTest.java b/horaedb-protocol/src/test/java/io/ceresdb/models/ErrTest.java index 7284f47..6cd8195 100644 --- a/horaedb-protocol/src/test/java/io/ceresdb/models/ErrTest.java +++ b/horaedb-protocol/src/test/java/io/ceresdb/models/ErrTest.java @@ -10,11 +10,10 @@ import java.util.Set; import java.util.stream.Collectors; +import org.apache.horaedb.common.Endpoint; import org.junit.Assert; import org.junit.Test; -import io.ceresdb.common.Endpoint; - public class ErrTest { @Test diff --git a/horaedb-rpc/src/main/java/io/ceresdb/rpc/Context.java b/horaedb-rpc/src/main/java/io/ceresdb/rpc/Context.java index c730bbc..c97b597 100644 --- a/horaedb-rpc/src/main/java/io/ceresdb/rpc/Context.java +++ b/horaedb-rpc/src/main/java/io/ceresdb/rpc/Context.java @@ -7,7 +7,7 @@ import java.util.Map; import java.util.Set; -import io.ceresdb.common.Copiable; +import org.apache.horaedb.common.Copiable; /** * Invoke context. diff --git a/horaedb-rpc/src/main/java/io/ceresdb/rpc/Observer.java b/horaedb-rpc/src/main/java/io/ceresdb/rpc/Observer.java index f1a26dc..e178078 100644 --- a/horaedb-rpc/src/main/java/io/ceresdb/rpc/Observer.java +++ b/horaedb-rpc/src/main/java/io/ceresdb/rpc/Observer.java @@ -5,7 +5,7 @@ import java.util.concurrent.Executor; -import io.ceresdb.common.util.internal.ThrowUtil; +import org.apache.horaedb.common.util.internal.ThrowUtil; /** * Receives notifications from an observable stream of messages. diff --git a/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcClient.java b/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcClient.java index 22e22d8..4da186d 100644 --- a/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcClient.java +++ b/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcClient.java @@ -3,9 +3,9 @@ */ package io.ceresdb.rpc; -import io.ceresdb.common.Display; -import io.ceresdb.common.Endpoint; -import io.ceresdb.common.Lifecycle; +import org.apache.horaedb.common.Display; +import org.apache.horaedb.common.Endpoint; +import org.apache.horaedb.common.Lifecycle; import io.ceresdb.rpc.errors.RemotingException; /** diff --git a/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcFactoryProvider.java b/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcFactoryProvider.java index ac33e38..b72c9bf 100644 --- a/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcFactoryProvider.java +++ b/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcFactoryProvider.java @@ -3,7 +3,7 @@ */ package io.ceresdb.rpc; -import io.ceresdb.common.util.ServiceLoader; +import org.apache.horaedb.common.util.ServiceLoader; public class RpcFactoryProvider { diff --git a/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcOptions.java b/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcOptions.java index 20cf072..0f8d318 100644 --- a/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcOptions.java +++ b/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcOptions.java @@ -5,8 +5,8 @@ import java.util.concurrent.TimeUnit; -import io.ceresdb.common.Copiable; -import io.ceresdb.common.util.Cpus; +import org.apache.horaedb.common.Copiable; +import org.apache.horaedb.common.util.Cpus; /** * RPC client options. diff --git a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/AbstractCharStream.java b/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/AbstractCharStream.java deleted file mode 100644 index 97dc4df..0000000 --- a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/AbstractCharStream.java +++ /dev/null @@ -1,469 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -/* Generated by: ParserGeneratorCC: Do not edit this line. AbstractCharStream.java Version 1.1 */ -/* ParserGeneratorCCOptions:SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ -package io.ceresdb.sql; - -/** - * An implementation of interface CharStream, where the stream is assumed to - * contain only ASCII characters (without unicode processing). - */ -public abstract class AbstractCharStream implements CharStream { - /** Default buffer size if nothing is specified */ - public static final int DEFAULT_BUF_SIZE = 4096; - - static final int hexval(final char c) throws java.io.IOException { - switch (c) { - case '0': - return 0; - case '1': - return 1; - case '2': - return 2; - case '3': - return 3; - case '4': - return 4; - case '5': - return 5; - case '6': - return 6; - case '7': - return 7; - case '8': - return 8; - case '9': - return 9; - case 'a': - case 'A': - return 10; - case 'b': - case 'B': - return 11; - case 'c': - case 'C': - return 12; - case 'd': - case 'D': - return 13; - case 'e': - case 'E': - return 14; - case 'f': - case 'F': - return 15; - default: - throw new java.io.IOException("Invalid hex char '" + c + "' (=" + (int) c + ") provided!"); - } - } - - /** Tab size for formatting. Usually in the range 1 to 8. */ - private int m_nTabSize = 1; - - /** Internal circular buffer */ - protected char[] buffer; - - /** Overall buffer size - same as buffer.length */ - protected int bufsize; - - /** Current read position in buffer. */ - protected int bufpos; - - /** The number of unoccupied buffer array positions */ - protected int available; - - /** The first array index (of `buffer`) that the current token starts */ - protected int tokenBegin; - - /** Characters in the backup/pushBack buffer */ - protected int inBuf; - protected int maxNextCharInd; - - private int[] m_aBufLine; - private int[] m_aBufColumn; - - // Current line number - private int m_nLineNo; - // Current column number - private int m_nColumnNo; - - // Was the previous character a "\r" char? - private boolean m_bPrevCharIsCR; - // Was the previous character a "\n" char? - private boolean m_bPrevCharIsLF; - - // Is line/column tracking enabled? - private boolean m_bTrackLineColumn = true; - - /** Constructor. */ - public AbstractCharStream(final int nStartLine, final int nStartColumn, final int nBufferSize) { - reInit(nStartLine, nStartColumn, nBufferSize); - } - - /** Reinitialise. */ - public final void reInit(final int nStartLine, final int nStartColumn, final int nBufferSize) { - m_nLineNo = nStartLine; - m_nColumnNo = nStartColumn - 1; - m_bPrevCharIsCR = false; - m_bPrevCharIsLF = false; - if (buffer == null || nBufferSize != buffer.length) { - bufsize = nBufferSize; - available = nBufferSize; - buffer = new char[nBufferSize]; - m_aBufLine = new int[nBufferSize]; - m_aBufColumn = new int[nBufferSize]; - } - maxNextCharInd = 0; - inBuf = 0; - tokenBegin = 0; - bufpos = -1; - } - - /** - * Read from the underlying stream. - * @param aBuf the buffer to be filled - * @param nOfs The offset into the buffer. 0-based - * @param nLen Number of chars to read. - * @return Number of effective chars read, or -1 on error. - */ - protected abstract int streamRead(char[] aBuf, int nOfs, int nLen) throws java.io.IOException; - - /** - * Close the underlying stream. - * @throws java.io.IOException If closing fails. - */ - protected abstract void streamClose() throws java.io.IOException; - - // Override this method if you need more aggressive buffer size expansion - protected int getBufSizeAfterExpansion() { - // Double the size by default - return bufsize * 2; - } - - protected void expandBuff(final boolean bWrapAround) { - // Get the new buffer size - final int nNewBufSize = getBufSizeAfterExpansion(); - - final char[] newbuffer = new char[nNewBufSize]; - final int[] newbufline = new int[nNewBufSize]; - final int[] newbufcolumn = new int[nNewBufSize]; - - // Number of chars to be preserved - final int nPreservedChars = bufsize - tokenBegin; - - if (bWrapAround) { - // Move from offset "tokenBegin" to offset 0 - // arraycopy(src, srcPos, dest, destPos, length) - - // copy the "tail end" to the "start" (index 0) of the new buffer array - System.arraycopy(buffer, tokenBegin, newbuffer, 0, nPreservedChars); - - // copy the remaining "wrap around" content of the buffer from the start of the original buffer (starting at srcPos index 0) - System.arraycopy(buffer, 0, newbuffer, nPreservedChars, bufpos); - - // swap the new buffer in place of the old buffer - buffer = newbuffer; - - System.arraycopy(m_aBufLine, tokenBegin, newbufline, 0, nPreservedChars); - System.arraycopy(m_aBufLine, 0, newbufline, nPreservedChars, bufpos); - m_aBufLine = newbufline; - - System.arraycopy(m_aBufColumn, tokenBegin, newbufcolumn, 0, nPreservedChars); - System.arraycopy(m_aBufColumn, 0, newbufcolumn, nPreservedChars, bufpos); - m_aBufColumn = newbufcolumn; - - bufpos += nPreservedChars; - maxNextCharInd = bufpos; - } else { - // Move from offset "tokenBegin" to offset 0 - - System.arraycopy(buffer, tokenBegin, newbuffer, 0, nPreservedChars); - buffer = newbuffer; - - System.arraycopy(m_aBufLine, tokenBegin, newbufline, 0, nPreservedChars); - m_aBufLine = newbufline; - - System.arraycopy(m_aBufColumn, tokenBegin, newbufcolumn, 0, nPreservedChars); - m_aBufColumn = newbufcolumn; - - bufpos -= tokenBegin; - maxNextCharInd = bufpos; - } - - // Increase buffer size - bufsize = nNewBufSize; - available = nNewBufSize; - tokenBegin = 0; - } - - protected final void internalAdjustBuffSize() { - final int nHalfBufferSize = bufsize / 2; - if (available == bufsize) { - if (tokenBegin < 0) { - // If this method is called from "beginToken()" - // Just refill the buffer from the start - bufpos = 0; - maxNextCharInd = 0; - } else if (tokenBegin > nHalfBufferSize) { - // The token started in the second half - fill the front part - bufpos = 0; - maxNextCharInd = 0; - - // Available bytes are > 50% - available = tokenBegin; - } else { - // Token starts in the first half - // just append to existing buffer - expandBuff(false); - } - } else { - // A token was read across array boundaries - if (available > tokenBegin) { - available = bufsize; - } else if ((tokenBegin - available) < nHalfBufferSize) { - expandBuff(true); - } else { - available = tokenBegin; - } - } - } - - protected void fillBuff() throws java.io.IOException { - if (maxNextCharInd == available) - internalAdjustBuffSize(); - - try { - // Read from underlying stream - final int nCharsRead = streamRead(buffer, maxNextCharInd, available - maxNextCharInd); - if (nCharsRead == -1) { - // We reached the end of the file - streamClose(); - - // Caught down below and re-thrown - throw new java.io.IOException("PGCC end of stream"); - } - maxNextCharInd += nCharsRead; - } catch (final java.io.IOException ex) { - --bufpos; - // ?What is the reason of this? Backup of 0 does nothing - backup(0); - if (tokenBegin == -1) { - // Error occurred in "beginToken()" - tokenBegin = bufpos; - } - throw ex; - } - } - - protected final void internalSetBufLineColumn(final int nLine, final int nColumn) { - m_aBufLine[bufpos] = nLine; - m_aBufColumn[bufpos] = nColumn; - } - - protected final void internalUpdateLineColumn(final char c) { - m_nColumnNo++; - - if (m_bPrevCharIsLF) { - // It's a "\r\n" or "\n" - // Start of a new line - m_bPrevCharIsLF = false; - m_nColumnNo = 1; - m_nLineNo++; - } else if (m_bPrevCharIsCR) { - m_bPrevCharIsCR = false; - if (c == '\n') { - // It's a "\r\n" - m_bPrevCharIsLF = true; - } else { - // It's only a "\r" - m_nColumnNo = 1; - m_nLineNo++; - } - } - - switch (c) { - case '\r': - m_bPrevCharIsCR = true; - break; - case '\n': - m_bPrevCharIsLF = true; - break; - case '\t': - m_nColumnNo--; - m_nColumnNo += (m_nTabSize - (m_nColumnNo % m_nTabSize)); - break; - } - - internalSetBufLineColumn(m_nLineNo, m_nColumnNo); - } - - public char readChar() throws java.io.IOException { - if (inBuf > 0) { - // Something is left from last backup - --inBuf; - - ++bufpos; - if (bufpos == bufsize) { - // Buffer overflow - bufpos = 0; - } - - return buffer[bufpos]; - } - - ++bufpos; - if (bufpos >= maxNextCharInd) - fillBuff(); - - final char c = buffer[bufpos]; - - if (m_bTrackLineColumn) - internalUpdateLineColumn(c); - return c; - } - - public char beginToken() throws java.io.IOException { - tokenBegin = -1; - final char c = readChar(); - tokenBegin = bufpos; - return c; - } - - public int getBeginColumn() { - return m_aBufColumn[tokenBegin]; - } - - public int getBeginLine() { - return m_aBufLine[tokenBegin]; - } - - public int getEndColumn() { - return m_aBufColumn[bufpos]; - } - - public int getEndLine() { - return m_aBufLine[bufpos]; - } - - public void backup(final int nAmount) { - if (nAmount > bufsize) - throw new IllegalStateException("Cannot back " + nAmount - + " chars which is larger than the internal buffer size (" + bufsize + ")"); - - inBuf += nAmount; - bufpos -= nAmount; - if (bufpos < 0) { - // Buffer underflow (modulo) - bufpos += bufsize; - } - } - - public String getImage() { - if (bufpos >= tokenBegin) { - // from tokenBegin to bufpos - return new String(buffer, tokenBegin, bufpos - tokenBegin + 1); - } - - // from tokenBegin to bufsize, and from 0 to bufpos - return new String(buffer, tokenBegin, bufsize - tokenBegin) + new String(buffer, 0, bufpos + 1); - } - - public char[] getSuffix(final int len) { - char[] ret = new char[len]; - if ((bufpos + 1) >= len) { - // one piece - System.arraycopy(buffer, bufpos - len + 1, ret, 0, len); - } else { - // Wrap around - final int nPart1 = len - bufpos - 1; - System.arraycopy(buffer, bufsize - nPart1, ret, 0, nPart1); - System.arraycopy(buffer, 0, ret, nPart1, bufpos + 1); - } - return ret; - } - - public void done() { - buffer = null; - m_aBufLine = null; - m_aBufColumn = null; - } - - public final int getTabSize() { - return m_nTabSize; - } - - public final void setTabSize(final int nTabSize) { - m_nTabSize = nTabSize; - } - - /** - * Method to adjust line and column numbers for the start of a token. - * This is used internally to - */ - public final void adjustBeginLineColumn(final int nNewLine, final int newCol) { - int start = tokenBegin; - int newLine = nNewLine; - - int len; - if (bufpos >= tokenBegin) { - len = bufpos - tokenBegin + inBuf + 1; - } else { - len = bufsize - tokenBegin + bufpos + 1 + inBuf; - } - - int i = 0; - int j = 0; - int k = 0; - int nextColDiff = 0; - int columnDiff = 0; - - // TODO disassemble meaning and split up - while (i < len && m_aBufLine[j = start % bufsize] == m_aBufLine[k = ++start % bufsize]) { - m_aBufLine[j] = newLine; - nextColDiff = columnDiff + m_aBufColumn[k] - m_aBufColumn[j]; - m_aBufColumn[j] = newCol + columnDiff; - columnDiff = nextColDiff; - i++; - } - - if (i < len) { - m_aBufLine[j] = newLine++; - m_aBufColumn[j] = newCol + columnDiff; - - while (i++ < len) { - // TODO disassemble meaning and split up - if (m_aBufLine[j = start % bufsize] != m_aBufLine[++start % bufsize]) - m_aBufLine[j] = newLine++; - else - m_aBufLine[j] = newLine; - } - } - - m_nLineNo = m_aBufLine[j]; - m_nColumnNo = m_aBufColumn[j]; - } - - /** - * @return the current line number. 0-based. - */ - protected final int getLine() { - return m_nLineNo; - } - - /** - * @return the current column number. 0-based. - */ - protected final int getColumn() { - return m_nColumnNo; - } - - public final boolean isTrackLineColumn() { - return m_bTrackLineColumn; - } - - public final void setTrackLineColumn(final boolean bTrackLineColumn) { - m_bTrackLineColumn = bTrackLineColumn; - } -} -/* ParserGeneratorCC - OriginalChecksum=de3dd2b72357344d70e9a686e3198605 (do not edit this line) */ diff --git a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBParser.java b/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBParser.java deleted file mode 100644 index a507b82..0000000 --- a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBParser.java +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -package io.ceresdb.sql; - -import java.util.List; - -import io.ceresdb.common.parser.SqlParser; -import io.ceresdb.util.Utils; -import io.ceresdb.common.util.internal.ThrowUtil; - -/** - * Parse SQL. - * - */ -public class CeresDBParser implements SqlParser { - - private final String sql; - - private boolean parsed; - private StatementType statementType = StatementType.Unknown; - private CeresDBSqlStatement stmt; - - public CeresDBParser(String sql) { - this.sql = sql; - } - - @Override - public StatementType statementType() { - parse(); - - return this.statementType; - } - - @Override - public List tableNames() { - parse(); - - return this.stmt.getTables(); - } - - @Override - public List createColumns() { - parse(); - - return Utils.unsupported("`%s` unsupported yet!", "createColumns"); - } - - private void parse() { - if (this.parsed) { - return; - } - - this.parsed = true; - - try { - final CeresDBSqlStatement stmt = CeresDBSqlParser.parse(this.sql)[0]; - - switch (stmt.getStatementType()) { - case SELECT: - this.statementType = StatementType.Select; - break; - case CREATE: - this.statementType = StatementType.Create; - break; - case ALTER: - case ALTER_DELETE: - case ALTER_UPDATE: - this.statementType = StatementType.Alter; - break; - case DESCRIBE: - this.statementType = StatementType.Describe; - break; - case SHOW: - this.statementType = StatementType.Show; - break; - case DROP: - this.statementType = StatementType.Drop; - break; - case INSERT: - this.statementType = StatementType.Insert; - break; - case EXISTS: - this.statementType = StatementType.Exists; - break; - default: - this.statementType = StatementType.Unknown; - } - - this.stmt = stmt; - } catch (final Exception e) { - ThrowUtil.throwException(e); - } - } -} diff --git a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBParserFactory.java b/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBParserFactory.java deleted file mode 100644 index b8f9b02..0000000 --- a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBParserFactory.java +++ /dev/null @@ -1,17 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -package io.ceresdb.sql; - -import io.ceresdb.common.parser.SqlParser; -import io.ceresdb.common.parser.SqlParserFactory; -import io.ceresdb.common.SPI; - -@SPI(priority = 1) -public class CeresDBParserFactory implements SqlParserFactory { - - @Override - public SqlParser getParser(final String sql) { - return new CeresDBParser(sql); - } -} diff --git a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBSqlStatement.java b/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBSqlStatement.java deleted file mode 100644 index ad60be9..0000000 --- a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBSqlStatement.java +++ /dev/null @@ -1,259 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -package io.ceresdb.sql; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashMap; -import java.util.List; -import java.util.Locale; -import java.util.Map; -import java.util.Map.Entry; - -public class CeresDBSqlStatement { - public static final String DEFAULT_DATABASE = "system"; - public static final String DEFAULT_TABLE = "unknown"; - public static final List DEFAULT_TABLES = Collections.singletonList(DEFAULT_TABLE); - public static final List DEFAULT_PARAMETERS = Collections.emptyList(); - public static final Map DEFAULT_POSITIONS = Collections.emptyMap(); - - public static final String KEYWORD_EXISTS = "EXISTS"; - public static final String KEYWORD_REPLACE = "REPLACE"; - public static final String KEYWORD_TOTALS = "TOTALS"; - public static final String KEYWORD_VALUES = "VALUES"; - - private final String sql; - private final StatementType stmtType; - private final String database; - private final List tables; - private final List parameters; - private final Map positions; - - public CeresDBSqlStatement(String sql) { - this(sql, StatementType.UNKNOWN, null, null, null, null); - } - - public CeresDBSqlStatement(String sql, StatementType stmtType) { - this(sql, stmtType, null, null, null, null); - } - - public CeresDBSqlStatement(String sql, // - StatementType stmtType, // - String database, // - List tables, // - List parameters, // - Map positions) { - this.sql = sql; - this.stmtType = stmtType; - - this.database = database; - this.tables = tables == null || tables.isEmpty() ? DEFAULT_TABLES : - Collections.unmodifiableList(new ArrayList<>(tables)); - - if (parameters != null && parameters.size() > 0) { - this.parameters = Collections.unmodifiableList(new ArrayList<>(parameters)); - } else { - this.parameters = DEFAULT_PARAMETERS; - } - - if (positions != null && positions.size() > 0) { - final Map p = new HashMap<>(); - for (final Entry e : positions.entrySet()) { - final String keyword = e.getKey(); - final Integer position = e.getValue(); - - if (keyword != null && position != null) { - p.put(keyword.toUpperCase(Locale.ROOT), position); - } - } - this.positions = Collections.unmodifiableMap(p); - } else { - this.positions = DEFAULT_POSITIONS; - } - } - - public String getSQL() { - return this.sql; - } - - public boolean isRecognized() { - return stmtType != StatementType.UNKNOWN; - } - - public boolean isDDL() { - return this.stmtType.getLanguageType() == LanguageType.DDL; - } - - public boolean isDML() { - return this.stmtType.getLanguageType() == LanguageType.DML; - } - - public boolean isQuery() { - return this.stmtType.getOperationType() == OperationType.READ; - } - - public boolean isMutation() { - return this.stmtType.getOperationType() == OperationType.WRITE; - } - - public boolean isIdemponent() { - boolean result = this.stmtType.isIdempotent(); - - if (!result) { // try harder - switch (this.stmtType) { - case CREATE: - case DROP: - result = this.positions.containsKey(KEYWORD_EXISTS) || this.positions.containsKey(KEYWORD_REPLACE); - break; - default: - break; - } - } - - return result; - } - - public LanguageType getLanguageType() { - return this.stmtType.getLanguageType(); - } - - public OperationType getOperationType() { - return this.stmtType.getOperationType(); - } - - public StatementType getStatementType() { - return this.stmtType; - } - - public String getDatabase() { - return this.database; - } - - @SuppressWarnings("PMD") - public String getDatabaseOrDefault(String database) { - return this.database == null ? (database == null ? DEFAULT_DATABASE : database) : this.database; - } - - public List getTables() { - return this.tables; - } - - public boolean containsKeyword(String keyword) { - if (keyword == null || keyword.isEmpty()) { - return false; - } - - return positions.containsKey(keyword.toUpperCase(Locale.ROOT)); - } - - public boolean hasWithTotals() { - return this.positions.containsKey(KEYWORD_TOTALS); - } - - public boolean hasValues() { - return this.positions.containsKey(KEYWORD_VALUES); - } - - public List getParameters() { - return this.parameters; - } - - public int getStartPosition(String keyword) { - int position = -1; - - if (!this.positions.isEmpty() && keyword != null) { - Integer p = this.positions.get(keyword.toUpperCase(Locale.ROOT)); - if (p != null) { - position = p; - } - } - - return position; - } - - public int getEndPosition(String keyword) { - int position = getStartPosition(keyword); - - return position != -1 && keyword != null ? position + keyword.length() : position; - } - - public Map getPositions() { - return this.positions; - } - - @Override - public String toString() { - return "CeresDBSqlStatement{" + // - "sql='" + sql + '\'' + // - ", stmtType=" + stmtType + // - ", database='" + database + '\'' + // - ", tables='" + tables + '\'' + // - ", parameters=" + parameters + // - ", positions=" + positions + // - '}'; - } - - @Override - public int hashCode() { - final int prime = 31; - int result = 1; - result = prime * result + ((database == null) ? 0 : database.hashCode()); - result = prime * result + ((parameters == null) ? 0 : parameters.hashCode()); - result = prime * result + ((positions == null) ? 0 : positions.hashCode()); - result = prime * result + ((sql == null) ? 0 : sql.hashCode()); - result = prime * result + ((stmtType == null) ? 0 : stmtType.hashCode()); - result = prime * result + ((tables == null) ? 0 : tables.hashCode()); - return result; - } - - @Override - public boolean equals(Object obj) { - if (this == obj) { - return true; - } - if (obj == null) { - return false; - } - if (getClass() != obj.getClass()) { - return false; - } - final CeresDBSqlStatement other = (CeresDBSqlStatement) obj; - if (database == null) { - if (other.database != null) { - return false; - } - } else if (!database.equals(other.database)) { - return false; - } - if (parameters == null) { - if (other.parameters != null) { - return false; - } - } else if (!parameters.equals(other.parameters)) { - return false; - } - if (positions == null) { - if (other.positions != null) { - return false; - } - } else if (!positions.equals(other.positions)) { - return false; - } - if (sql == null) { - if (other.sql != null) { - return false; - } - } else if (!sql.equals(other.sql)) { - return false; - } - if (stmtType != other.stmtType) { - return false; - } - if (tables == null) { - return other.tables == null; - } else { - return tables.equals(other.tables); - } - } -} diff --git a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/LanguageType.java b/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/LanguageType.java deleted file mode 100644 index d3e9bd0..0000000 --- a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/LanguageType.java +++ /dev/null @@ -1,11 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -package io.ceresdb.sql; - -public enum LanguageType { - UNKNOWN, // unknown language - DCL, // data control language - DDL, // data definition language - DML // data manipulation language -} diff --git a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/OperationType.java b/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/OperationType.java deleted file mode 100644 index c9ebc46..0000000 --- a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/OperationType.java +++ /dev/null @@ -1,10 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -package io.ceresdb.sql; - -public enum OperationType { - UNKNOWN, // - READ, // - WRITE // -} diff --git a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/ParseException.java b/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/ParseException.java deleted file mode 100644 index 2104c64..0000000 --- a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/ParseException.java +++ /dev/null @@ -1,179 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -/* Generated by: ParserGeneratorCC: Do not edit this line. ParseException.java Version 1.1 */ -/* ParserGeneratorCCOptions:KEEP_LINE_COLUMN=true */ -package io.ceresdb.sql; - -/** - * This exception is thrown when parse errors are encountered. - * You can explicitly create objects of this exception type by - * calling the method generateParseException in the generated - * parser. - * - * You can modify this class to customize your error reporting - * mechanisms so long as you retain the public fields. - */ -public class ParseException extends Exception { - /** - * The end of line string for this machine. - */ - protected static final String EOL = System.getProperty("line.separator", "\n"); - - /** - * This constructor is used by the method "generateParseException" - * in the generated parser. Calling this constructor generates - * a new object of this type with the fields "currentToken", - * "expectedTokenSequences", and "tokenImage" set. - */ - public ParseException(final Token currentTokenVal, final int[][] expectedTokenSequencesVal, - final String[] tokenImageVal) { - super(_initialise(currentTokenVal, expectedTokenSequencesVal, tokenImageVal)); - currentToken = currentTokenVal; - expectedTokenSequences = expectedTokenSequencesVal; - tokenImage = tokenImageVal; - } - - /** - * The following constructors are for use by you for whatever - * purpose you can think of. Constructing the exception in this - * manner makes the exception behave in the normal way - i.e., as - * documented in the class "Throwable". The fields "errorToken", - * "expectedTokenSequences", and "tokenImage" do not contain - * relevant information. The JavaCC generated code does not use - * these constructors. - */ - - public ParseException() { - super(); - } - - /** Constructor with message. */ - public ParseException(String message) { - super(message); - } - - /** - * This is the last token that has been consumed successfully. If - * this object has been created due to a parse error, the token - * followng this token will (therefore) be the first error token. - */ - public Token currentToken; - - /** - * Each entry in this array is an array of integers. Each array - * of integers represents a sequence of tokens (by their ordinal - * values) that is expected at this point of the parse. - */ - public int[][] expectedTokenSequences; - - /** - * This is a reference to the "tokenImage" array of the generated - * parser within which the parse error occurred. This array is - * defined in the generated ...Constants interface. - */ - public String[] tokenImage; - - /** - * It uses "currentToken" and "expectedTokenSequences" to generate a parse - * error message and returns it. If this object has been created - * due to a parse error, and you do not catch it (it gets thrown - * from the parser) the correct error message - * gets displayed. - */ - private static String _initialise(final Token currentToken, final int[][] expectedTokenSequences, - final String[] tokenImage) { - StringBuilder expected = new StringBuilder(); - int maxSize = 0; - for (int i = 0; i < expectedTokenSequences.length; i++) { - if (maxSize < expectedTokenSequences[i].length) - maxSize = expectedTokenSequences[i].length; - for (int j = 0; j < expectedTokenSequences[i].length; j++) - expected.append(tokenImage[expectedTokenSequences[i][j]]).append(' '); - - if (expectedTokenSequences[i][expectedTokenSequences[i].length - 1] != 0) - expected.append("..."); - expected.append(EOL).append(" "); - } - - StringBuilder sb = new StringBuilder(); - sb.append("Encountered \""); - - Token tok = currentToken.next; - for (int i = 0; i < maxSize; i++) { - String tokenText = tok.image; - String escapedTokenText = add_escapes(tokenText); - if (i != 0) - sb.append(' '); - if (tok.kind == 0) { - sb.append(tokenImage[0]); - break; - } - sb.append(" " + tokenImage[tok.kind]); - sb.append(" \""); - sb.append(escapedTokenText); - sb.append("\""); - tok = tok.next; - } - sb.append("\" at line ").append(currentToken.next.beginLine).append(", column ") - .append(currentToken.next.beginColumn); - sb.append(".").append(EOL); - - if (expectedTokenSequences.length == 0) { - // Nothing to add here - } else { - sb.append(EOL).append("Was expecting").append(expectedTokenSequences.length == 1 ? ":" : " one of:") - .append(EOL).append(EOL).append(expected); - } - - return sb.toString(); - } - - /** - * Used to convert raw characters to their escaped version - * when these raw version cannot be used as part of an ASCII - * string literal. - */ - static String add_escapes(String str) { - final StringBuilder retval = new StringBuilder(); - for (int i = 0; i < str.length(); i++) { - final char ch = str.charAt(i); - switch (ch) { - case '\b': - retval.append("\\b"); - continue; - case '\t': - retval.append("\\t"); - continue; - case '\n': - retval.append("\\n"); - continue; - case '\f': - retval.append("\\f"); - continue; - case '\r': - retval.append("\\r"); - continue; - case '\"': - retval.append("\\\""); - continue; - case '\'': - retval.append("\\\'"); - continue; - case '\\': - retval.append("\\\\"); - continue; - default: - if (ch < 0x20 || ch > 0x7e) { - String s = "0000" + Integer.toString(ch, 16); - retval.append("\\u").append(s.substring(s.length() - 4, s.length())); - } else { - retval.append(ch); - } - continue; - } - } - return retval.toString(); - } -} -/* ParserGeneratorCC - OriginalChecksum=8e4301a6e1c05b53bd28faed18429f18 (do not edit this line) */ diff --git a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/ParseHandler.java b/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/ParseHandler.java deleted file mode 100644 index f315b0d..0000000 --- a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/ParseHandler.java +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -package io.ceresdb.sql; - -import java.util.List; -import java.util.Map; - -@SuppressWarnings("unused") -public abstract class ParseHandler { - - /** - * Handle macro like "#include('/tmp/template.sql')". - * - * @param name name of the macro - * @param parameters parameters - * @return output of the macro, could be null or empty string - */ - public String handleMacro(final String name, final List parameters) { - return null; - } - - /** - * Handle parameter. - * - * @param database database - * @param tables tables - * @param columnIndex columnIndex(starts from 1 not 0) - * @return parameter value - */ - public String handleParameter(final String database, final List tables, final int columnIndex) { - return null; - } - - /** - * Handle statement. - * - * @param sql sql statement - * @param stmtType statement type - * @param database database - * @param tables tables - * @param parameters positions of parameters - * @param positions keyword positions - * @return sql statement, or null means no change - */ - public CeresDBSqlStatement handleStatement(final String sql, // - final StatementType stmtType, // - final String database, // - final List tables, // - final List parameters, // - final Map positions) { - return null; - } -} diff --git a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/SimpleCharStream.java b/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/SimpleCharStream.java deleted file mode 100644 index af53e95..0000000 --- a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/SimpleCharStream.java +++ /dev/null @@ -1,93 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -/* Generated by: ParserGeneratorCC: Do not edit this line. SimpleCharStream.java Version 1.1 */ -/* ParserGeneratorCCOptions:SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ -package io.ceresdb.sql; - -/** - * An implementation of interface CharStream, where the stream is assumed to - * contain only ASCII characters (without unicode processing). - */ -public class SimpleCharStream extends AbstractCharStream { - private java.io.Reader m_aIS; - - /** Constructor. */ - public SimpleCharStream(final java.io.Reader dstream, final int startline, final int startcolumn, - final int buffersize) { - super(startline, startcolumn, buffersize); - m_aIS = dstream; - } - - /** Constructor. */ - public SimpleCharStream(final java.io.Reader dstream, final int startline, final int startcolumn) { - this(dstream, startline, startcolumn, DEFAULT_BUF_SIZE); - } - - /** Constructor. */ - public SimpleCharStream(final java.io.Reader dstream) { - this(dstream, 1, 1, DEFAULT_BUF_SIZE); - } - - /** Reinitialise. */ - public void reInit(final java.io.Reader dstream, final int startline, final int startcolumn, final int buffersize) { - m_aIS = dstream; - super.reInit(startline, startcolumn, buffersize); - } - - /** Reinitialise. */ - public void reInit(final java.io.Reader dstream, final int startline, final int startcolumn) { - reInit(dstream, startline, startcolumn, DEFAULT_BUF_SIZE); - } - - /** Reinitialise. */ - public void reInit(final java.io.Reader dstream) { - reInit(dstream, 1, 1, DEFAULT_BUF_SIZE); - } - - /** Constructor. */ - public SimpleCharStream(final java.io.InputStream dstream, final java.nio.charset.Charset encoding, - final int startline, final int startcolumn, final int buffersize) { - this(new java.io.InputStreamReader(dstream, encoding), startline, startcolumn, buffersize); - } - - /** Constructor. */ - public SimpleCharStream(final java.io.InputStream dstream, final java.nio.charset.Charset encoding, - final int startline, final int startcolumn) { - this(dstream, encoding, startline, startcolumn, DEFAULT_BUF_SIZE); - } - - /** Constructor. */ - public SimpleCharStream(final java.io.InputStream dstream, final java.nio.charset.Charset encoding) { - this(dstream, encoding, 1, 1, DEFAULT_BUF_SIZE); - } - - /** Reinitialise. */ - public void reInit(final java.io.InputStream dstream, final java.nio.charset.Charset encoding) { - reInit(dstream, encoding, 1, 1, DEFAULT_BUF_SIZE); - } - - /** Reinitialise. */ - public void reInit(final java.io.InputStream dstream, final java.nio.charset.Charset encoding, final int startline, - final int startcolumn) { - reInit(dstream, encoding, startline, startcolumn, DEFAULT_BUF_SIZE); - } - - /** Reinitialise. */ - public void reInit(final java.io.InputStream dstream, final java.nio.charset.Charset encoding, final int startline, - final int startcolumn, final int buffersize) { - reInit(new java.io.InputStreamReader(dstream, encoding), startline, startcolumn, buffersize); - } - - @Override - protected int streamRead(final char[] aBuf, final int nOfs, final int nLen) throws java.io.IOException { - return m_aIS.read(aBuf, nOfs, nLen); - } - - @Override - protected void streamClose() throws java.io.IOException { - if (m_aIS != null) - m_aIS.close(); - } -} -/* ParserGeneratorCC - OriginalChecksum=49f72b684cd7cc7409e1ade8c7809d08 (do not edit this line) */ diff --git a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/SqlUtils.java b/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/SqlUtils.java deleted file mode 100644 index 3ab004b..0000000 --- a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/SqlUtils.java +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -package io.ceresdb.sql; - -public final class SqlUtils { - - public static boolean isQuote(final char ch) { - return ch == '"' || ch == '\'' || ch == '`'; - } - - /** - * Escape quotes in given string. - * - * @param str string - * @param quote quote to escape - * @return escaped string - */ - public static String escape(final String str, final char quote) { - if (str == null) { - return null; - } - - final int len = str.length(); - final StringBuilder buf = new StringBuilder(len + 10).append(quote); - - for (int i = 0; i < len; i++) { - char ch = str.charAt(i); - if (ch == quote || ch == '\\') { - buf.append('\\'); - } - buf.append(ch); - } - - return buf.append(quote).toString(); - } - - /** - * Unescape quoted string. - * - * @param str quoted string - * @return unescaped string - */ - @SuppressWarnings("PMD") - public static String unescape(final String str) { - if (str == null || str.isEmpty()) { - return str; - } - - int len = str.length(); - final char quote = str.charAt(0); - if (!isQuote(quote) || quote != str.charAt(len - 1)) { // not a quoted string - return str; - } - - final StringBuilder buf = new StringBuilder(len = len - 1); - for (int i = 1; i < len; i++) { - char ch = str.charAt(i); - - if (++i >= len) { - buf.append(ch); - } else { - char nextChar = str.charAt(i); - if (ch == '\\' || (ch == quote && nextChar == quote)) { - buf.append(nextChar); - } else { - buf.append(ch); - i--; - } - } - } - - return buf.toString(); - } - - private SqlUtils() { - } -} diff --git a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/StatementType.java b/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/StatementType.java deleted file mode 100644 index a0606bd..0000000 --- a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/StatementType.java +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -package io.ceresdb.sql; - -public enum StatementType { - UNKNOWN(LanguageType.UNKNOWN, OperationType.UNKNOWN, false), // unknown statement - ALTER(LanguageType.DDL, OperationType.UNKNOWN, false), // alter statement - ALTER_DELETE(LanguageType.DDL, OperationType.WRITE, false), // delete statement - ALTER_UPDATE(LanguageType.DDL, OperationType.WRITE, false), // update statement - CHECK(LanguageType.DDL, OperationType.UNKNOWN, true), // check statement - CREATE(LanguageType.DDL, OperationType.UNKNOWN, false), // create statement - DELETE(LanguageType.DML, OperationType.WRITE, false), // the upcoming light-weight delete statement - DESCRIBE(LanguageType.DDL, OperationType.READ, true), // describe/desc statement - DROP(LanguageType.DDL, OperationType.UNKNOWN, false), // drop statement - EXISTS(LanguageType.DML, OperationType.READ, true), // exists statement - EXPLAIN(LanguageType.DDL, OperationType.READ, true), // explain statement - INSERT(LanguageType.DML, OperationType.WRITE, false), // insert statement - SELECT(LanguageType.DML, OperationType.READ, true), // select statement - SET(LanguageType.DCL, OperationType.UNKNOWN, true), // set statement - SHOW(LanguageType.DDL, OperationType.READ, true), // show statement - SYSTEM(LanguageType.DDL, OperationType.UNKNOWN, false), // system statement - TRUNCATE(LanguageType.DDL, OperationType.UNKNOWN, true), // truncate statement - UPDATE(LanguageType.DML, OperationType.WRITE, false), // the upcoming light-weight update statement - USE(LanguageType.DDL, OperationType.UNKNOWN, true), // use statement - WATCH(LanguageType.DDL, OperationType.UNKNOWN, true); // watch statement - - private final LanguageType langType; - private final OperationType opType; - private final boolean idempotent; - - StatementType(LanguageType langType, OperationType operationType, boolean idempotent) { - this.langType = langType; - this.opType = operationType; - this.idempotent = idempotent; - } - - LanguageType getLanguageType() { - return this.langType; - } - - OperationType getOperationType() { - return this.opType; - } - - boolean isIdempotent() { - return this.idempotent; - } -} diff --git a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/Token.java b/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/Token.java deleted file mode 100644 index 67b33c0..0000000 --- a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/Token.java +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -/* Generated by: ParserGeneratorCC: Do not edit this line. Token.java Version 1.1 */ -/* ParserGeneratorCCOptions:TOKEN_EXTENDS=,KEEP_LINE_COLUMN=true,SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ -package io.ceresdb.sql; - -/** - * Describes the input token stream. - */ - -public class Token implements java.io.Serializable { - /** - * The version identifier for this Serializable class. - * Increment only if the serialized form of the - * class changes. - */ - private static final long serialVersionUID = 1L; - - /** - * An integer that describes the kind of this token. This numbering - * system is determined by JavaCCParser, and a table of these numbers is - * stored in the file ...Constants.java. - */ - public int kind; - - /** The line number of the first character of this Token. */ - public int beginLine; - /** The column number of the first character of this Token. */ - public int beginColumn; - /** The line number of the last character of this Token. */ - public int endLine; - /** The column number of the last character of this Token. */ - public int endColumn; - - /** - * The string image of the token. - */ - public String image; - - /** - * A reference to the next regular (non-special) token from the input - * stream. If this is the last token from the input stream, or if the - * token manager has not read tokens beyond this one, this field is - * set to null. This is true only if this token is also a regular - * token. Otherwise, see below for a description of the contents of - * this field. - */ - public Token next; - - /** - * This field is used to access special tokens that occur prior to this - * token, but after the immediately preceding regular (non-special) token. - * If there are no such special tokens, this field is set to null. - * When there are more than one such special token, this field refers - * to the last of these special tokens, which in turn refers to the next - * previous special token through its specialToken field, and so on - * until the first special token (whose specialToken field is null). - * The next fields of special tokens refer to other special tokens that - * immediately follow it (without an intervening regular token). If there - * is no such token, this field is null. - */ - public Token specialToken; - - /** - * No-argument constructor - */ - public Token() { - } - - /** - * Constructs a new token for the specified Image. - */ - public Token(final int nKind) { - this(nKind, null); - } - - /** - * Constructs a new token for the specified Image and Kind. - */ - public Token(final int nKind, final String sImage) { - this.kind = nKind; - this.image = sImage; - } - - /** - * An optional attribute value of the Token. - * Tokens which are not used as syntactic sugar will often contain - * meaningful values that will be used later on by the compiler or - * interpreter. This attribute value is often different from the image. - * Any subclass of Token that actually wants to return a non-null value can - * override this method as appropriate. - */ - public Object getValue() { - return null; - } - - /** - * Returns the image. - */ - @Override - public String toString() { - return image; - } - - /** - * Returns a new Token object, by default. However, if you want, you - * can create and return subclass objects based on the value of ofKind. - * Simply add the cases to the switch for all those special cases. - * For example, if you have a subclass of Token called IDToken that - * you want to create if ofKind is ID, simply add something like : - * - * case MyParserConstants.ID : return new IDToken(ofKind, image); - * - * to the following switch statement. Then you can cast matchedToken - * variable to the appropriate type and use sit in your lexical actions. - */ - public static Token newToken(int ofKind, String image) { - switch (ofKind) { - default: - return new Token(ofKind, image); - } - } - - public static Token newToken(int ofKind) { - return newToken(ofKind, null); - } - -} -/* ParserGeneratorCC - OriginalChecksum=e9f5d05e147c2a71efaab522c5715e99 (do not edit this line) */ diff --git a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/TokenMgrException.java b/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/TokenMgrException.java deleted file mode 100644 index d509c77..0000000 --- a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/TokenMgrException.java +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -/* Generated by: ParserGeneratorCC: Do not edit this line. TokenMgrException.java Version 1.1 */ -/* ParserGeneratorCCOptions: */ -package io.ceresdb.sql; - -/** Token Manager Error. */ -public class TokenMgrException extends RuntimeException { - - /** - * The version identifier for this Serializable class. - * Increment only if the serialized form of the - * class changes. - */ - private static final long serialVersionUID = 1L; - - /* - * Ordinals for various reasons why an Error of this type can be thrown. - */ - - /** - * Lexical error occurred. - */ - public static final int LEXICAL_ERROR = 0; - - /** - * An attempt was made to create a second instance of a static token manager. - */ - public static final int STATIC_LEXER_ERROR = 1; - - /** - * Tried to change to an invalid lexical state. - */ - public static final int INVALID_LEXICAL_STATE = 2; - - /** - * Detected (and bailed out of) an infinite loop in the token manager. - */ - public static final int LOOP_DETECTED = 3; - - /** - * Indicates the reason why the exception is thrown. It will have - * one of the above 4 values. - */ - int errorCode; - - /** - * Replaces unprintable characters by their escaped (or unicode escaped) - * equivalents in the given string - */ - protected static final String addEscapes(String str) { - StringBuilder retval = new StringBuilder(); - for (int i = 0; i < str.length(); i++) { - final char ch = str.charAt(i); - switch (ch) { - case '\b': - retval.append("\\b"); - continue; - case '\t': - retval.append("\\t"); - continue; - case '\n': - retval.append("\\n"); - continue; - case '\f': - retval.append("\\f"); - continue; - case '\r': - retval.append("\\r"); - continue; - case '\"': - retval.append("\\\""); - continue; - case '\'': - retval.append("\\\'"); - continue; - case '\\': - retval.append("\\\\"); - continue; - default: - if (ch < 0x20 || ch > 0x7e) { - String s = "0000" + Integer.toString(ch, 16); - retval.append("\\u").append(s.substring(s.length() - 4, s.length())); - } else { - retval.append(ch); - } - continue; - } - } - return retval.toString(); - } - - /** - * Returns a detailed message for the Error when it is thrown by the - * token manager to indicate a lexical error. - * Parameters : - * EOFSeen : indicates if EOF caused the lexical error - * curLexState : lexical state in which this error occurred - * errorLine : line number when the error occurred - * errorColumn : column number when the error occurred - * errorAfter : prefix that was seen before this error occurred - * curchar : the offending character - * Note: You can customize the lexical error message by modifying this method. - */ - protected static String LexicalErr(boolean EOFSeen, int lexState, int errorLine, int errorColumn, - String errorAfter, int curChar) { - char curChar1 = (char) curChar; - return ("Lexical error at line " + errorLine + ", column " + errorColumn + ". Encountered: " - + (EOFSeen ? " " : ("\"" + addEscapes(String.valueOf(curChar1)) + "\"") + " (" + curChar + "), ") - + "after : \"" + addEscapes(errorAfter) + "\""); - } - - /** - * You can also modify the body of this method to customize your error messages. - * For example, cases like LOOP_DETECTED and INVALID_LEXICAL_STATE are not - * of end-users concern, so you can return something like : - * - * "Internal Error : Please file a bug report .... " - * - * from this method for such cases in the release version of your parser. - */ - @Override - public String getMessage() { - return super.getMessage(); - } - - /* - * Constructors of various flavors follow. - */ - /** No arg constructor. */ - public TokenMgrException() { - } - - /** Constructor with message and reason. */ - public TokenMgrException(String message, int reason) { - super(message); - errorCode = reason; - } - - /** Full Constructor. */ - public TokenMgrException(boolean EOFSeen, int lexState, int errorLine, int errorColumn, String errorAfter, - int curChar, int reason) { - this(LexicalErr(EOFSeen, lexState, errorLine, errorColumn, errorAfter, curChar), reason); - } -} -/* ParserGeneratorCC - OriginalChecksum=14e3d675e6e8e95390f5e2ca56a6a76c (do not edit this line) */ diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/AbstractCharStream.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/AbstractCharStream.java new file mode 100644 index 0000000..8a77b85 --- /dev/null +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/AbstractCharStream.java @@ -0,0 +1,547 @@ +/* Generated by: ParserGeneratorCC: Do not edit this line. AbstractCharStream.java Version 1.1 */ +/* ParserGeneratorCCOptions:SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ +package org.apache.horaedb.sql; + +/** + * An implementation of interface CharStream, where the stream is assumed to + * contain only ASCII characters (without unicode processing). + */ + +public +abstract class AbstractCharStream +implements CharStream +{ + /** Default buffer size if nothing is specified */ + public static final int DEFAULT_BUF_SIZE = 4096; + + static final int hexval (final char c) throws java.io.IOException + { + switch (c) + { + case '0': + return 0; + case '1': + return 1; + case '2': + return 2; + case '3': + return 3; + case '4': + return 4; + case '5': + return 5; + case '6': + return 6; + case '7': + return 7; + case '8': + return 8; + case '9': + return 9; + case 'a': + case 'A': + return 10; + case 'b': + case 'B': + return 11; + case 'c': + case 'C': + return 12; + case 'd': + case 'D': + return 13; + case 'e': + case 'E': + return 14; + case 'f': + case 'F': + return 15; + default: + throw new java.io.IOException ("Invalid hex char '" + c + "' (=" + (int) c + ") provided!"); + } + } + + /** Tab size for formatting. Usually in the range 1 to 8. */ + private int m_nTabSize = 1; + + /** Internal circular buffer */ + protected char[] buffer; + + /** Overall buffer size - same as buffer.length */ + protected int bufsize; + + /** Current read position in buffer. */ + protected int bufpos; + + /** The number of unoccupied buffer array positions */ + protected int available; + + /** The first array index (of `buffer`) that the current token starts */ + protected int tokenBegin; + + /** Characters in the backup/pushBack buffer */ + protected int inBuf; + protected int maxNextCharInd; + + private int[] m_aBufLine; + private int[] m_aBufColumn; + + // Current line number + private int m_nLineNo; + // Current column number + private int m_nColumnNo; + + // Was the previous character a "\r" char? + private boolean m_bPrevCharIsCR; + // Was the previous character a "\n" char? + private boolean m_bPrevCharIsLF; + + // Is line/column tracking enabled? + private boolean m_bTrackLineColumn = true; + + + /** Constructor. */ + public AbstractCharStream(final int nStartLine, + final int nStartColumn, + final int nBufferSize) + { + reInit (nStartLine, nStartColumn, nBufferSize); + } + + /** Reinitialise. */ + public final void reInit(final int nStartLine, + final int nStartColumn, + final int nBufferSize) + { + m_nLineNo = nStartLine; + m_nColumnNo = nStartColumn - 1; + m_bPrevCharIsCR = false; + m_bPrevCharIsLF = false; + if (buffer == null || nBufferSize != buffer.length) + { + bufsize = nBufferSize; + available = nBufferSize; + buffer = new char[nBufferSize]; + m_aBufLine = new int[nBufferSize]; + m_aBufColumn = new int[nBufferSize]; + } + maxNextCharInd = 0; + inBuf = 0; + tokenBegin = 0; + bufpos = -1; + } + + /** + * Read from the underlying stream. + * @param aBuf the buffer to be filled + * @param nOfs The offset into the buffer. 0-based + * @param nLen Number of chars to read. + * @return Number of effective chars read, or -1 on error. + */ + protected abstract int streamRead (char[] aBuf, int nOfs, int nLen) throws java.io.IOException; + + /** + * Close the underlying stream. + * @throws java.io.IOException If closing fails. + */ + protected abstract void streamClose () throws java.io.IOException; + + // Override this method if you need more aggressive buffer size expansion + protected int getBufSizeAfterExpansion () + { + // Double the size by default + return bufsize * 2; + } + + protected void expandBuff (final boolean bWrapAround) + { + // Get the new buffer size + final int nNewBufSize = getBufSizeAfterExpansion (); + + final char[] newbuffer = new char[nNewBufSize]; + final int[] newbufline = new int[nNewBufSize]; + final int[] newbufcolumn = new int[nNewBufSize]; + + // Number of chars to be preserved + final int nPreservedChars = bufsize - tokenBegin; + + if (bWrapAround) + { + // Move from offset "tokenBegin" to offset 0 + // arraycopy(src, srcPos, dest, destPos, length) + + // copy the "tail end" to the "start" (index 0) of the new buffer array + System.arraycopy(buffer, tokenBegin, newbuffer, 0, nPreservedChars); + + // copy the remaining "wrap around" content of the buffer from the start of the original buffer (starting at srcPos index 0) + System.arraycopy(buffer, 0, newbuffer, nPreservedChars, bufpos); + + // swap the new buffer in place of the old buffer + buffer = newbuffer; + + System.arraycopy(m_aBufLine, tokenBegin, newbufline, 0, nPreservedChars); + System.arraycopy(m_aBufLine, 0, newbufline, nPreservedChars, bufpos); + m_aBufLine = newbufline; + + System.arraycopy(m_aBufColumn, tokenBegin, newbufcolumn, 0, nPreservedChars); + System.arraycopy(m_aBufColumn, 0, newbufcolumn, nPreservedChars, bufpos); + m_aBufColumn = newbufcolumn; + + bufpos += nPreservedChars; + maxNextCharInd = bufpos; + } + else + { + // Move from offset "tokenBegin" to offset 0 + + System.arraycopy(buffer, tokenBegin, newbuffer, 0, nPreservedChars); + buffer = newbuffer; + + System.arraycopy(m_aBufLine, tokenBegin, newbufline, 0, nPreservedChars); + m_aBufLine = newbufline; + + System.arraycopy(m_aBufColumn, tokenBegin, newbufcolumn, 0, nPreservedChars); + m_aBufColumn = newbufcolumn; + + bufpos -= tokenBegin; + maxNextCharInd = bufpos; + } + + // Increase buffer size + bufsize = nNewBufSize; + available = nNewBufSize; + tokenBegin = 0; + } + + protected final void internalAdjustBuffSize() + { + final int nHalfBufferSize = bufsize / 2; + if (available == bufsize) + { + if (tokenBegin < 0) + { + // If this method is called from "beginToken()" + // Just refill the buffer from the start + bufpos = 0; + maxNextCharInd = 0; + } + else + if (tokenBegin > nHalfBufferSize) + { + // The token started in the second half - fill the front part + bufpos = 0; + maxNextCharInd = 0; + + // Available bytes are > 50% + available = tokenBegin; + } + else + { + // Token starts in the first half + // just append to existing buffer + expandBuff (false); + } + } + else + { + // A token was read across array boundaries + if (available > tokenBegin) + { + available = bufsize; + } + else + if ((tokenBegin - available) < nHalfBufferSize) + { + expandBuff (true); + } + else + { + available = tokenBegin; + } + } + } + + protected void fillBuff() throws java.io.IOException + { + if (maxNextCharInd == available) + internalAdjustBuffSize(); + + try + { + // Read from underlying stream + final int nCharsRead = streamRead (buffer, maxNextCharInd, available - maxNextCharInd); + if (nCharsRead == -1) + { + // We reached the end of the file + streamClose (); + + // Caught down below and re-thrown + throw new java.io.IOException("PGCC end of stream"); + } + maxNextCharInd += nCharsRead; + } + catch (final java.io.IOException ex) + { + --bufpos; + // ?What is the reason of this? Backup of 0 does nothing + backup (0); + if (tokenBegin == -1) + { + // Error occurred in "beginToken()" + tokenBegin = bufpos; + } + throw ex; + } + } + + protected final void internalSetBufLineColumn (final int nLine, final int nColumn) + { + m_aBufLine[bufpos] = nLine; + m_aBufColumn[bufpos] = nColumn; + } + + protected final void internalUpdateLineColumn(final char c) + { + m_nColumnNo++; + + if (m_bPrevCharIsLF) + { + // It's a "\r\n" or "\n" + // Start of a new line + m_bPrevCharIsLF = false; + m_nColumnNo = 1; + m_nLineNo++; + } + else + if (m_bPrevCharIsCR) + { + m_bPrevCharIsCR = false; + if (c == '\n') + { + // It's a "\r\n" + m_bPrevCharIsLF = true; + } + else + { + // It's only a "\r" + m_nColumnNo = 1; + m_nLineNo++; + } + } + + switch (c) + { + case '\r': + m_bPrevCharIsCR = true; + break; + case '\n': + m_bPrevCharIsLF = true; + break; + case '\t': + m_nColumnNo--; + m_nColumnNo += (m_nTabSize - (m_nColumnNo % m_nTabSize)); + break; + } + + internalSetBufLineColumn (m_nLineNo, m_nColumnNo); + } + + public char readChar() throws java.io.IOException + { + if (inBuf > 0) + { + // Something is left from last backup + --inBuf; + + ++bufpos; + if (bufpos == bufsize) + { + // Buffer overflow + bufpos = 0; + } + + return buffer[bufpos]; + } + + ++bufpos; + if (bufpos >= maxNextCharInd) + fillBuff(); + + final char c = buffer[bufpos]; + + if (m_bTrackLineColumn) + internalUpdateLineColumn(c); + return c; + } + + public char beginToken() throws java.io.IOException + { + tokenBegin = -1; + final char c = readChar(); + tokenBegin = bufpos; + return c; + } + + public int getBeginColumn () + { + return m_aBufColumn[tokenBegin]; + } + + public int getBeginLine () + { + return m_aBufLine[tokenBegin]; + } + + public int getEndColumn () + { + return m_aBufColumn[bufpos]; + } + + public int getEndLine () + { + return m_aBufLine[bufpos]; + } + + public void backup (final int nAmount) + { + if (nAmount > bufsize) + throw new IllegalStateException ("Cannot back " + nAmount + " chars which is larger than the internal buffer size (" + bufsize + ")"); + + inBuf += nAmount; + bufpos -= nAmount; + if (bufpos < 0) + { + // Buffer underflow (modulo) + bufpos += bufsize; + } + } + + public String getImage() + { + if (bufpos >= tokenBegin) + { + // from tokenBegin to bufpos + return new String (buffer, tokenBegin, bufpos - tokenBegin + 1); + } + + // from tokenBegin to bufsize, and from 0 to bufpos + return new String (buffer, tokenBegin, bufsize - tokenBegin) + + new String (buffer, 0, bufpos + 1); + } + + public char[] getSuffix (final int len) + { + char[] ret = new char[len]; + if ((bufpos + 1) >= len) + { + // one piece + System.arraycopy(buffer, bufpos - len + 1, ret, 0, len); + } + else + { + // Wrap around + final int nPart1 = len - bufpos - 1; + System.arraycopy(buffer, bufsize - nPart1, ret, 0, nPart1); + System.arraycopy(buffer, 0, ret, nPart1, bufpos + 1); + } + return ret; + } + + public void done() + { + buffer = null; + m_aBufLine = null; + m_aBufColumn = null; + } + + public final int getTabSize() + { + return m_nTabSize; + } + + public final void setTabSize (final int nTabSize) + { + m_nTabSize = nTabSize; + } + + /** + * Method to adjust line and column numbers for the start of a token. + * This is used internally to + */ + public final void adjustBeginLineColumn(final int nNewLine, final int newCol) + { + int start = tokenBegin; + int newLine = nNewLine; + + int len; + if (bufpos >= tokenBegin) + { + len = bufpos - tokenBegin + inBuf + 1; + } + else + { + len = bufsize - tokenBegin + bufpos + 1 + inBuf; + } + + int i = 0; + int j = 0; + int k = 0; + int nextColDiff = 0; + int columnDiff = 0; + + // TODO disassemble meaning and split up + while (i < len && m_aBufLine[j = start % bufsize] == m_aBufLine[k = ++start % bufsize]) + { + m_aBufLine[j] = newLine; + nextColDiff = columnDiff + m_aBufColumn[k] - m_aBufColumn[j]; + m_aBufColumn[j] = newCol + columnDiff; + columnDiff = nextColDiff; + i++; + } + + if (i < len) + { + m_aBufLine[j] = newLine++; + m_aBufColumn[j] = newCol + columnDiff; + + while (i++ < len) + { + // TODO disassemble meaning and split up + if (m_aBufLine[j = start % bufsize] != m_aBufLine[++start % bufsize]) + m_aBufLine[j] = newLine++; + else + m_aBufLine[j] = newLine; + } + } + + m_nLineNo = m_aBufLine[j]; + m_nColumnNo = m_aBufColumn[j]; + } + + /** + * @return the current line number. 0-based. + */ + protected final int getLine () + { + return m_nLineNo; + } + + /** + * @return the current column number. 0-based. + */ + protected final int getColumn () + { + return m_nColumnNo; + } + + public final boolean isTrackLineColumn () + { + return m_bTrackLineColumn; + } + + public final void setTrackLineColumn (final boolean bTrackLineColumn) + { + m_bTrackLineColumn = bTrackLineColumn; + } +} +/* ParserGeneratorCC - OriginalChecksum=524eaa6bb01d5bbec20d3967f16aaa23 (do not edit this line) */ diff --git a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBSqlParser.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBSqlParser.java similarity index 99% rename from horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBSqlParser.java rename to horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBSqlParser.java index 319ccd0..696175e 100644 --- a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBSqlParser.java +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBSqlParser.java @@ -1,6 +1,6 @@ /* CeresDBSqlParser.java */ /* Generated by: ParserGeneratorCC: Do not edit this line. CeresDBSqlParser.java */ -package io.ceresdb.sql; +package org.apache.horaedb.sql; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBSqlParserConstants.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBSqlParserConstants.java similarity index 99% rename from horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBSqlParserConstants.java rename to horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBSqlParserConstants.java index 98de6e2..7899568 100644 --- a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBSqlParserConstants.java +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBSqlParserConstants.java @@ -1,5 +1,5 @@ /* Generated by: ParserGeneratorCC: Do not edit this line. CeresDBSqlParserConstants.java */ -package io.ceresdb.sql; +package org.apache.horaedb.sql; /** diff --git a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBSqlParserTokenManager.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBSqlParserTokenManager.java similarity index 99% rename from horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBSqlParserTokenManager.java rename to horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBSqlParserTokenManager.java index 1a4e13f..25ded2e 100644 --- a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CeresDBSqlParserTokenManager.java +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBSqlParserTokenManager.java @@ -1,6 +1,6 @@ /* CeresDBSqlParserTokenManager.java */ /* Generated by: ParserGeneratorCC: Do not edit this line. CeresDBSqlParserTokenManager.java */ -package io.ceresdb.sql; +package org.apache.horaedb.sql; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.io.StringReader; diff --git a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CharStream.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CharStream.java similarity index 95% rename from horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CharStream.java rename to horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CharStream.java index 5bb6575..86f8c87 100644 --- a/horaedb-sql-javacc/src/main/java/io/ceresdb/sql/CharStream.java +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CharStream.java @@ -1,9 +1,6 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ /* Generated by: ParserGeneratorCC: Do not edit this line. CharStream.java Version 1.1 */ /* ParserGeneratorCCOptions:SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ -package io.ceresdb.sql; +package org.apache.horaedb.sql; /** * This interface describes a character stream that maintains line and @@ -124,4 +121,4 @@ public interface CharStream { */ void setTrackLineColumn(boolean trackLineColumn); } -/* ParserGeneratorCC - OriginalChecksum=a0f02fb813390766c4c59bdd9cd91295 (do not edit this line) */ +/* ParserGeneratorCC - OriginalChecksum=f98cc7f189fbb29d51e5a77afb61a945 (do not edit this line) */ diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/ParseException.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/ParseException.java new file mode 100644 index 0000000..1653f3d --- /dev/null +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/ParseException.java @@ -0,0 +1,189 @@ +/* Generated by: ParserGeneratorCC: Do not edit this line. ParseException.java Version 1.1 */ +/* ParserGeneratorCCOptions:KEEP_LINE_COLUMN=true */ +package org.apache.horaedb.sql; + +/** + * This exception is thrown when parse errors are encountered. + * You can explicitly create objects of this exception type by + * calling the method generateParseException in the generated + * parser. + * + * You can modify this class to customize your error reporting + * mechanisms so long as you retain the public fields. + */ +public class ParseException extends Exception { + /** + * The end of line string for this machine. + */ + protected static final String EOL = System.getProperty("line.separator", "\n"); + + /** + * This constructor is used by the method "generateParseException" + * in the generated parser. Calling this constructor generates + * a new object of this type with the fields "currentToken", + * "expectedTokenSequences", and "tokenImage" set. + */ + public ParseException(final Token currentTokenVal, + final int[][] expectedTokenSequencesVal, + final String[] tokenImageVal) + { + super(_initialise(currentTokenVal, expectedTokenSequencesVal, tokenImageVal)); + currentToken = currentTokenVal; + expectedTokenSequences = expectedTokenSequencesVal; + tokenImage = tokenImageVal; + } + + /** + * The following constructors are for use by you for whatever + * purpose you can think of. Constructing the exception in this + * manner makes the exception behave in the normal way - i.e., as + * documented in the class "Throwable". The fields "errorToken", + * "expectedTokenSequences", and "tokenImage" do not contain + * relevant information. The JavaCC generated code does not use + * these constructors. + */ + + public ParseException() { + super(); + } + + /** Constructor with message. */ + public ParseException(String message) { + super(message); + } + + + /** + * This is the last token that has been consumed successfully. If + * this object has been created due to a parse error, the token + * followng this token will (therefore) be the first error token. + */ + public Token currentToken; + + /** + * Each entry in this array is an array of integers. Each array + * of integers represents a sequence of tokens (by their ordinal + * values) that is expected at this point of the parse. + */ + public int[][] expectedTokenSequences; + + /** + * This is a reference to the "tokenImage" array of the generated + * parser within which the parse error occurred. This array is + * defined in the generated ...Constants interface. + */ + public String[] tokenImage; + + /** + * It uses "currentToken" and "expectedTokenSequences" to generate a parse + * error message and returns it. If this object has been created + * due to a parse error, and you do not catch it (it gets thrown + * from the parser) the correct error message + * gets displayed. + */ + private static String _initialise(final Token currentToken, + final int[][] expectedTokenSequences, + final String[] tokenImage) + { + StringBuilder expected = new StringBuilder(); + int maxSize = 0; + for (int i = 0; i < expectedTokenSequences.length; i++) { + if (maxSize < expectedTokenSequences[i].length) + maxSize = expectedTokenSequences[i].length; + for (int j = 0; j < expectedTokenSequences[i].length; j++) + expected.append(tokenImage[expectedTokenSequences[i][j]]).append(' '); + + if (expectedTokenSequences[i][expectedTokenSequences[i].length - 1] != 0) + expected.append("..."); + expected.append(EOL).append(" "); + } + + StringBuilder sb = new StringBuilder(); + sb.append ("Encountered \""); + + Token tok = currentToken.next; + for (int i = 0; i < maxSize; i++) { + String tokenText = tok.image; + String escapedTokenText = add_escapes(tokenText); + if (i != 0) + sb.append (' '); + if (tok.kind == 0) { + sb.append(tokenImage[0]); + break; + } + sb.append(" " + tokenImage[tok.kind]); + sb.append(" \""); + sb.append(escapedTokenText); + sb.append("\""); + tok = tok.next; + } + sb.append ("\" at line ") + .append (currentToken.next.beginLine) + .append (", column ") + .append (currentToken.next.beginColumn); + sb.append(".").append(EOL); + + if (expectedTokenSequences.length == 0) { + // Nothing to add here + } else { + sb.append (EOL) + .append ("Was expecting") + .append (expectedTokenSequences.length == 1 ? ":" : " one of:") + .append (EOL) + .append (EOL) + .append (expected); + } + + return sb.toString (); + } + + + /** + * Used to convert raw characters to their escaped version + * when these raw version cannot be used as part of an ASCII + * string literal. + */ + static String add_escapes(String str) { + final StringBuilder retval = new StringBuilder(); + for (int i = 0; i < str.length(); i++) { + final char ch = str.charAt(i); + switch (ch) + { + case '\b': + retval.append("\\b"); + continue; + case '\t': + retval.append("\\t"); + continue; + case '\n': + retval.append("\\n"); + continue; + case '\f': + retval.append("\\f"); + continue; + case '\r': + retval.append("\\r"); + continue; + case '\"': + retval.append("\\\""); + continue; + case '\'': + retval.append("\\\'"); + continue; + case '\\': + retval.append("\\\\"); + continue; + default: + if (ch < 0x20 || ch > 0x7e) { + String s = "0000" + Integer.toString(ch, 16); + retval.append("\\u").append (s.substring(s.length() - 4, s.length())); + } else { + retval.append(ch); + } + continue; + } + } + return retval.toString(); + } +} +/* ParserGeneratorCC - OriginalChecksum=d3971d3f73bce6b625c9349fb067625d (do not edit this line) */ diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/SimpleCharStream.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/SimpleCharStream.java new file mode 100644 index 0000000..1c0c44d --- /dev/null +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/SimpleCharStream.java @@ -0,0 +1,127 @@ +/* Generated by: ParserGeneratorCC: Do not edit this line. SimpleCharStream.java Version 1.1 */ +/* ParserGeneratorCCOptions:SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ +package org.apache.horaedb.sql; + +/** + * An implementation of interface CharStream, where the stream is assumed to + * contain only ASCII characters (without unicode processing). + */ +public +class SimpleCharStream extends AbstractCharStream +{ + private java.io.Reader m_aIS; + + /** Constructor. */ + public SimpleCharStream(final java.io.Reader dstream, + final int startline, + final int startcolumn, + final int buffersize) + { + super (startline, startcolumn, buffersize); + m_aIS = dstream; + } + + /** Constructor. */ + public SimpleCharStream(final java.io.Reader dstream, + final int startline, + final int startcolumn) + { + this(dstream, startline, startcolumn, DEFAULT_BUF_SIZE); + } + + /** Constructor. */ + public SimpleCharStream(final java.io.Reader dstream) + { + this(dstream, 1, 1, DEFAULT_BUF_SIZE); + } + + /** Reinitialise. */ + public void reInit(final java.io.Reader dstream, + final int startline, + final int startcolumn, + final int buffersize) + { + m_aIS = dstream; + super.reInit (startline, startcolumn, buffersize); + } + + /** Reinitialise. */ + public void reInit(final java.io.Reader dstream, + final int startline, + final int startcolumn) + { + reInit(dstream, startline, startcolumn, DEFAULT_BUF_SIZE); + } + + /** Reinitialise. */ + public void reInit(final java.io.Reader dstream) + { + reInit(dstream, 1, 1, DEFAULT_BUF_SIZE); + } + + /** Constructor. */ + public SimpleCharStream(final java.io.InputStream dstream, + final java.nio.charset.Charset encoding, + final int startline, + final int startcolumn, + final int buffersize) + { + this(new java.io.InputStreamReader(dstream, encoding), startline, startcolumn, buffersize); + } + + /** Constructor. */ + public SimpleCharStream(final java.io.InputStream dstream, + final java.nio.charset.Charset encoding, + final int startline, + final int startcolumn) + { + this(dstream, encoding, startline, startcolumn, DEFAULT_BUF_SIZE); + } + + /** Constructor. */ + public SimpleCharStream(final java.io.InputStream dstream, + final java.nio.charset.Charset encoding) + { + this(dstream, encoding, 1, 1, DEFAULT_BUF_SIZE); + } + + /** Reinitialise. */ + public void reInit(final java.io.InputStream dstream, + final java.nio.charset.Charset encoding) + { + reInit(dstream, encoding, 1, 1, DEFAULT_BUF_SIZE); + } + + /** Reinitialise. */ + public void reInit(final java.io.InputStream dstream, + final java.nio.charset.Charset encoding, + final int startline, + final int startcolumn) + { + reInit(dstream, encoding, startline, startcolumn, DEFAULT_BUF_SIZE); + } + + /** Reinitialise. */ + public void reInit(final java.io.InputStream dstream, + final java.nio.charset.Charset encoding, + final int startline, + final int startcolumn, + final int buffersize) + { + reInit(new java.io.InputStreamReader(dstream, encoding), startline, startcolumn, buffersize); + } + + @Override + protected int streamRead (final char[] aBuf, final int nOfs, final int nLen) throws java.io.IOException + { + return m_aIS.read (aBuf, nOfs, nLen); + } + + @Override + protected void streamClose () throws java.io.IOException + { + if (m_aIS != null) + m_aIS.close (); + } +} +/* ParserGeneratorCC - OriginalChecksum=c7d03000461bda2266ba6029eba6eb72 (do not edit this line) */ diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/Token.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/Token.java new file mode 100644 index 0000000..17b1b34 --- /dev/null +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/Token.java @@ -0,0 +1,132 @@ +/* Generated by: ParserGeneratorCC: Do not edit this line. Token.java Version 1.1 */ +/* ParserGeneratorCCOptions:TOKEN_EXTENDS=,KEEP_LINE_COLUMN=true,SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ +package org.apache.horaedb.sql; + +/** + * Describes the input token stream. + */ + +public class Token +implements java.io.Serializable { + /** + * The version identifier for this Serializable class. + * Increment only if the serialized form of the + * class changes. + */ + private static final long serialVersionUID = 1L; + + /** + * An integer that describes the kind of this token. This numbering + * system is determined by JavaCCParser, and a table of these numbers is + * stored in the file ...Constants.java. + */ + public int kind; + + /** The line number of the first character of this Token. */ + public int beginLine; + /** The column number of the first character of this Token. */ + public int beginColumn; + /** The line number of the last character of this Token. */ + public int endLine; + /** The column number of the last character of this Token. */ + public int endColumn; + + /** + * The string image of the token. + */ + public String image; + + /** + * A reference to the next regular (non-special) token from the input + * stream. If this is the last token from the input stream, or if the + * token manager has not read tokens beyond this one, this field is + * set to null. This is true only if this token is also a regular + * token. Otherwise, see below for a description of the contents of + * this field. + */ + public Token next; + + /** + * This field is used to access special tokens that occur prior to this + * token, but after the immediately preceding regular (non-special) token. + * If there are no such special tokens, this field is set to null. + * When there are more than one such special token, this field refers + * to the last of these special tokens, which in turn refers to the next + * previous special token through its specialToken field, and so on + * until the first special token (whose specialToken field is null). + * The next fields of special tokens refer to other special tokens that + * immediately follow it (without an intervening regular token). If there + * is no such token, this field is null. + */ + public Token specialToken; + + /** + * No-argument constructor + */ + public Token() {} + + /** + * Constructs a new token for the specified Image. + */ + public Token(final int nKind) + { + this(nKind, null); + } + + /** + * Constructs a new token for the specified Image and Kind. + */ + public Token(final int nKind, final String sImage) + { + this.kind = nKind; + this.image = sImage; + } + + /** + * An optional attribute value of the Token. + * Tokens which are not used as syntactic sugar will often contain + * meaningful values that will be used later on by the compiler or + * interpreter. This attribute value is often different from the image. + * Any subclass of Token that actually wants to return a non-null value can + * override this method as appropriate. + */ + public Object getValue() { + return null; + } + + /** + * Returns the image. + */ + @Override + public String toString() + { + return image; + } + + /** + * Returns a new Token object, by default. However, if you want, you + * can create and return subclass objects based on the value of ofKind. + * Simply add the cases to the switch for all those special cases. + * For example, if you have a subclass of Token called IDToken that + * you want to create if ofKind is ID, simply add something like : + * + * case MyParserConstants.ID : return new IDToken(ofKind, image); + * + * to the following switch statement. Then you can cast matchedToken + * variable to the appropriate type and use sit in your lexical actions. + */ + public static Token newToken(int ofKind, String image) + { + switch(ofKind) + { + default : return new Token(ofKind, image); + } + } + + public static Token newToken(int ofKind) + { + return newToken(ofKind, null); + } + +} +/* ParserGeneratorCC - OriginalChecksum=19f5bde5d09bef21a0461cdb8b3e3131 (do not edit this line) */ diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/TokenMgrException.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/TokenMgrException.java new file mode 100644 index 0000000..6aada2b --- /dev/null +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/TokenMgrException.java @@ -0,0 +1,146 @@ +/* Generated by: ParserGeneratorCC: Do not edit this line. TokenMgrException.java Version 1.1 */ +/* ParserGeneratorCCOptions: */ +package org.apache.horaedb.sql; + +/** Token Manager Error. */ +public class TokenMgrException extends RuntimeException +{ + + /** + * The version identifier for this Serializable class. + * Increment only if the serialized form of the + * class changes. + */ + private static final long serialVersionUID = 1L; + + /* + * Ordinals for various reasons why an Error of this type can be thrown. + */ + + /** + * Lexical error occurred. + */ + public static final int LEXICAL_ERROR = 0; + + /** + * An attempt was made to create a second instance of a static token manager. + */ + public static final int STATIC_LEXER_ERROR = 1; + + /** + * Tried to change to an invalid lexical state. + */ + public static final int INVALID_LEXICAL_STATE = 2; + + /** + * Detected (and bailed out of) an infinite loop in the token manager. + */ + public static final int LOOP_DETECTED = 3; + + /** + * Indicates the reason why the exception is thrown. It will have + * one of the above 4 values. + */ + int errorCode; + + /** + * Replaces unprintable characters by their escaped (or unicode escaped) + * equivalents in the given string + */ + protected static final String addEscapes(String str) { + StringBuilder retval = new StringBuilder(); + for (int i = 0; i < str.length(); i++) { + final char ch = str.charAt(i); + switch (ch) + { + case '\b': + retval.append("\\b"); + continue; + case '\t': + retval.append("\\t"); + continue; + case '\n': + retval.append("\\n"); + continue; + case '\f': + retval.append("\\f"); + continue; + case '\r': + retval.append("\\r"); + continue; + case '\"': + retval.append("\\\""); + continue; + case '\'': + retval.append("\\\'"); + continue; + case '\\': + retval.append("\\\\"); + continue; + default: + if (ch < 0x20 || ch > 0x7e) { + String s = "0000" + Integer.toString(ch, 16); + retval.append("\\u").append (s.substring(s.length() - 4, s.length())); + } else { + retval.append(ch); + } + continue; + } + } + return retval.toString(); + } + + /** + * Returns a detailed message for the Error when it is thrown by the + * token manager to indicate a lexical error. + * Parameters : + * EOFSeen : indicates if EOF caused the lexical error + * curLexState : lexical state in which this error occurred + * errorLine : line number when the error occurred + * errorColumn : column number when the error occurred + * errorAfter : prefix that was seen before this error occurred + * curchar : the offending character + * Note: You can customize the lexical error message by modifying this method. + */ + protected static String LexicalErr(boolean EOFSeen, int lexState, int errorLine, int errorColumn, String errorAfter, int curChar) { + char curChar1 = (char)curChar; + return("Lexical error at line " + + errorLine + ", column " + + errorColumn + ". Encountered: " + + (EOFSeen ? " " : ("\"" + addEscapes(String.valueOf(curChar1)) + "\"") + " (" + curChar + "), ") + + "after : \"" + addEscapes(errorAfter) + "\""); + } + + /** + * You can also modify the body of this method to customize your error messages. + * For example, cases like LOOP_DETECTED and INVALID_LEXICAL_STATE are not + * of end-users concern, so you can return something like : + * + * "Internal Error : Please file a bug report .... " + * + * from this method for such cases in the release version of your parser. + */ + @Override + public String getMessage() { + return super.getMessage(); + } + + /* + * Constructors of various flavors follow. + */ + /** No arg constructor. */ + public TokenMgrException() { + } + + /** Constructor with message and reason. */ + public TokenMgrException(String message, int reason) { + super(message); + errorCode = reason; + } + + /** Full Constructor. */ + public TokenMgrException(boolean EOFSeen, int lexState, int errorLine, int errorColumn, String errorAfter, int curChar, int reason) { + this(LexicalErr(EOFSeen, lexState, errorLine, errorColumn, errorAfter, curChar), reason); + } +} +/* ParserGeneratorCC - OriginalChecksum=51415d4bac89ff5b77d5bdd572d2474f (do not edit this line) */ diff --git a/horaedb-sql-javacc/src/main/javacc/CeresDBSqlParser.jj b/horaedb-sql-javacc/src/main/javacc/CeresDBSqlParser.jj index a6f4305..9e2d2d2 100644 --- a/horaedb-sql-javacc/src/main/javacc/CeresDBSqlParser.jj +++ b/horaedb-sql-javacc/src/main/javacc/CeresDBSqlParser.jj @@ -16,7 +16,7 @@ options { PARSER_BEGIN(CeresDBSqlParser) -package io.ceresdb.sql; +package org.apache.horaedb.sql; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/horaedb-sql-javacc/src/main/resources/META-INF/services/io.ceresdb.common.parser.SqlParserFactory b/horaedb-sql-javacc/src/main/resources/META-INF/services/io.ceresdb.common.parser.SqlParserFactory deleted file mode 100644 index 052f115..0000000 --- a/horaedb-sql-javacc/src/main/resources/META-INF/services/io.ceresdb.common.parser.SqlParserFactory +++ /dev/null @@ -1 +0,0 @@ -io.ceresdb.sql.CeresDBParserFactory diff --git a/horaedb-sql-javacc/src/main/resources/META-INF/services/org.apache.horaedb.common.parser.SqlParserFactory b/horaedb-sql-javacc/src/main/resources/META-INF/services/org.apache.horaedb.common.parser.SqlParserFactory new file mode 100644 index 0000000..185f4ac --- /dev/null +++ b/horaedb-sql-javacc/src/main/resources/META-INF/services/org.apache.horaedb.common.parser.SqlParserFactory @@ -0,0 +1 @@ +org.apache.horaedb.sql.CeresDBParserFactory \ No newline at end of file diff --git a/horaedb-sql-javacc/src/test/java/io/ceresdb/sql/TableParserTest.java b/horaedb-sql-javacc/src/test/java/org/apache/horaedb/sql/TableParserTest.java similarity index 97% rename from horaedb-sql-javacc/src/test/java/io/ceresdb/sql/TableParserTest.java rename to horaedb-sql-javacc/src/test/java/org/apache/horaedb/sql/TableParserTest.java index 7959dd9..6dd04b4 100644 --- a/horaedb-sql-javacc/src/test/java/io/ceresdb/sql/TableParserTest.java +++ b/horaedb-sql-javacc/src/test/java/org/apache/horaedb/sql/TableParserTest.java @@ -1,19 +1,18 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.sql; +package org.apache.horaedb.sql; import java.util.Arrays; import java.util.Collections; import java.util.List; +import org.apache.horaedb.common.parser.SqlParser; +import org.apache.horaedb.common.parser.SqlParserFactory; +import org.apache.horaedb.common.util.ServiceLoader; import org.junit.Assert; import org.junit.Test; -import io.ceresdb.common.parser.SqlParser; -import io.ceresdb.common.parser.SqlParserFactory; -import io.ceresdb.common.parser.SqlParserFactoryProvider; -import io.ceresdb.common.util.ServiceLoader; public class TableParserTest { diff --git a/horaedb-sql/src/main/java/io/ceresdb/sql/JSqlParser.java b/horaedb-sql/src/main/java/org/apache/horaedb/sql/JSqlParser.java similarity index 99% rename from horaedb-sql/src/main/java/io/ceresdb/sql/JSqlParser.java rename to horaedb-sql/src/main/java/org/apache/horaedb/sql/JSqlParser.java index 953e703..d49ec09 100644 --- a/horaedb-sql/src/main/java/io/ceresdb/sql/JSqlParser.java +++ b/horaedb-sql/src/main/java/org/apache/horaedb/sql/JSqlParser.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.sql; +package org.apache.horaedb.sql; import java.util.Collections; import java.util.List; diff --git a/horaedb-sql/src/main/java/io/ceresdb/sql/JSqlParserFactory.java b/horaedb-sql/src/main/java/org/apache/horaedb/sql/JSqlParserFactory.java similarity index 92% rename from horaedb-sql/src/main/java/io/ceresdb/sql/JSqlParserFactory.java rename to horaedb-sql/src/main/java/org/apache/horaedb/sql/JSqlParserFactory.java index 7d014e9..79ccd4c 100644 --- a/horaedb-sql/src/main/java/io/ceresdb/sql/JSqlParserFactory.java +++ b/horaedb-sql/src/main/java/org/apache/horaedb/sql/JSqlParserFactory.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.sql; +package org.apache.horaedb.sql; import io.ceresdb.common.parser.SqlParser; import io.ceresdb.common.parser.SqlParserFactory; diff --git a/horaedb-sql/src/main/java/io/ceresdb/sql/SqlParserUtil.java b/horaedb-sql/src/main/java/org/apache/horaedb/sql/SqlParserUtil.java similarity index 99% rename from horaedb-sql/src/main/java/io/ceresdb/sql/SqlParserUtil.java rename to horaedb-sql/src/main/java/org/apache/horaedb/sql/SqlParserUtil.java index 6130f03..1648683 100644 --- a/horaedb-sql/src/main/java/io/ceresdb/sql/SqlParserUtil.java +++ b/horaedb-sql/src/main/java/org/apache/horaedb/sql/SqlParserUtil.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.sql; +package org.apache.horaedb.sql; import java.util.List; import java.util.Set; diff --git a/horaedb-sql/src/main/resources/META-INF/services/io.ceresdb.common.parser.SqlParserFactory b/horaedb-sql/src/main/resources/META-INF/services/io.ceresdb.common.parser.SqlParserFactory deleted file mode 100644 index 55cd5a5..0000000 --- a/horaedb-sql/src/main/resources/META-INF/services/io.ceresdb.common.parser.SqlParserFactory +++ /dev/null @@ -1 +0,0 @@ -io.ceresdb.sql.JSqlParserFactory diff --git a/horaedb-sql/src/main/resources/META-INF/services/org.apache.horaedb.common.parser.SqlParserFactory b/horaedb-sql/src/main/resources/META-INF/services/org.apache.horaedb.common.parser.SqlParserFactory new file mode 100644 index 0000000..b4639dd --- /dev/null +++ b/horaedb-sql/src/main/resources/META-INF/services/org.apache.horaedb.common.parser.SqlParserFactory @@ -0,0 +1 @@ +org.apache.horaedb.sql.JSqlParserFactory diff --git a/horaedb-sql/src/test/java/io/ceresdb/sql/JSqlMetricParserTest.java b/horaedb-sql/src/test/java/org/apache/horaedb/sql/JSqlMetricParserTest.java similarity index 99% rename from horaedb-sql/src/test/java/io/ceresdb/sql/JSqlMetricParserTest.java rename to horaedb-sql/src/test/java/org/apache/horaedb/sql/JSqlMetricParserTest.java index 1f8a981..6d7d36d 100644 --- a/horaedb-sql/src/test/java/io/ceresdb/sql/JSqlMetricParserTest.java +++ b/horaedb-sql/src/test/java/org/apache/horaedb/sql/JSqlMetricParserTest.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.sql; +package org.apache.horaedb.sql; import java.util.Arrays; import java.util.Collections; diff --git a/pom.xml b/pom.xml index 55abe27..43fa601 100644 --- a/pom.xml +++ b/pom.xml @@ -8,9 +8,15 @@ ${revision} pom + + apache + org.apache + 31 + + horaedb-client Official Java client implementation for horaeDB. - https://github.com/CeresDB + https://horaedb.apache.org @@ -43,17 +49,6 @@ https://github.com/CeresDB/horaedb-client-java - - - ossrh - https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/ - - - ossrh - https://s01.oss.sonatype.org/content/repositories/snapshots - - - 1.0.5 @@ -437,17 +432,6 @@ - - org.sonatype.plugins - nexus-staging-maven-plugin - 1.6.7 - true - - ossrh - https://s01.oss.sonatype.org/ - true - - org.apache.maven.plugins maven-gpg-plugin From fde43af301260eb93fd32191c68f7203d31be126 Mon Sep 17 00:00:00 2001 From: CooooolFrog Date: Fri, 29 Mar 2024 14:40:07 +0800 Subject: [PATCH 02/10] rename package --- horaedb-all/pom.xml | 2 +- horaedb-common/pom.xml | 2 +- horaedb-example/pom.xml | 2 +- horaedb-grpc/pom.xml | 2 +- horaedb-protocol/pom.xml | 2 +- horaedb-rpc/pom.xml | 2 +- horaedb-sql-javacc/pom.xml | 2 +- .../horaedb/sql/AbstractCharStream.java | 920 ++++++++---------- .../org/apache/horaedb/sql/CeresDBParser.java | 95 ++ .../horaedb/sql/CeresDBParserFactory.java | 17 + .../horaedb/sql/CeresDBSqlStatement.java | 259 +++++ .../org/apache/horaedb/sql/CharStream.java | 5 +- .../org/apache/horaedb/sql/LanguageType.java | 11 + .../org/apache/horaedb/sql/OperationType.java | 10 + .../apache/horaedb/sql/ParseException.java | 310 +++--- .../org/apache/horaedb/sql/ParseHandler.java | 54 + .../apache/horaedb/sql/SimpleCharStream.java | 178 ++-- .../java/org/apache/horaedb/sql/SqlUtils.java | 78 ++ .../org/apache/horaedb/sql/StatementType.java | 49 + .../java/org/apache/horaedb/sql/Token.java | 216 ++-- .../apache/horaedb/sql/TokenMgrException.java | 253 ++--- .../apache/horaedb/sql/TableParserTest.java | 2 +- horaedb-sql/pom.xml | 2 +- .../org/apache/horaedb/sql/JSqlParser.java | 5 +- .../apache/horaedb/sql/JSqlParserFactory.java | 6 +- .../org/apache/horaedb/sql/SqlParserUtil.java | 5 +- .../horaedb/sql/JSqlMetricParserTest.java | 9 +- pom.xml | 4 +- 28 files changed, 1476 insertions(+), 1026 deletions(-) create mode 100644 horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBParser.java create mode 100644 horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBParserFactory.java create mode 100644 horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBSqlStatement.java create mode 100644 horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/LanguageType.java create mode 100644 horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/OperationType.java create mode 100644 horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/ParseHandler.java create mode 100644 horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/SqlUtils.java create mode 100644 horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/StatementType.java diff --git a/horaedb-all/pom.xml b/horaedb-all/pom.xml index decc2b9..56b4c16 100644 --- a/horaedb-all/pom.xml +++ b/horaedb-all/pom.xml @@ -3,7 +3,7 @@ 4.0.0 horaedb-client - io.ceresdb + org.apache.horaedb ${revision} diff --git a/horaedb-common/pom.xml b/horaedb-common/pom.xml index 55c3ad2..6eeb005 100644 --- a/horaedb-common/pom.xml +++ b/horaedb-common/pom.xml @@ -3,7 +3,7 @@ 4.0.0 horaedb-client - io.ceresdb + org.apache.horaedb ${revision} diff --git a/horaedb-example/pom.xml b/horaedb-example/pom.xml index f7871bb..6fe2f48 100644 --- a/horaedb-example/pom.xml +++ b/horaedb-example/pom.xml @@ -3,7 +3,7 @@ 4.0.0 horaedb-client - io.ceresdb + org.apache.horaedb ${revision} diff --git a/horaedb-grpc/pom.xml b/horaedb-grpc/pom.xml index 4e1c095..7940cec 100644 --- a/horaedb-grpc/pom.xml +++ b/horaedb-grpc/pom.xml @@ -3,7 +3,7 @@ 4.0.0 horaedb-client - io.ceresdb + org.apache.horaedb ${revision} diff --git a/horaedb-protocol/pom.xml b/horaedb-protocol/pom.xml index 873d27b..e1a12b7 100644 --- a/horaedb-protocol/pom.xml +++ b/horaedb-protocol/pom.xml @@ -3,7 +3,7 @@ 4.0.0 horaedb-client - io.ceresdb + org.apache.horaedb ${revision} diff --git a/horaedb-rpc/pom.xml b/horaedb-rpc/pom.xml index b3d82f9..beeb835 100644 --- a/horaedb-rpc/pom.xml +++ b/horaedb-rpc/pom.xml @@ -3,7 +3,7 @@ 4.0.0 horaedb-client - io.ceresdb + org.apache.horaedb ${revision} diff --git a/horaedb-sql-javacc/pom.xml b/horaedb-sql-javacc/pom.xml index 4e4f5a6..eeabe59 100644 --- a/horaedb-sql-javacc/pom.xml +++ b/horaedb-sql-javacc/pom.xml @@ -3,7 +3,7 @@ 4.0.0 horaedb-client - io.ceresdb + org.apache.horaedb ${revision} diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/AbstractCharStream.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/AbstractCharStream.java index 8a77b85..6f3e765 100644 --- a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/AbstractCharStream.java +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/AbstractCharStream.java @@ -1,3 +1,6 @@ +/* + * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. + */ /* Generated by: ParserGeneratorCC: Do not edit this line. AbstractCharStream.java Version 1.1 */ /* ParserGeneratorCCOptions:SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ package org.apache.horaedb.sql; @@ -6,542 +9,461 @@ * An implementation of interface CharStream, where the stream is assumed to * contain only ASCII characters (without unicode processing). */ +public abstract class AbstractCharStream implements CharStream { + /** Default buffer size if nothing is specified */ + public static final int DEFAULT_BUF_SIZE = 4096; + + static final int hexval(final char c) throws java.io.IOException { + switch (c) { + case '0': + return 0; + case '1': + return 1; + case '2': + return 2; + case '3': + return 3; + case '4': + return 4; + case '5': + return 5; + case '6': + return 6; + case '7': + return 7; + case '8': + return 8; + case '9': + return 9; + case 'a': + case 'A': + return 10; + case 'b': + case 'B': + return 11; + case 'c': + case 'C': + return 12; + case 'd': + case 'D': + return 13; + case 'e': + case 'E': + return 14; + case 'f': + case 'F': + return 15; + default: + throw new java.io.IOException("Invalid hex char '" + c + "' (=" + (int) c + ") provided!"); + } + } + + /** Tab size for formatting. Usually in the range 1 to 8. */ + private int m_nTabSize = 1; + + /** Internal circular buffer */ + protected char[] buffer; + + /** Overall buffer size - same as buffer.length */ + protected int bufsize; + + /** Current read position in buffer. */ + protected int bufpos; + + /** The number of unoccupied buffer array positions */ + protected int available; + + /** The first array index (of `buffer`) that the current token starts */ + protected int tokenBegin; + + /** Characters in the backup/pushBack buffer */ + protected int inBuf; + protected int maxNextCharInd; -public -abstract class AbstractCharStream -implements CharStream -{ - /** Default buffer size if nothing is specified */ - public static final int DEFAULT_BUF_SIZE = 4096; - - static final int hexval (final char c) throws java.io.IOException - { - switch (c) - { - case '0': - return 0; - case '1': - return 1; - case '2': - return 2; - case '3': - return 3; - case '4': - return 4; - case '5': - return 5; - case '6': - return 6; - case '7': - return 7; - case '8': - return 8; - case '9': - return 9; - case 'a': - case 'A': - return 10; - case 'b': - case 'B': - return 11; - case 'c': - case 'C': - return 12; - case 'd': - case 'D': - return 13; - case 'e': - case 'E': - return 14; - case 'f': - case 'F': - return 15; - default: - throw new java.io.IOException ("Invalid hex char '" + c + "' (=" + (int) c + ") provided!"); + private int[] m_aBufLine; + private int[] m_aBufColumn; + + // Current line number + private int m_nLineNo; + // Current column number + private int m_nColumnNo; + + // Was the previous character a "\r" char? + private boolean m_bPrevCharIsCR; + // Was the previous character a "\n" char? + private boolean m_bPrevCharIsLF; + + // Is line/column tracking enabled? + private boolean m_bTrackLineColumn = true; + + /** Constructor. */ + public AbstractCharStream(final int nStartLine, final int nStartColumn, final int nBufferSize) { + reInit(nStartLine, nStartColumn, nBufferSize); } - } - - /** Tab size for formatting. Usually in the range 1 to 8. */ - private int m_nTabSize = 1; - - /** Internal circular buffer */ - protected char[] buffer; - - /** Overall buffer size - same as buffer.length */ - protected int bufsize; - - /** Current read position in buffer. */ - protected int bufpos; - - /** The number of unoccupied buffer array positions */ - protected int available; - - /** The first array index (of `buffer`) that the current token starts */ - protected int tokenBegin; - - /** Characters in the backup/pushBack buffer */ - protected int inBuf; - protected int maxNextCharInd; - - private int[] m_aBufLine; - private int[] m_aBufColumn; - - // Current line number - private int m_nLineNo; - // Current column number - private int m_nColumnNo; - - // Was the previous character a "\r" char? - private boolean m_bPrevCharIsCR; - // Was the previous character a "\n" char? - private boolean m_bPrevCharIsLF; - - // Is line/column tracking enabled? - private boolean m_bTrackLineColumn = true; - - - /** Constructor. */ - public AbstractCharStream(final int nStartLine, - final int nStartColumn, - final int nBufferSize) - { - reInit (nStartLine, nStartColumn, nBufferSize); - } - - /** Reinitialise. */ - public final void reInit(final int nStartLine, - final int nStartColumn, - final int nBufferSize) - { - m_nLineNo = nStartLine; - m_nColumnNo = nStartColumn - 1; - m_bPrevCharIsCR = false; - m_bPrevCharIsLF = false; - if (buffer == null || nBufferSize != buffer.length) - { - bufsize = nBufferSize; - available = nBufferSize; - buffer = new char[nBufferSize]; - m_aBufLine = new int[nBufferSize]; - m_aBufColumn = new int[nBufferSize]; + + /** Reinitialise. */ + public final void reInit(final int nStartLine, final int nStartColumn, final int nBufferSize) { + m_nLineNo = nStartLine; + m_nColumnNo = nStartColumn - 1; + m_bPrevCharIsCR = false; + m_bPrevCharIsLF = false; + if (buffer == null || nBufferSize != buffer.length) { + bufsize = nBufferSize; + available = nBufferSize; + buffer = new char[nBufferSize]; + m_aBufLine = new int[nBufferSize]; + m_aBufColumn = new int[nBufferSize]; + } + maxNextCharInd = 0; + inBuf = 0; + tokenBegin = 0; + bufpos = -1; } - maxNextCharInd = 0; - inBuf = 0; - tokenBegin = 0; - bufpos = -1; - } - - /** - * Read from the underlying stream. - * @param aBuf the buffer to be filled - * @param nOfs The offset into the buffer. 0-based - * @param nLen Number of chars to read. - * @return Number of effective chars read, or -1 on error. - */ - protected abstract int streamRead (char[] aBuf, int nOfs, int nLen) throws java.io.IOException; - - /** - * Close the underlying stream. - * @throws java.io.IOException If closing fails. - */ - protected abstract void streamClose () throws java.io.IOException; - - // Override this method if you need more aggressive buffer size expansion - protected int getBufSizeAfterExpansion () - { - // Double the size by default - return bufsize * 2; - } - - protected void expandBuff (final boolean bWrapAround) - { - // Get the new buffer size - final int nNewBufSize = getBufSizeAfterExpansion (); - - final char[] newbuffer = new char[nNewBufSize]; - final int[] newbufline = new int[nNewBufSize]; - final int[] newbufcolumn = new int[nNewBufSize]; - - // Number of chars to be preserved - final int nPreservedChars = bufsize - tokenBegin; - - if (bWrapAround) - { - // Move from offset "tokenBegin" to offset 0 - // arraycopy(src, srcPos, dest, destPos, length) - - // copy the "tail end" to the "start" (index 0) of the new buffer array - System.arraycopy(buffer, tokenBegin, newbuffer, 0, nPreservedChars); - - // copy the remaining "wrap around" content of the buffer from the start of the original buffer (starting at srcPos index 0) - System.arraycopy(buffer, 0, newbuffer, nPreservedChars, bufpos); - - // swap the new buffer in place of the old buffer - buffer = newbuffer; - - System.arraycopy(m_aBufLine, tokenBegin, newbufline, 0, nPreservedChars); - System.arraycopy(m_aBufLine, 0, newbufline, nPreservedChars, bufpos); - m_aBufLine = newbufline; - - System.arraycopy(m_aBufColumn, tokenBegin, newbufcolumn, 0, nPreservedChars); - System.arraycopy(m_aBufColumn, 0, newbufcolumn, nPreservedChars, bufpos); - m_aBufColumn = newbufcolumn; - - bufpos += nPreservedChars; - maxNextCharInd = bufpos; + + /** + * Read from the underlying stream. + * @param aBuf the buffer to be filled + * @param nOfs The offset into the buffer. 0-based + * @param nLen Number of chars to read. + * @return Number of effective chars read, or -1 on error. + */ + protected abstract int streamRead(char[] aBuf, int nOfs, int nLen) throws java.io.IOException; + + /** + * Close the underlying stream. + * @throws java.io.IOException If closing fails. + */ + protected abstract void streamClose() throws java.io.IOException; + + // Override this method if you need more aggressive buffer size expansion + protected int getBufSizeAfterExpansion() { + // Double the size by default + return bufsize * 2; } - else - { - // Move from offset "tokenBegin" to offset 0 - - System.arraycopy(buffer, tokenBegin, newbuffer, 0, nPreservedChars); - buffer = newbuffer; - System.arraycopy(m_aBufLine, tokenBegin, newbufline, 0, nPreservedChars); - m_aBufLine = newbufline; + protected void expandBuff(final boolean bWrapAround) { + // Get the new buffer size + final int nNewBufSize = getBufSizeAfterExpansion(); - System.arraycopy(m_aBufColumn, tokenBegin, newbufcolumn, 0, nPreservedChars); - m_aBufColumn = newbufcolumn; + final char[] newbuffer = new char[nNewBufSize]; + final int[] newbufline = new int[nNewBufSize]; + final int[] newbufcolumn = new int[nNewBufSize]; - bufpos -= tokenBegin; - maxNextCharInd = bufpos; + // Number of chars to be preserved + final int nPreservedChars = bufsize - tokenBegin; + + if (bWrapAround) { + // Move from offset "tokenBegin" to offset 0 + // arraycopy(src, srcPos, dest, destPos, length) + + // copy the "tail end" to the "start" (index 0) of the new buffer array + System.arraycopy(buffer, tokenBegin, newbuffer, 0, nPreservedChars); + + // copy the remaining "wrap around" content of the buffer from the start of the original buffer (starting at srcPos index 0) + System.arraycopy(buffer, 0, newbuffer, nPreservedChars, bufpos); + + // swap the new buffer in place of the old buffer + buffer = newbuffer; + + System.arraycopy(m_aBufLine, tokenBegin, newbufline, 0, nPreservedChars); + System.arraycopy(m_aBufLine, 0, newbufline, nPreservedChars, bufpos); + m_aBufLine = newbufline; + + System.arraycopy(m_aBufColumn, tokenBegin, newbufcolumn, 0, nPreservedChars); + System.arraycopy(m_aBufColumn, 0, newbufcolumn, nPreservedChars, bufpos); + m_aBufColumn = newbufcolumn; + + bufpos += nPreservedChars; + maxNextCharInd = bufpos; + } else { + // Move from offset "tokenBegin" to offset 0 + + System.arraycopy(buffer, tokenBegin, newbuffer, 0, nPreservedChars); + buffer = newbuffer; + + System.arraycopy(m_aBufLine, tokenBegin, newbufline, 0, nPreservedChars); + m_aBufLine = newbufline; + + System.arraycopy(m_aBufColumn, tokenBegin, newbufcolumn, 0, nPreservedChars); + m_aBufColumn = newbufcolumn; + + bufpos -= tokenBegin; + maxNextCharInd = bufpos; + } + + // Increase buffer size + bufsize = nNewBufSize; + available = nNewBufSize; + tokenBegin = 0; } - // Increase buffer size - bufsize = nNewBufSize; - available = nNewBufSize; - tokenBegin = 0; - } - - protected final void internalAdjustBuffSize() - { - final int nHalfBufferSize = bufsize / 2; - if (available == bufsize) - { - if (tokenBegin < 0) - { - // If this method is called from "beginToken()" - // Just refill the buffer from the start - bufpos = 0; - maxNextCharInd = 0; - } - else - if (tokenBegin > nHalfBufferSize) - { - // The token started in the second half - fill the front part - bufpos = 0; - maxNextCharInd = 0; - - // Available bytes are > 50% - available = tokenBegin; + protected final void internalAdjustBuffSize() { + final int nHalfBufferSize = bufsize / 2; + if (available == bufsize) { + if (tokenBegin < 0) { + // If this method is called from "beginToken()" + // Just refill the buffer from the start + bufpos = 0; + maxNextCharInd = 0; + } else if (tokenBegin > nHalfBufferSize) { + // The token started in the second half - fill the front part + bufpos = 0; + maxNextCharInd = 0; + + // Available bytes are > 50% + available = tokenBegin; + } else { + // Token starts in the first half + // just append to existing buffer + expandBuff(false); + } + } else { + // A token was read across array boundaries + if (available > tokenBegin) { + available = bufsize; + } else if ((tokenBegin - available) < nHalfBufferSize) { + expandBuff(true); + } else { + available = tokenBegin; + } } - else - { - // Token starts in the first half - // just append to existing buffer - expandBuff (false); + } + + protected void fillBuff() throws java.io.IOException { + if (maxNextCharInd == available) + internalAdjustBuffSize(); + + try { + // Read from underlying stream + final int nCharsRead = streamRead(buffer, maxNextCharInd, available - maxNextCharInd); + if (nCharsRead == -1) { + // We reached the end of the file + streamClose(); + + // Caught down below and re-thrown + throw new java.io.IOException("PGCC end of stream"); + } + maxNextCharInd += nCharsRead; + } catch (final java.io.IOException ex) { + --bufpos; + // ?What is the reason of this? Backup of 0 does nothing + backup(0); + if (tokenBegin == -1) { + // Error occurred in "beginToken()" + tokenBegin = bufpos; + } + throw ex; } } - else - { - // A token was read across array boundaries - if (available > tokenBegin) - { - available = bufsize; - } - else - if ((tokenBegin - available) < nHalfBufferSize) - { - expandBuff (true); + + protected final void internalSetBufLineColumn(final int nLine, final int nColumn) { + m_aBufLine[bufpos] = nLine; + m_aBufColumn[bufpos] = nColumn; + } + + protected final void internalUpdateLineColumn(final char c) { + m_nColumnNo++; + + if (m_bPrevCharIsLF) { + // It's a "\r\n" or "\n" + // Start of a new line + m_bPrevCharIsLF = false; + m_nColumnNo = 1; + m_nLineNo++; + } else if (m_bPrevCharIsCR) { + m_bPrevCharIsCR = false; + if (c == '\n') { + // It's a "\r\n" + m_bPrevCharIsLF = true; + } else { + // It's only a "\r" + m_nColumnNo = 1; + m_nLineNo++; + } } - else - { - available = tokenBegin; + + switch (c) { + case '\r': + m_bPrevCharIsCR = true; + break; + case '\n': + m_bPrevCharIsLF = true; + break; + case '\t': + m_nColumnNo--; + m_nColumnNo += (m_nTabSize - (m_nColumnNo % m_nTabSize)); + break; } + + internalSetBufLineColumn(m_nLineNo, m_nColumnNo); } - } - - protected void fillBuff() throws java.io.IOException - { - if (maxNextCharInd == available) - internalAdjustBuffSize(); - - try - { - // Read from underlying stream - final int nCharsRead = streamRead (buffer, maxNextCharInd, available - maxNextCharInd); - if (nCharsRead == -1) - { - // We reached the end of the file - streamClose (); - - // Caught down below and re-thrown - throw new java.io.IOException("PGCC end of stream"); - } - maxNextCharInd += nCharsRead; + + public char readChar() throws java.io.IOException { + if (inBuf > 0) { + // Something is left from last backup + --inBuf; + + ++bufpos; + if (bufpos == bufsize) { + // Buffer overflow + bufpos = 0; + } + + return buffer[bufpos]; + } + + ++bufpos; + if (bufpos >= maxNextCharInd) + fillBuff(); + + final char c = buffer[bufpos]; + + if (m_bTrackLineColumn) + internalUpdateLineColumn(c); + return c; } - catch (final java.io.IOException ex) - { - --bufpos; - // ?What is the reason of this? Backup of 0 does nothing - backup (0); - if (tokenBegin == -1) - { - // Error occurred in "beginToken()" + + public char beginToken() throws java.io.IOException { + tokenBegin = -1; + final char c = readChar(); tokenBegin = bufpos; - } - throw ex; + return c; } - } - - protected final void internalSetBufLineColumn (final int nLine, final int nColumn) - { - m_aBufLine[bufpos] = nLine; - m_aBufColumn[bufpos] = nColumn; - } - - protected final void internalUpdateLineColumn(final char c) - { - m_nColumnNo++; - - if (m_bPrevCharIsLF) - { - // It's a "\r\n" or "\n" - // Start of a new line - m_bPrevCharIsLF = false; - m_nColumnNo = 1; - m_nLineNo++; + + public int getBeginColumn() { + return m_aBufColumn[tokenBegin]; } - else - if (m_bPrevCharIsCR) - { - m_bPrevCharIsCR = false; - if (c == '\n') - { - // It's a "\r\n" - m_bPrevCharIsLF = true; - } - else - { - // It's only a "\r" - m_nColumnNo = 1; - m_nLineNo++; - } - } - - switch (c) - { - case '\r': - m_bPrevCharIsCR = true; - break; - case '\n': - m_bPrevCharIsLF = true; - break; - case '\t': - m_nColumnNo--; - m_nColumnNo += (m_nTabSize - (m_nColumnNo % m_nTabSize)); - break; + + public int getBeginLine() { + return m_aBufLine[tokenBegin]; } - internalSetBufLineColumn (m_nLineNo, m_nColumnNo); - } + public int getEndColumn() { + return m_aBufColumn[bufpos]; + } - public char readChar() throws java.io.IOException - { - if (inBuf > 0) - { - // Something is left from last backup - --inBuf; + public int getEndLine() { + return m_aBufLine[bufpos]; + } - ++bufpos; - if (bufpos == bufsize) - { - // Buffer overflow - bufpos = 0; - } + public void backup(final int nAmount) { + if (nAmount > bufsize) + throw new IllegalStateException("Cannot back " + nAmount + + " chars which is larger than the internal buffer size (" + bufsize + ")"); - return buffer[bufpos]; + inBuf += nAmount; + bufpos -= nAmount; + if (bufpos < 0) { + // Buffer underflow (modulo) + bufpos += bufsize; + } } - ++bufpos; - if (bufpos >= maxNextCharInd) - fillBuff(); - - final char c = buffer[bufpos]; - - if (m_bTrackLineColumn) - internalUpdateLineColumn(c); - return c; - } - - public char beginToken() throws java.io.IOException - { - tokenBegin = -1; - final char c = readChar(); - tokenBegin = bufpos; - return c; - } - - public int getBeginColumn () - { - return m_aBufColumn[tokenBegin]; - } - - public int getBeginLine () - { - return m_aBufLine[tokenBegin]; - } - - public int getEndColumn () - { - return m_aBufColumn[bufpos]; - } - - public int getEndLine () - { - return m_aBufLine[bufpos]; - } - - public void backup (final int nAmount) - { - if (nAmount > bufsize) - throw new IllegalStateException ("Cannot back " + nAmount + " chars which is larger than the internal buffer size (" + bufsize + ")"); - - inBuf += nAmount; - bufpos -= nAmount; - if (bufpos < 0) - { - // Buffer underflow (modulo) - bufpos += bufsize; + public String getImage() { + if (bufpos >= tokenBegin) { + // from tokenBegin to bufpos + return new String(buffer, tokenBegin, bufpos - tokenBegin + 1); + } + + // from tokenBegin to bufsize, and from 0 to bufpos + return new String(buffer, tokenBegin, bufsize - tokenBegin) + new String(buffer, 0, bufpos + 1); } - } - - public String getImage() - { - if (bufpos >= tokenBegin) - { - // from tokenBegin to bufpos - return new String (buffer, tokenBegin, bufpos - tokenBegin + 1); + + public char[] getSuffix(final int len) { + char[] ret = new char[len]; + if ((bufpos + 1) >= len) { + // one piece + System.arraycopy(buffer, bufpos - len + 1, ret, 0, len); + } else { + // Wrap around + final int nPart1 = len - bufpos - 1; + System.arraycopy(buffer, bufsize - nPart1, ret, 0, nPart1); + System.arraycopy(buffer, 0, ret, nPart1, bufpos + 1); + } + return ret; } - // from tokenBegin to bufsize, and from 0 to bufpos - return new String (buffer, tokenBegin, bufsize - tokenBegin) + - new String (buffer, 0, bufpos + 1); - } - - public char[] getSuffix (final int len) - { - char[] ret = new char[len]; - if ((bufpos + 1) >= len) - { - // one piece - System.arraycopy(buffer, bufpos - len + 1, ret, 0, len); + public void done() { + buffer = null; + m_aBufLine = null; + m_aBufColumn = null; } - else - { - // Wrap around - final int nPart1 = len - bufpos - 1; - System.arraycopy(buffer, bufsize - nPart1, ret, 0, nPart1); - System.arraycopy(buffer, 0, ret, nPart1, bufpos + 1); + + public final int getTabSize() { + return m_nTabSize; } - return ret; - } - - public void done() - { - buffer = null; - m_aBufLine = null; - m_aBufColumn = null; - } - - public final int getTabSize() - { - return m_nTabSize; - } - - public final void setTabSize (final int nTabSize) - { - m_nTabSize = nTabSize; - } - - /** - * Method to adjust line and column numbers for the start of a token. - * This is used internally to - */ - public final void adjustBeginLineColumn(final int nNewLine, final int newCol) - { - int start = tokenBegin; - int newLine = nNewLine; - - int len; - if (bufpos >= tokenBegin) - { - len = bufpos - tokenBegin + inBuf + 1; + + public final void setTabSize(final int nTabSize) { + m_nTabSize = nTabSize; } - else - { - len = bufsize - tokenBegin + bufpos + 1 + inBuf; + + /** + * Method to adjust line and column numbers for the start of a token. + * This is used internally to + */ + public final void adjustBeginLineColumn(final int nNewLine, final int newCol) { + int start = tokenBegin; + int newLine = nNewLine; + + int len; + if (bufpos >= tokenBegin) { + len = bufpos - tokenBegin + inBuf + 1; + } else { + len = bufsize - tokenBegin + bufpos + 1 + inBuf; + } + + int i = 0; + int j = 0; + int k = 0; + int nextColDiff = 0; + int columnDiff = 0; + + // TODO disassemble meaning and split up + while (i < len && m_aBufLine[j = start % bufsize] == m_aBufLine[k = ++start % bufsize]) { + m_aBufLine[j] = newLine; + nextColDiff = columnDiff + m_aBufColumn[k] - m_aBufColumn[j]; + m_aBufColumn[j] = newCol + columnDiff; + columnDiff = nextColDiff; + i++; + } + + if (i < len) { + m_aBufLine[j] = newLine++; + m_aBufColumn[j] = newCol + columnDiff; + + while (i++ < len) { + // TODO disassemble meaning and split up + if (m_aBufLine[j = start % bufsize] != m_aBufLine[++start % bufsize]) + m_aBufLine[j] = newLine++; + else + m_aBufLine[j] = newLine; + } + } + + m_nLineNo = m_aBufLine[j]; + m_nColumnNo = m_aBufColumn[j]; } - int i = 0; - int j = 0; - int k = 0; - int nextColDiff = 0; - int columnDiff = 0; - - // TODO disassemble meaning and split up - while (i < len && m_aBufLine[j = start % bufsize] == m_aBufLine[k = ++start % bufsize]) - { - m_aBufLine[j] = newLine; - nextColDiff = columnDiff + m_aBufColumn[k] - m_aBufColumn[j]; - m_aBufColumn[j] = newCol + columnDiff; - columnDiff = nextColDiff; - i++; + /** + * @return the current line number. 0-based. + */ + protected final int getLine() { + return m_nLineNo; } - if (i < len) - { - m_aBufLine[j] = newLine++; - m_aBufColumn[j] = newCol + columnDiff; + /** + * @return the current column number. 0-based. + */ + protected final int getColumn() { + return m_nColumnNo; + } - while (i++ < len) - { - // TODO disassemble meaning and split up - if (m_aBufLine[j = start % bufsize] != m_aBufLine[++start % bufsize]) - m_aBufLine[j] = newLine++; - else - m_aBufLine[j] = newLine; - } + public final boolean isTrackLineColumn() { + return m_bTrackLineColumn; } - m_nLineNo = m_aBufLine[j]; - m_nColumnNo = m_aBufColumn[j]; - } - - /** - * @return the current line number. 0-based. - */ - protected final int getLine () - { - return m_nLineNo; - } - - /** - * @return the current column number. 0-based. - */ - protected final int getColumn () - { - return m_nColumnNo; - } - - public final boolean isTrackLineColumn () - { - return m_bTrackLineColumn; - } - - public final void setTrackLineColumn (final boolean bTrackLineColumn) - { - m_bTrackLineColumn = bTrackLineColumn; - } + public final void setTrackLineColumn(final boolean bTrackLineColumn) { + m_bTrackLineColumn = bTrackLineColumn; + } } -/* ParserGeneratorCC - OriginalChecksum=524eaa6bb01d5bbec20d3967f16aaa23 (do not edit this line) */ +/* ParserGeneratorCC - OriginalChecksum=de3dd2b72357344d70e9a686e3198605 (do not edit this line) */ diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBParser.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBParser.java new file mode 100644 index 0000000..75d66b0 --- /dev/null +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBParser.java @@ -0,0 +1,95 @@ +/* + * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. + */ +package org.apache.horaedb.sql; + +import java.util.List; + +import io.ceresdb.util.Utils; +import org.apache.horaedb.common.parser.SqlParser; +import org.apache.horaedb.common.util.internal.ThrowUtil; + +/** + * Parse SQL. + * + */ +public class CeresDBParser implements SqlParser { + + private final String sql; + + private boolean parsed; + private StatementType statementType = StatementType.Unknown; + private CeresDBSqlStatement stmt; + + public CeresDBParser(String sql) { + this.sql = sql; + } + + @Override + public StatementType statementType() { + parse(); + + return this.statementType; + } + + @Override + public List tableNames() { + parse(); + + return this.stmt.getTables(); + } + + @Override + public List createColumns() { + parse(); + + return Utils.unsupported("`%s` unsupported yet!", "createColumns"); + } + + private void parse() { + if (this.parsed) { + return; + } + + this.parsed = true; + + try { + final CeresDBSqlStatement stmt = CeresDBSqlParser.parse(this.sql)[0]; + + switch (stmt.getStatementType()) { + case SELECT: + this.statementType = StatementType.Select; + break; + case CREATE: + this.statementType = StatementType.Create; + break; + case ALTER: + case ALTER_DELETE: + case ALTER_UPDATE: + this.statementType = StatementType.Alter; + break; + case DESCRIBE: + this.statementType = StatementType.Describe; + break; + case SHOW: + this.statementType = StatementType.Show; + break; + case DROP: + this.statementType = StatementType.Drop; + break; + case INSERT: + this.statementType = StatementType.Insert; + break; + case EXISTS: + this.statementType = StatementType.Exists; + break; + default: + this.statementType = StatementType.Unknown; + } + + this.stmt = stmt; + } catch (final Exception e) { + ThrowUtil.throwException(e); + } + } +} diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBParserFactory.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBParserFactory.java new file mode 100644 index 0000000..e4fa898 --- /dev/null +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBParserFactory.java @@ -0,0 +1,17 @@ +/* + * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. + */ +package org.apache.horaedb.sql; + +import org.apache.horaedb.common.SPI; +import org.apache.horaedb.common.parser.SqlParser; +import org.apache.horaedb.common.parser.SqlParserFactory; + +@SPI(priority = 1) +public class CeresDBParserFactory implements SqlParserFactory { + + @Override + public SqlParser getParser(final String sql) { + return new CeresDBParser(sql); + } +} diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBSqlStatement.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBSqlStatement.java new file mode 100644 index 0000000..c50c54c --- /dev/null +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBSqlStatement.java @@ -0,0 +1,259 @@ +/* + * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. + */ +package org.apache.horaedb.sql; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Locale; +import java.util.Map; +import java.util.Map.Entry; + +public class CeresDBSqlStatement { + public static final String DEFAULT_DATABASE = "system"; + public static final String DEFAULT_TABLE = "unknown"; + public static final List DEFAULT_TABLES = Collections.singletonList(DEFAULT_TABLE); + public static final List DEFAULT_PARAMETERS = Collections.emptyList(); + public static final Map DEFAULT_POSITIONS = Collections.emptyMap(); + + public static final String KEYWORD_EXISTS = "EXISTS"; + public static final String KEYWORD_REPLACE = "REPLACE"; + public static final String KEYWORD_TOTALS = "TOTALS"; + public static final String KEYWORD_VALUES = "VALUES"; + + private final String sql; + private final StatementType stmtType; + private final String database; + private final List tables; + private final List parameters; + private final Map positions; + + public CeresDBSqlStatement(String sql) { + this(sql, StatementType.UNKNOWN, null, null, null, null); + } + + public CeresDBSqlStatement(String sql, StatementType stmtType) { + this(sql, stmtType, null, null, null, null); + } + + public CeresDBSqlStatement(String sql, // + StatementType stmtType, // + String database, // + List tables, // + List parameters, // + Map positions) { + this.sql = sql; + this.stmtType = stmtType; + + this.database = database; + this.tables = tables == null || tables.isEmpty() ? DEFAULT_TABLES : + Collections.unmodifiableList(new ArrayList<>(tables)); + + if (parameters != null && parameters.size() > 0) { + this.parameters = Collections.unmodifiableList(new ArrayList<>(parameters)); + } else { + this.parameters = DEFAULT_PARAMETERS; + } + + if (positions != null && positions.size() > 0) { + final Map p = new HashMap<>(); + for (final Entry e : positions.entrySet()) { + final String keyword = e.getKey(); + final Integer position = e.getValue(); + + if (keyword != null && position != null) { + p.put(keyword.toUpperCase(Locale.ROOT), position); + } + } + this.positions = Collections.unmodifiableMap(p); + } else { + this.positions = DEFAULT_POSITIONS; + } + } + + public String getSQL() { + return this.sql; + } + + public boolean isRecognized() { + return stmtType != StatementType.UNKNOWN; + } + + public boolean isDDL() { + return this.stmtType.getLanguageType() == LanguageType.DDL; + } + + public boolean isDML() { + return this.stmtType.getLanguageType() == LanguageType.DML; + } + + public boolean isQuery() { + return this.stmtType.getOperationType() == OperationType.READ; + } + + public boolean isMutation() { + return this.stmtType.getOperationType() == OperationType.WRITE; + } + + public boolean isIdemponent() { + boolean result = this.stmtType.isIdempotent(); + + if (!result) { // try harder + switch (this.stmtType) { + case CREATE: + case DROP: + result = this.positions.containsKey(KEYWORD_EXISTS) || this.positions.containsKey(KEYWORD_REPLACE); + break; + default: + break; + } + } + + return result; + } + + public LanguageType getLanguageType() { + return this.stmtType.getLanguageType(); + } + + public OperationType getOperationType() { + return this.stmtType.getOperationType(); + } + + public StatementType getStatementType() { + return this.stmtType; + } + + public String getDatabase() { + return this.database; + } + + @SuppressWarnings("PMD") + public String getDatabaseOrDefault(String database) { + return this.database == null ? (database == null ? DEFAULT_DATABASE : database) : this.database; + } + + public List getTables() { + return this.tables; + } + + public boolean containsKeyword(String keyword) { + if (keyword == null || keyword.isEmpty()) { + return false; + } + + return positions.containsKey(keyword.toUpperCase(Locale.ROOT)); + } + + public boolean hasWithTotals() { + return this.positions.containsKey(KEYWORD_TOTALS); + } + + public boolean hasValues() { + return this.positions.containsKey(KEYWORD_VALUES); + } + + public List getParameters() { + return this.parameters; + } + + public int getStartPosition(String keyword) { + int position = -1; + + if (!this.positions.isEmpty() && keyword != null) { + Integer p = this.positions.get(keyword.toUpperCase(Locale.ROOT)); + if (p != null) { + position = p; + } + } + + return position; + } + + public int getEndPosition(String keyword) { + int position = getStartPosition(keyword); + + return position != -1 && keyword != null ? position + keyword.length() : position; + } + + public Map getPositions() { + return this.positions; + } + + @Override + public String toString() { + return "CeresDBSqlStatement{" + // + "sql='" + sql + '\'' + // + ", stmtType=" + stmtType + // + ", database='" + database + '\'' + // + ", tables='" + tables + '\'' + // + ", parameters=" + parameters + // + ", positions=" + positions + // + '}'; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((database == null) ? 0 : database.hashCode()); + result = prime * result + ((parameters == null) ? 0 : parameters.hashCode()); + result = prime * result + ((positions == null) ? 0 : positions.hashCode()); + result = prime * result + ((sql == null) ? 0 : sql.hashCode()); + result = prime * result + ((stmtType == null) ? 0 : stmtType.hashCode()); + result = prime * result + ((tables == null) ? 0 : tables.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } + if (obj == null) { + return false; + } + if (getClass() != obj.getClass()) { + return false; + } + final CeresDBSqlStatement other = (CeresDBSqlStatement) obj; + if (database == null) { + if (other.database != null) { + return false; + } + } else if (!database.equals(other.database)) { + return false; + } + if (parameters == null) { + if (other.parameters != null) { + return false; + } + } else if (!parameters.equals(other.parameters)) { + return false; + } + if (positions == null) { + if (other.positions != null) { + return false; + } + } else if (!positions.equals(other.positions)) { + return false; + } + if (sql == null) { + if (other.sql != null) { + return false; + } + } else if (!sql.equals(other.sql)) { + return false; + } + if (stmtType != other.stmtType) { + return false; + } + if (tables == null) { + return other.tables == null; + } else { + return tables.equals(other.tables); + } + } +} diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CharStream.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CharStream.java index 86f8c87..d053165 100644 --- a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CharStream.java +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CharStream.java @@ -1,3 +1,6 @@ +/* + * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. + */ /* Generated by: ParserGeneratorCC: Do not edit this line. CharStream.java Version 1.1 */ /* ParserGeneratorCCOptions:SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ package org.apache.horaedb.sql; @@ -121,4 +124,4 @@ public interface CharStream { */ void setTrackLineColumn(boolean trackLineColumn); } -/* ParserGeneratorCC - OriginalChecksum=f98cc7f189fbb29d51e5a77afb61a945 (do not edit this line) */ +/* ParserGeneratorCC - OriginalChecksum=a0f02fb813390766c4c59bdd9cd91295 (do not edit this line) */ diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/LanguageType.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/LanguageType.java new file mode 100644 index 0000000..6e5748b --- /dev/null +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/LanguageType.java @@ -0,0 +1,11 @@ +/* + * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. + */ +package org.apache.horaedb.sql; + +public enum LanguageType { + UNKNOWN, // unknown language + DCL, // data control language + DDL, // data definition language + DML // data manipulation language +} diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/OperationType.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/OperationType.java new file mode 100644 index 0000000..8dcb92c --- /dev/null +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/OperationType.java @@ -0,0 +1,10 @@ +/* + * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. + */ +package org.apache.horaedb.sql; + +public enum OperationType { + UNKNOWN, // + READ, // + WRITE // +} diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/ParseException.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/ParseException.java index 1653f3d..0e49ba8 100644 --- a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/ParseException.java +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/ParseException.java @@ -1,3 +1,6 @@ +/* + * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. + */ /* Generated by: ParserGeneratorCC: Do not edit this line. ParseException.java Version 1.1 */ /* ParserGeneratorCCOptions:KEEP_LINE_COLUMN=true */ package org.apache.horaedb.sql; @@ -12,178 +15,165 @@ * mechanisms so long as you retain the public fields. */ public class ParseException extends Exception { - /** - * The end of line string for this machine. - */ - protected static final String EOL = System.getProperty("line.separator", "\n"); + /** + * The end of line string for this machine. + */ + protected static final String EOL = System.getProperty("line.separator", "\n"); - /** - * This constructor is used by the method "generateParseException" - * in the generated parser. Calling this constructor generates - * a new object of this type with the fields "currentToken", - * "expectedTokenSequences", and "tokenImage" set. - */ - public ParseException(final Token currentTokenVal, - final int[][] expectedTokenSequencesVal, - final String[] tokenImageVal) - { - super(_initialise(currentTokenVal, expectedTokenSequencesVal, tokenImageVal)); - currentToken = currentTokenVal; - expectedTokenSequences = expectedTokenSequencesVal; - tokenImage = tokenImageVal; - } + /** + * This constructor is used by the method "generateParseException" + * in the generated parser. Calling this constructor generates + * a new object of this type with the fields "currentToken", + * "expectedTokenSequences", and "tokenImage" set. + */ + public ParseException(final Token currentTokenVal, final int[][] expectedTokenSequencesVal, + final String[] tokenImageVal) { + super(_initialise(currentTokenVal, expectedTokenSequencesVal, tokenImageVal)); + currentToken = currentTokenVal; + expectedTokenSequences = expectedTokenSequencesVal; + tokenImage = tokenImageVal; + } - /** - * The following constructors are for use by you for whatever - * purpose you can think of. Constructing the exception in this - * manner makes the exception behave in the normal way - i.e., as - * documented in the class "Throwable". The fields "errorToken", - * "expectedTokenSequences", and "tokenImage" do not contain - * relevant information. The JavaCC generated code does not use - * these constructors. - */ + /** + * The following constructors are for use by you for whatever + * purpose you can think of. Constructing the exception in this + * manner makes the exception behave in the normal way - i.e., as + * documented in the class "Throwable". The fields "errorToken", + * "expectedTokenSequences", and "tokenImage" do not contain + * relevant information. The JavaCC generated code does not use + * these constructors. + */ - public ParseException() { - super(); - } + public ParseException() { + super(); + } - /** Constructor with message. */ - public ParseException(String message) { - super(message); - } + /** Constructor with message. */ + public ParseException(String message) { + super(message); + } + /** + * This is the last token that has been consumed successfully. If + * this object has been created due to a parse error, the token + * followng this token will (therefore) be the first error token. + */ + public Token currentToken; - /** - * This is the last token that has been consumed successfully. If - * this object has been created due to a parse error, the token - * followng this token will (therefore) be the first error token. - */ - public Token currentToken; + /** + * Each entry in this array is an array of integers. Each array + * of integers represents a sequence of tokens (by their ordinal + * values) that is expected at this point of the parse. + */ + public int[][] expectedTokenSequences; - /** - * Each entry in this array is an array of integers. Each array - * of integers represents a sequence of tokens (by their ordinal - * values) that is expected at this point of the parse. - */ - public int[][] expectedTokenSequences; + /** + * This is a reference to the "tokenImage" array of the generated + * parser within which the parse error occurred. This array is + * defined in the generated ...Constants interface. + */ + public String[] tokenImage; - /** - * This is a reference to the "tokenImage" array of the generated - * parser within which the parse error occurred. This array is - * defined in the generated ...Constants interface. - */ - public String[] tokenImage; + /** + * It uses "currentToken" and "expectedTokenSequences" to generate a parse + * error message and returns it. If this object has been created + * due to a parse error, and you do not catch it (it gets thrown + * from the parser) the correct error message + * gets displayed. + */ + private static String _initialise(final Token currentToken, final int[][] expectedTokenSequences, + final String[] tokenImage) { + StringBuilder expected = new StringBuilder(); + int maxSize = 0; + for (int i = 0; i < expectedTokenSequences.length; i++) { + if (maxSize < expectedTokenSequences[i].length) + maxSize = expectedTokenSequences[i].length; + for (int j = 0; j < expectedTokenSequences[i].length; j++) + expected.append(tokenImage[expectedTokenSequences[i][j]]).append(' '); - /** - * It uses "currentToken" and "expectedTokenSequences" to generate a parse - * error message and returns it. If this object has been created - * due to a parse error, and you do not catch it (it gets thrown - * from the parser) the correct error message - * gets displayed. - */ - private static String _initialise(final Token currentToken, - final int[][] expectedTokenSequences, - final String[] tokenImage) - { - StringBuilder expected = new StringBuilder(); - int maxSize = 0; - for (int i = 0; i < expectedTokenSequences.length; i++) { - if (maxSize < expectedTokenSequences[i].length) - maxSize = expectedTokenSequences[i].length; - for (int j = 0; j < expectedTokenSequences[i].length; j++) - expected.append(tokenImage[expectedTokenSequences[i][j]]).append(' '); - - if (expectedTokenSequences[i][expectedTokenSequences[i].length - 1] != 0) - expected.append("..."); - expected.append(EOL).append(" "); - } + if (expectedTokenSequences[i][expectedTokenSequences[i].length - 1] != 0) + expected.append("..."); + expected.append(EOL).append(" "); + } - StringBuilder sb = new StringBuilder(); - sb.append ("Encountered \""); + StringBuilder sb = new StringBuilder(); + sb.append("Encountered \""); - Token tok = currentToken.next; - for (int i = 0; i < maxSize; i++) { - String tokenText = tok.image; - String escapedTokenText = add_escapes(tokenText); - if (i != 0) - sb.append (' '); - if (tok.kind == 0) { - sb.append(tokenImage[0]); - break; - } - sb.append(" " + tokenImage[tok.kind]); - sb.append(" \""); - sb.append(escapedTokenText); - sb.append("\""); - tok = tok.next; - } - sb.append ("\" at line ") - .append (currentToken.next.beginLine) - .append (", column ") - .append (currentToken.next.beginColumn); - sb.append(".").append(EOL); - - if (expectedTokenSequences.length == 0) { - // Nothing to add here - } else { - sb.append (EOL) - .append ("Was expecting") - .append (expectedTokenSequences.length == 1 ? ":" : " one of:") - .append (EOL) - .append (EOL) - .append (expected); - } - - return sb.toString (); - } + Token tok = currentToken.next; + for (int i = 0; i < maxSize; i++) { + String tokenText = tok.image; + String escapedTokenText = add_escapes(tokenText); + if (i != 0) + sb.append(' '); + if (tok.kind == 0) { + sb.append(tokenImage[0]); + break; + } + sb.append(" " + tokenImage[tok.kind]); + sb.append(" \""); + sb.append(escapedTokenText); + sb.append("\""); + tok = tok.next; + } + sb.append("\" at line ").append(currentToken.next.beginLine).append(", column ") + .append(currentToken.next.beginColumn); + sb.append(".").append(EOL); + if (expectedTokenSequences.length == 0) { + // Nothing to add here + } else { + sb.append(EOL).append("Was expecting").append(expectedTokenSequences.length == 1 ? ":" : " one of:") + .append(EOL).append(EOL).append(expected); + } + + return sb.toString(); + } - /** - * Used to convert raw characters to their escaped version - * when these raw version cannot be used as part of an ASCII - * string literal. - */ - static String add_escapes(String str) { - final StringBuilder retval = new StringBuilder(); - for (int i = 0; i < str.length(); i++) { - final char ch = str.charAt(i); - switch (ch) - { - case '\b': - retval.append("\\b"); - continue; - case '\t': - retval.append("\\t"); - continue; - case '\n': - retval.append("\\n"); - continue; - case '\f': - retval.append("\\f"); - continue; - case '\r': - retval.append("\\r"); - continue; - case '\"': - retval.append("\\\""); - continue; - case '\'': - retval.append("\\\'"); - continue; - case '\\': - retval.append("\\\\"); - continue; - default: - if (ch < 0x20 || ch > 0x7e) { - String s = "0000" + Integer.toString(ch, 16); - retval.append("\\u").append (s.substring(s.length() - 4, s.length())); - } else { - retval.append(ch); - } - continue; - } + /** + * Used to convert raw characters to their escaped version + * when these raw version cannot be used as part of an ASCII + * string literal. + */ + static String add_escapes(String str) { + final StringBuilder retval = new StringBuilder(); + for (int i = 0; i < str.length(); i++) { + final char ch = str.charAt(i); + switch (ch) { + case '\b': + retval.append("\\b"); + continue; + case '\t': + retval.append("\\t"); + continue; + case '\n': + retval.append("\\n"); + continue; + case '\f': + retval.append("\\f"); + continue; + case '\r': + retval.append("\\r"); + continue; + case '\"': + retval.append("\\\""); + continue; + case '\'': + retval.append("\\\'"); + continue; + case '\\': + retval.append("\\\\"); + continue; + default: + if (ch < 0x20 || ch > 0x7e) { + String s = "0000" + Integer.toString(ch, 16); + retval.append("\\u").append(s.substring(s.length() - 4, s.length())); + } else { + retval.append(ch); + } + continue; + } + } + return retval.toString(); } - return retval.toString(); - } } -/* ParserGeneratorCC - OriginalChecksum=d3971d3f73bce6b625c9349fb067625d (do not edit this line) */ +/* ParserGeneratorCC - OriginalChecksum=8e4301a6e1c05b53bd28faed18429f18 (do not edit this line) */ diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/ParseHandler.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/ParseHandler.java new file mode 100644 index 0000000..c16d1fc --- /dev/null +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/ParseHandler.java @@ -0,0 +1,54 @@ +/* + * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. + */ +package org.apache.horaedb.sql; + +import java.util.List; +import java.util.Map; + +@SuppressWarnings("unused") +public abstract class ParseHandler { + + /** + * Handle macro like "#include('/tmp/template.sql')". + * + * @param name name of the macro + * @param parameters parameters + * @return output of the macro, could be null or empty string + */ + public String handleMacro(final String name, final List parameters) { + return null; + } + + /** + * Handle parameter. + * + * @param database database + * @param tables tables + * @param columnIndex columnIndex(starts from 1 not 0) + * @return parameter value + */ + public String handleParameter(final String database, final List tables, final int columnIndex) { + return null; + } + + /** + * Handle statement. + * + * @param sql sql statement + * @param stmtType statement type + * @param database database + * @param tables tables + * @param parameters positions of parameters + * @param positions keyword positions + * @return sql statement, or null means no change + */ + public CeresDBSqlStatement handleStatement(final String sql, // + final StatementType stmtType, // + final String database, // + final List tables, // + final List parameters, // + final Map positions) { + return null; + } +} diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/SimpleCharStream.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/SimpleCharStream.java index 1c0c44d..89131dd 100644 --- a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/SimpleCharStream.java +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/SimpleCharStream.java @@ -1,3 +1,6 @@ +/* + * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. + */ /* Generated by: ParserGeneratorCC: Do not edit this line. SimpleCharStream.java Version 1.1 */ /* ParserGeneratorCCOptions:SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ package org.apache.horaedb.sql; @@ -6,122 +9,85 @@ * An implementation of interface CharStream, where the stream is assumed to * contain only ASCII characters (without unicode processing). */ -public -class SimpleCharStream extends AbstractCharStream -{ - private java.io.Reader m_aIS; +public class SimpleCharStream extends AbstractCharStream { + private java.io.Reader m_aIS; + + /** Constructor. */ + public SimpleCharStream(final java.io.Reader dstream, final int startline, final int startcolumn, + final int buffersize) { + super(startline, startcolumn, buffersize); + m_aIS = dstream; + } + + /** Constructor. */ + public SimpleCharStream(final java.io.Reader dstream, final int startline, final int startcolumn) { + this(dstream, startline, startcolumn, DEFAULT_BUF_SIZE); + } - /** Constructor. */ - public SimpleCharStream(final java.io.Reader dstream, - final int startline, - final int startcolumn, - final int buffersize) - { - super (startline, startcolumn, buffersize); - m_aIS = dstream; - } + /** Constructor. */ + public SimpleCharStream(final java.io.Reader dstream) { + this(dstream, 1, 1, DEFAULT_BUF_SIZE); + } - /** Constructor. */ - public SimpleCharStream(final java.io.Reader dstream, - final int startline, - final int startcolumn) - { - this(dstream, startline, startcolumn, DEFAULT_BUF_SIZE); - } + /** Reinitialise. */ + public void reInit(final java.io.Reader dstream, final int startline, final int startcolumn, final int buffersize) { + m_aIS = dstream; + super.reInit(startline, startcolumn, buffersize); + } - /** Constructor. */ - public SimpleCharStream(final java.io.Reader dstream) - { - this(dstream, 1, 1, DEFAULT_BUF_SIZE); - } + /** Reinitialise. */ + public void reInit(final java.io.Reader dstream, final int startline, final int startcolumn) { + reInit(dstream, startline, startcolumn, DEFAULT_BUF_SIZE); + } - /** Reinitialise. */ - public void reInit(final java.io.Reader dstream, - final int startline, - final int startcolumn, - final int buffersize) - { - m_aIS = dstream; - super.reInit (startline, startcolumn, buffersize); - } + /** Reinitialise. */ + public void reInit(final java.io.Reader dstream) { + reInit(dstream, 1, 1, DEFAULT_BUF_SIZE); + } - /** Reinitialise. */ - public void reInit(final java.io.Reader dstream, - final int startline, - final int startcolumn) - { - reInit(dstream, startline, startcolumn, DEFAULT_BUF_SIZE); - } + /** Constructor. */ + public SimpleCharStream(final java.io.InputStream dstream, final java.nio.charset.Charset encoding, + final int startline, final int startcolumn, final int buffersize) { + this(new java.io.InputStreamReader(dstream, encoding), startline, startcolumn, buffersize); + } - /** Reinitialise. */ - public void reInit(final java.io.Reader dstream) - { - reInit(dstream, 1, 1, DEFAULT_BUF_SIZE); - } - - /** Constructor. */ - public SimpleCharStream(final java.io.InputStream dstream, - final java.nio.charset.Charset encoding, - final int startline, - final int startcolumn, - final int buffersize) - { - this(new java.io.InputStreamReader(dstream, encoding), startline, startcolumn, buffersize); - } + /** Constructor. */ + public SimpleCharStream(final java.io.InputStream dstream, final java.nio.charset.Charset encoding, + final int startline, final int startcolumn) { + this(dstream, encoding, startline, startcolumn, DEFAULT_BUF_SIZE); + } - /** Constructor. */ - public SimpleCharStream(final java.io.InputStream dstream, - final java.nio.charset.Charset encoding, - final int startline, - final int startcolumn) - { - this(dstream, encoding, startline, startcolumn, DEFAULT_BUF_SIZE); - } + /** Constructor. */ + public SimpleCharStream(final java.io.InputStream dstream, final java.nio.charset.Charset encoding) { + this(dstream, encoding, 1, 1, DEFAULT_BUF_SIZE); + } - /** Constructor. */ - public SimpleCharStream(final java.io.InputStream dstream, - final java.nio.charset.Charset encoding) - { - this(dstream, encoding, 1, 1, DEFAULT_BUF_SIZE); - } + /** Reinitialise. */ + public void reInit(final java.io.InputStream dstream, final java.nio.charset.Charset encoding) { + reInit(dstream, encoding, 1, 1, DEFAULT_BUF_SIZE); + } - /** Reinitialise. */ - public void reInit(final java.io.InputStream dstream, - final java.nio.charset.Charset encoding) - { - reInit(dstream, encoding, 1, 1, DEFAULT_BUF_SIZE); - } + /** Reinitialise. */ + public void reInit(final java.io.InputStream dstream, final java.nio.charset.Charset encoding, final int startline, + final int startcolumn) { + reInit(dstream, encoding, startline, startcolumn, DEFAULT_BUF_SIZE); + } - /** Reinitialise. */ - public void reInit(final java.io.InputStream dstream, - final java.nio.charset.Charset encoding, - final int startline, - final int startcolumn) - { - reInit(dstream, encoding, startline, startcolumn, DEFAULT_BUF_SIZE); - } + /** Reinitialise. */ + public void reInit(final java.io.InputStream dstream, final java.nio.charset.Charset encoding, final int startline, + final int startcolumn, final int buffersize) { + reInit(new java.io.InputStreamReader(dstream, encoding), startline, startcolumn, buffersize); + } - /** Reinitialise. */ - public void reInit(final java.io.InputStream dstream, - final java.nio.charset.Charset encoding, - final int startline, - final int startcolumn, - final int buffersize) - { - reInit(new java.io.InputStreamReader(dstream, encoding), startline, startcolumn, buffersize); - } + @Override + protected int streamRead(final char[] aBuf, final int nOfs, final int nLen) throws java.io.IOException { + return m_aIS.read(aBuf, nOfs, nLen); + } - @Override - protected int streamRead (final char[] aBuf, final int nOfs, final int nLen) throws java.io.IOException - { - return m_aIS.read (aBuf, nOfs, nLen); - } - - @Override - protected void streamClose () throws java.io.IOException - { - if (m_aIS != null) - m_aIS.close (); - } + @Override + protected void streamClose() throws java.io.IOException { + if (m_aIS != null) + m_aIS.close(); + } } -/* ParserGeneratorCC - OriginalChecksum=c7d03000461bda2266ba6029eba6eb72 (do not edit this line) */ +/* ParserGeneratorCC - OriginalChecksum=49f72b684cd7cc7409e1ade8c7809d08 (do not edit this line) */ diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/SqlUtils.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/SqlUtils.java new file mode 100644 index 0000000..5bc2fc3 --- /dev/null +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/SqlUtils.java @@ -0,0 +1,78 @@ +/* + * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. + */ +package org.apache.horaedb.sql; + +public final class SqlUtils { + + public static boolean isQuote(final char ch) { + return ch == '"' || ch == '\'' || ch == '`'; + } + + /** + * Escape quotes in given string. + * + * @param str string + * @param quote quote to escape + * @return escaped string + */ + public static String escape(final String str, final char quote) { + if (str == null) { + return null; + } + + final int len = str.length(); + final StringBuilder buf = new StringBuilder(len + 10).append(quote); + + for (int i = 0; i < len; i++) { + char ch = str.charAt(i); + if (ch == quote || ch == '\\') { + buf.append('\\'); + } + buf.append(ch); + } + + return buf.append(quote).toString(); + } + + /** + * Unescape quoted string. + * + * @param str quoted string + * @return unescaped string + */ + @SuppressWarnings("PMD") + public static String unescape(final String str) { + if (str == null || str.isEmpty()) { + return str; + } + + int len = str.length(); + final char quote = str.charAt(0); + if (!isQuote(quote) || quote != str.charAt(len - 1)) { // not a quoted string + return str; + } + + final StringBuilder buf = new StringBuilder(len = len - 1); + for (int i = 1; i < len; i++) { + char ch = str.charAt(i); + + if (++i >= len) { + buf.append(ch); + } else { + char nextChar = str.charAt(i); + if (ch == '\\' || (ch == quote && nextChar == quote)) { + buf.append(nextChar); + } else { + buf.append(ch); + i--; + } + } + } + + return buf.toString(); + } + + private SqlUtils() { + } +} diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/StatementType.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/StatementType.java new file mode 100644 index 0000000..b2ba171 --- /dev/null +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/StatementType.java @@ -0,0 +1,49 @@ +/* + * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. + */ +package org.apache.horaedb.sql; + +public enum StatementType { + UNKNOWN(LanguageType.UNKNOWN, OperationType.UNKNOWN, false), // unknown statement + ALTER(LanguageType.DDL, OperationType.UNKNOWN, false), // alter statement + ALTER_DELETE(LanguageType.DDL, OperationType.WRITE, false), // delete statement + ALTER_UPDATE(LanguageType.DDL, OperationType.WRITE, false), // update statement + CHECK(LanguageType.DDL, OperationType.UNKNOWN, true), // check statement + CREATE(LanguageType.DDL, OperationType.UNKNOWN, false), // create statement + DELETE(LanguageType.DML, OperationType.WRITE, false), // the upcoming light-weight delete statement + DESCRIBE(LanguageType.DDL, OperationType.READ, true), // describe/desc statement + DROP(LanguageType.DDL, OperationType.UNKNOWN, false), // drop statement + EXISTS(LanguageType.DML, OperationType.READ, true), // exists statement + EXPLAIN(LanguageType.DDL, OperationType.READ, true), // explain statement + INSERT(LanguageType.DML, OperationType.WRITE, false), // insert statement + SELECT(LanguageType.DML, OperationType.READ, true), // select statement + SET(LanguageType.DCL, OperationType.UNKNOWN, true), // set statement + SHOW(LanguageType.DDL, OperationType.READ, true), // show statement + SYSTEM(LanguageType.DDL, OperationType.UNKNOWN, false), // system statement + TRUNCATE(LanguageType.DDL, OperationType.UNKNOWN, true), // truncate statement + UPDATE(LanguageType.DML, OperationType.WRITE, false), // the upcoming light-weight update statement + USE(LanguageType.DDL, OperationType.UNKNOWN, true), // use statement + WATCH(LanguageType.DDL, OperationType.UNKNOWN, true); // watch statement + + private final LanguageType langType; + private final OperationType opType; + private final boolean idempotent; + + StatementType(LanguageType langType, OperationType operationType, boolean idempotent) { + this.langType = langType; + this.opType = operationType; + this.idempotent = idempotent; + } + + LanguageType getLanguageType() { + return this.langType; + } + + OperationType getOperationType() { + return this.opType; + } + + boolean isIdempotent() { + return this.idempotent; + } +} diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/Token.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/Token.java index 17b1b34..86f9690 100644 --- a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/Token.java +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/Token.java @@ -1,3 +1,6 @@ +/* + * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. + */ /* Generated by: ParserGeneratorCC: Do not edit this line. Token.java Version 1.1 */ /* ParserGeneratorCCOptions:TOKEN_EXTENDS=,KEEP_LINE_COLUMN=true,SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ package org.apache.horaedb.sql; @@ -6,127 +9,122 @@ * Describes the input token stream. */ -public class Token -implements java.io.Serializable { - /** - * The version identifier for this Serializable class. - * Increment only if the serialized form of the - * class changes. - */ - private static final long serialVersionUID = 1L; +public class Token implements java.io.Serializable { + /** + * The version identifier for this Serializable class. + * Increment only if the serialized form of the + * class changes. + */ + private static final long serialVersionUID = 1L; - /** - * An integer that describes the kind of this token. This numbering - * system is determined by JavaCCParser, and a table of these numbers is - * stored in the file ...Constants.java. - */ - public int kind; + /** + * An integer that describes the kind of this token. This numbering + * system is determined by JavaCCParser, and a table of these numbers is + * stored in the file ...Constants.java. + */ + public int kind; - /** The line number of the first character of this Token. */ - public int beginLine; - /** The column number of the first character of this Token. */ - public int beginColumn; - /** The line number of the last character of this Token. */ - public int endLine; - /** The column number of the last character of this Token. */ - public int endColumn; + /** The line number of the first character of this Token. */ + public int beginLine; + /** The column number of the first character of this Token. */ + public int beginColumn; + /** The line number of the last character of this Token. */ + public int endLine; + /** The column number of the last character of this Token. */ + public int endColumn; - /** - * The string image of the token. - */ - public String image; + /** + * The string image of the token. + */ + public String image; - /** - * A reference to the next regular (non-special) token from the input - * stream. If this is the last token from the input stream, or if the - * token manager has not read tokens beyond this one, this field is - * set to null. This is true only if this token is also a regular - * token. Otherwise, see below for a description of the contents of - * this field. - */ - public Token next; + /** + * A reference to the next regular (non-special) token from the input + * stream. If this is the last token from the input stream, or if the + * token manager has not read tokens beyond this one, this field is + * set to null. This is true only if this token is also a regular + * token. Otherwise, see below for a description of the contents of + * this field. + */ + public Token next; - /** - * This field is used to access special tokens that occur prior to this - * token, but after the immediately preceding regular (non-special) token. - * If there are no such special tokens, this field is set to null. - * When there are more than one such special token, this field refers - * to the last of these special tokens, which in turn refers to the next - * previous special token through its specialToken field, and so on - * until the first special token (whose specialToken field is null). - * The next fields of special tokens refer to other special tokens that - * immediately follow it (without an intervening regular token). If there - * is no such token, this field is null. - */ - public Token specialToken; + /** + * This field is used to access special tokens that occur prior to this + * token, but after the immediately preceding regular (non-special) token. + * If there are no such special tokens, this field is set to null. + * When there are more than one such special token, this field refers + * to the last of these special tokens, which in turn refers to the next + * previous special token through its specialToken field, and so on + * until the first special token (whose specialToken field is null). + * The next fields of special tokens refer to other special tokens that + * immediately follow it (without an intervening regular token). If there + * is no such token, this field is null. + */ + public Token specialToken; - /** - * No-argument constructor - */ - public Token() {} + /** + * No-argument constructor + */ + public Token() { + } - /** - * Constructs a new token for the specified Image. - */ - public Token(final int nKind) - { - this(nKind, null); - } + /** + * Constructs a new token for the specified Image. + */ + public Token(final int nKind) { + this(nKind, null); + } - /** - * Constructs a new token for the specified Image and Kind. - */ - public Token(final int nKind, final String sImage) - { - this.kind = nKind; - this.image = sImage; - } + /** + * Constructs a new token for the specified Image and Kind. + */ + public Token(final int nKind, final String sImage) { + this.kind = nKind; + this.image = sImage; + } - /** - * An optional attribute value of the Token. - * Tokens which are not used as syntactic sugar will often contain - * meaningful values that will be used later on by the compiler or - * interpreter. This attribute value is often different from the image. - * Any subclass of Token that actually wants to return a non-null value can - * override this method as appropriate. - */ - public Object getValue() { - return null; - } + /** + * An optional attribute value of the Token. + * Tokens which are not used as syntactic sugar will often contain + * meaningful values that will be used later on by the compiler or + * interpreter. This attribute value is often different from the image. + * Any subclass of Token that actually wants to return a non-null value can + * override this method as appropriate. + */ + public Object getValue() { + return null; + } - /** - * Returns the image. - */ - @Override - public String toString() - { - return image; - } + /** + * Returns the image. + */ + @Override + public String toString() { + return image; + } - /** - * Returns a new Token object, by default. However, if you want, you - * can create and return subclass objects based on the value of ofKind. - * Simply add the cases to the switch for all those special cases. - * For example, if you have a subclass of Token called IDToken that - * you want to create if ofKind is ID, simply add something like : - * - * case MyParserConstants.ID : return new IDToken(ofKind, image); - * - * to the following switch statement. Then you can cast matchedToken - * variable to the appropriate type and use sit in your lexical actions. - */ - public static Token newToken(int ofKind, String image) - { - switch(ofKind) - { - default : return new Token(ofKind, image); + /** + * Returns a new Token object, by default. However, if you want, you + * can create and return subclass objects based on the value of ofKind. + * Simply add the cases to the switch for all those special cases. + * For example, if you have a subclass of Token called IDToken that + * you want to create if ofKind is ID, simply add something like : + * + * case MyParserConstants.ID : return new IDToken(ofKind, image); + * + * to the following switch statement. Then you can cast matchedToken + * variable to the appropriate type and use sit in your lexical actions. + */ + public static Token newToken(int ofKind, String image) { + switch (ofKind) { + default: + return new Token(ofKind, image); + } } - } - public static Token newToken(int ofKind) - { - return newToken(ofKind, null); - } + public static Token newToken(int ofKind) { + return newToken(ofKind, null); + } } -/* ParserGeneratorCC - OriginalChecksum=19f5bde5d09bef21a0461cdb8b3e3131 (do not edit this line) */ +/* ParserGeneratorCC - OriginalChecksum=e9f5d05e147c2a71efaab522c5715e99 (do not edit this line) */ diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/TokenMgrException.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/TokenMgrException.java index 6aada2b..788eefa 100644 --- a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/TokenMgrException.java +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/TokenMgrException.java @@ -1,146 +1,147 @@ +/* + * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. + */ /* Generated by: ParserGeneratorCC: Do not edit this line. TokenMgrException.java Version 1.1 */ /* ParserGeneratorCCOptions: */ package org.apache.horaedb.sql; /** Token Manager Error. */ -public class TokenMgrException extends RuntimeException -{ +public class TokenMgrException extends RuntimeException { - /** - * The version identifier for this Serializable class. - * Increment only if the serialized form of the - * class changes. - */ - private static final long serialVersionUID = 1L; + /** + * The version identifier for this Serializable class. + * Increment only if the serialized form of the + * class changes. + */ + private static final long serialVersionUID = 1L; - /* - * Ordinals for various reasons why an Error of this type can be thrown. - */ + /* + * Ordinals for various reasons why an Error of this type can be thrown. + */ - /** - * Lexical error occurred. - */ - public static final int LEXICAL_ERROR = 0; + /** + * Lexical error occurred. + */ + public static final int LEXICAL_ERROR = 0; - /** - * An attempt was made to create a second instance of a static token manager. - */ - public static final int STATIC_LEXER_ERROR = 1; + /** + * An attempt was made to create a second instance of a static token manager. + */ + public static final int STATIC_LEXER_ERROR = 1; - /** - * Tried to change to an invalid lexical state. - */ - public static final int INVALID_LEXICAL_STATE = 2; + /** + * Tried to change to an invalid lexical state. + */ + public static final int INVALID_LEXICAL_STATE = 2; - /** - * Detected (and bailed out of) an infinite loop in the token manager. - */ - public static final int LOOP_DETECTED = 3; + /** + * Detected (and bailed out of) an infinite loop in the token manager. + */ + public static final int LOOP_DETECTED = 3; - /** - * Indicates the reason why the exception is thrown. It will have - * one of the above 4 values. - */ - int errorCode; + /** + * Indicates the reason why the exception is thrown. It will have + * one of the above 4 values. + */ + int errorCode; - /** - * Replaces unprintable characters by their escaped (or unicode escaped) - * equivalents in the given string - */ - protected static final String addEscapes(String str) { - StringBuilder retval = new StringBuilder(); - for (int i = 0; i < str.length(); i++) { - final char ch = str.charAt(i); - switch (ch) - { - case '\b': - retval.append("\\b"); - continue; - case '\t': - retval.append("\\t"); - continue; - case '\n': - retval.append("\\n"); - continue; - case '\f': - retval.append("\\f"); - continue; - case '\r': - retval.append("\\r"); - continue; - case '\"': - retval.append("\\\""); - continue; - case '\'': - retval.append("\\\'"); - continue; - case '\\': - retval.append("\\\\"); - continue; - default: - if (ch < 0x20 || ch > 0x7e) { - String s = "0000" + Integer.toString(ch, 16); - retval.append("\\u").append (s.substring(s.length() - 4, s.length())); - } else { - retval.append(ch); - } - continue; - } + /** + * Replaces unprintable characters by their escaped (or unicode escaped) + * equivalents in the given string + */ + protected static final String addEscapes(String str) { + StringBuilder retval = new StringBuilder(); + for (int i = 0; i < str.length(); i++) { + final char ch = str.charAt(i); + switch (ch) { + case '\b': + retval.append("\\b"); + continue; + case '\t': + retval.append("\\t"); + continue; + case '\n': + retval.append("\\n"); + continue; + case '\f': + retval.append("\\f"); + continue; + case '\r': + retval.append("\\r"); + continue; + case '\"': + retval.append("\\\""); + continue; + case '\'': + retval.append("\\\'"); + continue; + case '\\': + retval.append("\\\\"); + continue; + default: + if (ch < 0x20 || ch > 0x7e) { + String s = "0000" + Integer.toString(ch, 16); + retval.append("\\u").append(s.substring(s.length() - 4, s.length())); + } else { + retval.append(ch); + } + continue; + } + } + return retval.toString(); } - return retval.toString(); - } - /** - * Returns a detailed message for the Error when it is thrown by the - * token manager to indicate a lexical error. - * Parameters : - * EOFSeen : indicates if EOF caused the lexical error - * curLexState : lexical state in which this error occurred - * errorLine : line number when the error occurred - * errorColumn : column number when the error occurred - * errorAfter : prefix that was seen before this error occurred - * curchar : the offending character - * Note: You can customize the lexical error message by modifying this method. - */ - protected static String LexicalErr(boolean EOFSeen, int lexState, int errorLine, int errorColumn, String errorAfter, int curChar) { - char curChar1 = (char)curChar; - return("Lexical error at line " + - errorLine + ", column " + - errorColumn + ". Encountered: " + - (EOFSeen ? " " : ("\"" + addEscapes(String.valueOf(curChar1)) + "\"") + " (" + curChar + "), ") + - "after : \"" + addEscapes(errorAfter) + "\""); - } + /** + * Returns a detailed message for the Error when it is thrown by the + * token manager to indicate a lexical error. + * Parameters : + * EOFSeen : indicates if EOF caused the lexical error + * curLexState : lexical state in which this error occurred + * errorLine : line number when the error occurred + * errorColumn : column number when the error occurred + * errorAfter : prefix that was seen before this error occurred + * curchar : the offending character + * Note: You can customize the lexical error message by modifying this method. + */ + protected static String LexicalErr(boolean EOFSeen, int lexState, int errorLine, int errorColumn, + String errorAfter, int curChar) { + char curChar1 = (char) curChar; + return ("Lexical error at line " + errorLine + ", column " + errorColumn + ". Encountered: " + + (EOFSeen ? " " : ("\"" + addEscapes(String.valueOf(curChar1)) + "\"") + " (" + curChar + "), ") + + "after : \"" + addEscapes(errorAfter) + "\""); + } - /** - * You can also modify the body of this method to customize your error messages. - * For example, cases like LOOP_DETECTED and INVALID_LEXICAL_STATE are not - * of end-users concern, so you can return something like : - * - * "Internal Error : Please file a bug report .... " - * - * from this method for such cases in the release version of your parser. - */ - @Override - public String getMessage() { - return super.getMessage(); - } + /** + * You can also modify the body of this method to customize your error messages. + * For example, cases like LOOP_DETECTED and INVALID_LEXICAL_STATE are not + * of end-users concern, so you can return something like : + * + * "Internal Error : Please file a bug report .... " + * + * from this method for such cases in the release version of your parser. + */ + @Override + public String getMessage() { + return super.getMessage(); + } - /* - * Constructors of various flavors follow. - */ - /** No arg constructor. */ - public TokenMgrException() { - } + /* + * Constructors of various flavors follow. + */ + /** No arg constructor. */ + public TokenMgrException() { + } - /** Constructor with message and reason. */ - public TokenMgrException(String message, int reason) { - super(message); - errorCode = reason; - } + /** Constructor with message and reason. */ + public TokenMgrException(String message, int reason) { + super(message); + errorCode = reason; + } - /** Full Constructor. */ - public TokenMgrException(boolean EOFSeen, int lexState, int errorLine, int errorColumn, String errorAfter, int curChar, int reason) { - this(LexicalErr(EOFSeen, lexState, errorLine, errorColumn, errorAfter, curChar), reason); - } + /** Full Constructor. */ + public TokenMgrException(boolean EOFSeen, int lexState, int errorLine, int errorColumn, String errorAfter, + int curChar, int reason) { + this(LexicalErr(EOFSeen, lexState, errorLine, errorColumn, errorAfter, curChar), reason); + } } -/* ParserGeneratorCC - OriginalChecksum=51415d4bac89ff5b77d5bdd572d2474f (do not edit this line) */ +/* ParserGeneratorCC - OriginalChecksum=14e3d675e6e8e95390f5e2ca56a6a76c (do not edit this line) */ diff --git a/horaedb-sql-javacc/src/test/java/org/apache/horaedb/sql/TableParserTest.java b/horaedb-sql-javacc/src/test/java/org/apache/horaedb/sql/TableParserTest.java index 6dd04b4..0005661 100644 --- a/horaedb-sql-javacc/src/test/java/org/apache/horaedb/sql/TableParserTest.java +++ b/horaedb-sql-javacc/src/test/java/org/apache/horaedb/sql/TableParserTest.java @@ -9,11 +9,11 @@ import org.apache.horaedb.common.parser.SqlParser; import org.apache.horaedb.common.parser.SqlParserFactory; +import org.apache.horaedb.common.parser.SqlParserFactoryProvider; import org.apache.horaedb.common.util.ServiceLoader; import org.junit.Assert; import org.junit.Test; - public class TableParserTest { @Test diff --git a/horaedb-sql/pom.xml b/horaedb-sql/pom.xml index e6c14ae..68e55d4 100644 --- a/horaedb-sql/pom.xml +++ b/horaedb-sql/pom.xml @@ -3,7 +3,7 @@ 4.0.0 horaedb-client - io.ceresdb + org.apache.horaedb ${revision} diff --git a/horaedb-sql/src/main/java/org/apache/horaedb/sql/JSqlParser.java b/horaedb-sql/src/main/java/org/apache/horaedb/sql/JSqlParser.java index d49ec09..dc0e24c 100644 --- a/horaedb-sql/src/main/java/org/apache/horaedb/sql/JSqlParser.java +++ b/horaedb-sql/src/main/java/org/apache/horaedb/sql/JSqlParser.java @@ -6,9 +6,6 @@ import java.util.Collections; import java.util.List; -import io.ceresdb.common.parser.SqlParser; -import io.ceresdb.common.util.internal.ThrowUtil; - import net.sf.jsqlparser.JSQLParserException; import net.sf.jsqlparser.parser.CCJSqlParserUtil; import net.sf.jsqlparser.statement.DescribeStatement; @@ -19,6 +16,8 @@ import net.sf.jsqlparser.statement.drop.Drop; import net.sf.jsqlparser.statement.insert.Insert; import net.sf.jsqlparser.statement.select.Select; +import org.apache.horaedb.common.parser.SqlParser; +import org.apache.horaedb.common.util.internal.ThrowUtil; /** * Parse SQL use JSqlParser. diff --git a/horaedb-sql/src/main/java/org/apache/horaedb/sql/JSqlParserFactory.java b/horaedb-sql/src/main/java/org/apache/horaedb/sql/JSqlParserFactory.java index 79ccd4c..54b146d 100644 --- a/horaedb-sql/src/main/java/org/apache/horaedb/sql/JSqlParserFactory.java +++ b/horaedb-sql/src/main/java/org/apache/horaedb/sql/JSqlParserFactory.java @@ -3,9 +3,9 @@ */ package org.apache.horaedb.sql; -import io.ceresdb.common.parser.SqlParser; -import io.ceresdb.common.parser.SqlParserFactory; -import io.ceresdb.common.SPI; +import org.apache.horaedb.common.SPI; +import org.apache.horaedb.common.parser.SqlParser; +import org.apache.horaedb.common.parser.SqlParserFactory; @SPI public class JSqlParserFactory implements SqlParserFactory { diff --git a/horaedb-sql/src/main/java/org/apache/horaedb/sql/SqlParserUtil.java b/horaedb-sql/src/main/java/org/apache/horaedb/sql/SqlParserUtil.java index 1648683..e61d6ab 100644 --- a/horaedb-sql/src/main/java/org/apache/horaedb/sql/SqlParserUtil.java +++ b/horaedb-sql/src/main/java/org/apache/horaedb/sql/SqlParserUtil.java @@ -7,14 +7,13 @@ import java.util.Set; import java.util.stream.Collectors; -import io.ceresdb.common.parser.SqlParser; -import io.ceresdb.common.util.Requires; - import net.sf.jsqlparser.statement.Statement; import net.sf.jsqlparser.statement.create.table.ColumnDefinition; import net.sf.jsqlparser.statement.create.table.CreateTable; import net.sf.jsqlparser.statement.create.table.Index; import net.sf.jsqlparser.util.TablesNamesFinder; +import org.apache.horaedb.common.parser.SqlParser; +import org.apache.horaedb.common.util.Requires; public class SqlParserUtil { diff --git a/horaedb-sql/src/test/java/org/apache/horaedb/sql/JSqlMetricParserTest.java b/horaedb-sql/src/test/java/org/apache/horaedb/sql/JSqlMetricParserTest.java index 6d7d36d..8208262 100644 --- a/horaedb-sql/src/test/java/org/apache/horaedb/sql/JSqlMetricParserTest.java +++ b/horaedb-sql/src/test/java/org/apache/horaedb/sql/JSqlMetricParserTest.java @@ -8,14 +8,13 @@ import java.util.List; import java.util.stream.Collectors; +import org.apache.horaedb.common.parser.SqlParser; +import org.apache.horaedb.common.parser.SqlParserFactory; +import org.apache.horaedb.common.parser.SqlParserFactoryProvider; +import org.apache.horaedb.common.util.ServiceLoader; import org.junit.Assert; import org.junit.Test; -import io.ceresdb.common.parser.SqlParser; -import io.ceresdb.common.parser.SqlParserFactory; -import io.ceresdb.common.parser.SqlParserFactoryProvider; -import io.ceresdb.common.util.ServiceLoader; - public class JSqlMetricParserTest { @Test diff --git a/pom.xml b/pom.xml index 43fa601..4379c42 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 - io.ceresdb + org.apache.horaedb horaedb-client ${revision} pom @@ -70,7 +70,7 @@ 4.9.1 2.8.0 UTF-8 - 1.0.0 + 2.0.0 3.21.7 1.7.21 From d883e1171e6836ff9c9dfa3580e6d88251ac3625 Mon Sep 17 00:00:00 2001 From: CooooolFrog Date: Fri, 29 Mar 2024 15:04:27 +0800 Subject: [PATCH 03/10] rename package --- docs/limit_policy.md | 4 +- docs/metrics_and_display.md | 2 +- .../common/util/DirectExecutorTest.java | 23 ----- .../util/ExecutorServiceHelperTest.java | 34 ------- .../ceresdb/common/util/RcObjectPoolTest.java | 62 ------------ .../io/ceresdb/common/util/SpinedBufTest.java | 97 ------------------- .../io/ceresdb/common/util/StringsTest.java | 72 -------------- .../ceresdb/common/util/TopKSelectorTest.java | 45 --------- .../ceresdb/common/util/UnsignedUtilTest.java | 32 ------ .../horaedb/common/util}/EndpointTest.java | 2 +- .../apache/horaedb}/CeresDBTest.java | 34 ++++--- .../apache/horaedb}/ReadmeTest.java | 10 +- .../apache/horaedb}/rpc/GrpcClient.java | 24 ++--- .../apache/horaedb}/rpc/GrpcFactory.java | 2 +- .../apache/horaedb}/rpc/IdChannel.java | 2 +- .../horaedb}/rpc/ManagedChannelHelper.java | 2 +- .../horaedb}/rpc/MarshallerRegistry.java | 2 +- .../ClientRequestLimitInterceptor.java | 6 +- .../ContextToHeadersInterceptor.java | 4 +- .../rpc/interceptors/MetricInterceptor.java | 2 +- .../horaedb}/rpc/limit/Gradient2Limit.java | 2 +- .../rpc/limit/LimitMetricRegistry.java | 2 +- .../horaedb}/rpc/limit/RequestLimitCtx.java | 2 +- .../rpc/limit/RequestLimiterBuilder.java | 2 +- .../apache/horaedb}/rpc/limit/VegasLimit.java | 2 +- .../rpc/signal/RpcLimitSignalHandler.java | 4 +- .../services/io.ceresdb.rpc.RpcFactory | 1 - .../services/io.horaedb.rpc.RpcFactory | 1 + ...apache.horaedb.common.signal.SignalHandler | 2 +- .../apache/horaedb}/rpc/LimitTest.java | 6 +- .../rpc/RequestLimiterInterceptorTest.java | 10 +- .../apache/horaedb}/rpc/StringMarshaller.java | 2 +- .../apache}/BlockingStreamIterator.java | 10 +- .../ceresdb => org/apache}/HoraeDBClient.java | 42 ++++---- .../apache}/ProxyRouterClient.java | 6 +- .../{io/ceresdb => org/apache}/Query.java | 16 +-- .../ceresdb => org/apache}/QueryClient.java | 26 ++--- .../{io/ceresdb => org/apache}/Route.java | 2 +- .../{io/ceresdb => org/apache}/RouteMode.java | 2 +- .../{io/ceresdb => org/apache}/Router.java | 4 +- .../ceresdb => org/apache}/RouterClient.java | 18 ++-- .../ceresdb => org/apache}/RowIterator.java | 4 +- .../{io/ceresdb => org/apache}/Write.java | 18 ++-- .../ceresdb => org/apache}/WriteClient.java | 32 +++--- .../horaedb}/errors/IteratorException.java | 2 +- .../horaedb}/errors/LimitedException.java | 2 +- .../horaedb}/errors/RouteTableException.java | 2 +- .../horaedb}/errors/StreamException.java | 2 +- .../apache/horaedb}/limit/CeresDBLimiter.java | 4 +- .../apache/horaedb}/limit/LimitedPolicy.java | 4 +- .../apache/horaedb}/limit/QueryLimiter.java | 10 +- .../apache/horaedb}/limit/WriteLimiter.java | 10 +- .../apache/horaedb}/models/Err.java | 2 +- .../apache/horaedb}/models/Keyword.java | 2 +- .../apache/horaedb}/models/Point.java | 4 +- .../horaedb}/models/RequestContext.java | 2 +- .../apache/horaedb}/models/Result.java | 2 +- .../apache/horaedb}/models/Row.java | 2 +- .../apache/horaedb}/models/SqlQueryOk.java | 2 +- .../horaedb}/models/SqlQueryRequest.java | 2 +- .../apache/horaedb}/models/Value.java | 2 +- .../apache/horaedb}/models/WriteOk.java | 2 +- .../apache/horaedb}/models/WriteRequest.java | 2 +- .../horaedb}/options/HoraeDBOptions.java | 8 +- .../apache/horaedb}/options/QueryOptions.java | 6 +- .../horaedb}/options/RouterOptions.java | 6 +- .../apache/horaedb}/options/WriteOptions.java | 6 +- .../signal/ClearRouteCacheSignalHandler.java | 4 +- .../horaedb}/signal/DisplaySignalHandler.java | 4 +- .../horaedb}/signal/MetricsSignalHandler.java | 2 +- .../signal/RwLoggingSignalHandler.java | 5 +- .../signal/ShowHelpSignalHandler.java | 2 +- .../signal/ShowRouteCacheSignalHandler.java | 4 +- .../horaedb}/util/RpcServiceRegister.java | 6 +- .../apache/horaedb}/util/StreamWriteBuf.java | 2 +- .../apache/horaedb}/util/Utils.java | 22 ++--- .../io.ceresdb.common.signal.SignalHandler | 6 -- .../io.horaedb.common.signal.SignalHandler | 6 ++ .../apache/horaedb}/HoraeDBClientTest.java | 21 ++-- .../apache/horaedb}/QueryClientTest.java | 25 ++--- .../apache/horaedb}/QueryLimiterTest.java | 20 ++-- .../apache/horaedb}/UtilsTest.java | 16 +-- .../apache/horaedb}/WriteClientTest.java | 31 +++--- .../apache/horaedb}/WriteLimitTest.java | 22 +++-- .../apache/horaedb}/models/ErrTest.java | 4 +- .../apache/horaedb}/models/PointTest.java | 6 +- .../apache/horaedb}/models/ResultTest.java | 6 +- .../apache/horaedb}/models/RowTest.java | 4 +- .../apache/horaedb}/models/ValueTest.java | 3 +- .../apache/horaedb}/models/WriteOkTest.java | 3 +- .../apache/horaedb}/util/TestUtil.java | 8 +- .../apache/horaedb}/rpc/Context.java | 2 +- .../apache/horaedb}/rpc/MethodDescriptor.java | 2 +- .../apache/horaedb}/rpc/Observer.java | 2 +- .../apache/horaedb}/rpc/RpcClient.java | 4 +- .../apache/horaedb}/rpc/RpcFactory.java | 2 +- .../horaedb}/rpc/RpcFactoryProvider.java | 2 +- .../apache/horaedb}/rpc/RpcOptions.java | 2 +- .../rpc/errors/ConnectFailException.java | 2 +- .../rpc/errors/InvokeTimeoutException.java | 2 +- .../horaedb}/rpc/errors/OnlyErrorMessage.java | 2 +- .../rpc/errors/RemotingException.java | 2 +- .../org/apache/horaedb/sql/CeresDBParser.java | 2 +- 103 files changed, 340 insertions(+), 681 deletions(-) delete mode 100644 horaedb-common/src/test/java/io/ceresdb/common/util/DirectExecutorTest.java delete mode 100644 horaedb-common/src/test/java/io/ceresdb/common/util/ExecutorServiceHelperTest.java delete mode 100644 horaedb-common/src/test/java/io/ceresdb/common/util/RcObjectPoolTest.java delete mode 100644 horaedb-common/src/test/java/io/ceresdb/common/util/SpinedBufTest.java delete mode 100644 horaedb-common/src/test/java/io/ceresdb/common/util/StringsTest.java delete mode 100644 horaedb-common/src/test/java/io/ceresdb/common/util/TopKSelectorTest.java delete mode 100644 horaedb-common/src/test/java/io/ceresdb/common/util/UnsignedUtilTest.java rename horaedb-common/src/test/java/{io/ceresdb/common => org/apache/horaedb/common/util}/EndpointTest.java (90%) rename horaedb-example/src/test/java/{io/ceresdb => org/apache/horaedb}/CeresDBTest.java (94%) rename horaedb-example/src/test/java/{io/ceresdb => org/apache/horaedb}/ReadmeTest.java (96%) rename horaedb-grpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/GrpcClient.java (97%) rename horaedb-grpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/GrpcFactory.java (97%) rename horaedb-grpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/IdChannel.java (98%) rename horaedb-grpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/ManagedChannelHelper.java (98%) rename horaedb-grpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/MarshallerRegistry.java (99%) rename horaedb-grpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/interceptors/ClientRequestLimitInterceptor.java (97%) rename horaedb-grpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/interceptors/ContextToHeadersInterceptor.java (95%) rename horaedb-grpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/interceptors/MetricInterceptor.java (98%) rename horaedb-grpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/limit/Gradient2Limit.java (99%) rename horaedb-grpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/limit/LimitMetricRegistry.java (96%) rename horaedb-grpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/limit/RequestLimitCtx.java (79%) rename horaedb-grpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/limit/RequestLimiterBuilder.java (97%) rename horaedb-grpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/limit/VegasLimit.java (99%) rename horaedb-grpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/signal/RpcLimitSignalHandler.java (90%) delete mode 100644 horaedb-grpc/src/main/resources/META-INF/services/io.ceresdb.rpc.RpcFactory create mode 100644 horaedb-grpc/src/main/resources/META-INF/services/io.horaedb.rpc.RpcFactory rename horaedb-grpc/src/test/java/{io/ceresdb => org/apache/horaedb}/rpc/LimitTest.java (96%) rename horaedb-grpc/src/test/java/{io/ceresdb => org/apache/horaedb}/rpc/RequestLimiterInterceptorTest.java (91%) rename horaedb-grpc/src/test/java/{io/ceresdb => org/apache/horaedb}/rpc/StringMarshaller.java (97%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache}/BlockingStreamIterator.java (93%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache}/HoraeDBClient.java (92%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache}/ProxyRouterClient.java (91%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache}/Query.java (89%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache}/QueryClient.java (95%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache}/Route.java (98%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache}/RouteMode.java (95%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache}/Router.java (86%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache}/RouterClient.java (97%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache}/RowIterator.java (93%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache}/Write.java (80%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache}/WriteClient.java (97%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/errors/IteratorException.java (95%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/errors/LimitedException.java (95%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/errors/RouteTableException.java (95%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/errors/StreamException.java (95%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/limit/CeresDBLimiter.java (97%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/limit/LimitedPolicy.java (97%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/limit/QueryLimiter.java (67%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/limit/WriteLimiter.java (68%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/models/Err.java (99%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/models/Keyword.java (91%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/models/Point.java (96%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/models/RequestContext.java (91%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/models/Result.java (99%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/models/Row.java (98%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/models/SqlQueryOk.java (98%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/models/SqlQueryRequest.java (98%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/models/Value.java (99%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/models/WriteOk.java (98%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/models/WriteRequest.java (94%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/options/HoraeDBOptions.java (98%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/options/QueryOptions.java (95%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/options/RouterOptions.java (96%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/options/WriteOptions.java (96%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/signal/ClearRouteCacheSignalHandler.java (94%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/signal/DisplaySignalHandler.java (96%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/signal/MetricsSignalHandler.java (98%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/signal/RwLoggingSignalHandler.java (93%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/signal/ShowHelpSignalHandler.java (98%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/signal/ShowRouteCacheSignalHandler.java (96%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/util/RpcServiceRegister.java (95%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/util/StreamWriteBuf.java (97%) rename horaedb-protocol/src/main/java/{io/ceresdb => org/apache/horaedb}/util/Utils.java (98%) delete mode 100644 horaedb-protocol/src/main/resources/META-INF/services/io.ceresdb.common.signal.SignalHandler create mode 100644 horaedb-protocol/src/main/resources/META-INF/services/io.horaedb.common.signal.SignalHandler rename horaedb-protocol/src/test/java/{io/ceresdb => org/apache/horaedb}/HoraeDBClientTest.java (86%) rename horaedb-protocol/src/test/java/{io/ceresdb => org/apache/horaedb}/QueryClientTest.java (97%) rename horaedb-protocol/src/test/java/{io/ceresdb => org/apache/horaedb}/QueryLimiterTest.java (91%) rename horaedb-protocol/src/test/java/{io/ceresdb => org/apache/horaedb}/UtilsTest.java (92%) rename horaedb-protocol/src/test/java/{io/ceresdb => org/apache/horaedb}/WriteClientTest.java (95%) rename horaedb-protocol/src/test/java/{io/ceresdb => org/apache/horaedb}/WriteLimitTest.java (90%) rename horaedb-protocol/src/test/java/{io/ceresdb => org/apache/horaedb}/models/ErrTest.java (93%) rename horaedb-protocol/src/test/java/{io/ceresdb => org/apache/horaedb}/models/PointTest.java (92%) rename horaedb-protocol/src/test/java/{io/ceresdb => org/apache/horaedb}/models/ResultTest.java (97%) rename horaedb-protocol/src/test/java/{io/ceresdb => org/apache/horaedb}/models/RowTest.java (91%) rename horaedb-protocol/src/test/java/{io/ceresdb => org/apache/horaedb}/models/ValueTest.java (98%) rename horaedb-protocol/src/test/java/{io/ceresdb => org/apache/horaedb}/models/WriteOkTest.java (94%) rename horaedb-protocol/src/test/java/{io/ceresdb => org/apache/horaedb}/util/TestUtil.java (94%) rename horaedb-rpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/Context.java (98%) rename horaedb-rpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/MethodDescriptor.java (98%) rename horaedb-rpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/Observer.java (98%) rename horaedb-rpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/RpcClient.java (98%) rename horaedb-rpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/RpcFactory.java (97%) rename horaedb-rpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/RpcFactoryProvider.java (94%) rename horaedb-rpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/RpcOptions.java (99%) rename horaedb-rpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/errors/ConnectFailException.java (95%) rename horaedb-rpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/errors/InvokeTimeoutException.java (95%) rename horaedb-rpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/errors/OnlyErrorMessage.java (92%) rename horaedb-rpc/src/main/java/{io/ceresdb => org/apache/horaedb}/rpc/errors/RemotingException.java (95%) diff --git a/docs/limit_policy.md b/docs/limit_policy.md index 0a0f22d..465c4c2 100644 --- a/docs/limit_policy.md +++ b/docs/limit_policy.md @@ -47,6 +47,6 @@ newLimit = gradient * currentLimit + queueSize; newLimit = currentLimit * (1 - smoothing) + newLimit * smoothing ``` -- The default adaptive current limiting algorithm is `Gradient`,you can set in configuration `io.ceresdb.rpc.RpcOptions.limitKind = Vegas` by `Vegas`, or set `io.ceresdb.rpc.RpcOptions.limitKind = None` to close -- It will fail quickly when the limit is reached by default, and it can also be set by setting `io.ceresdb.rpc.RpcOptions.blockOnLimit = true` +- The default adaptive current limiting algorithm is `Gradient`,you can set in configuration `org.apache.horaedb.rpc.RpcOptions.limitKind = Vegas` by `Vegas`, or set `org.apache.horaedb.rpc.RpcOptions.limitKind = None` to close +- It will fail quickly when the limit is reached by default, and it can also be set by setting `org.apache.horaedb.rpc.RpcOptions.blockOnLimit = true` - Write and read requests share this current limiter. By default, 70% and 30% of the access permissions can be obtained for write and read respectively. You can use the startup parameters `-DCeresDB.rpc.write.limit_percent=xxx`,readLimitPercent is `1 - writeLimitPercent` diff --git a/docs/metrics_and_display.md b/docs/metrics_and_display.md index 1ca113f..f82fc6c 100644 --- a/docs/metrics_and_display.md +++ b/docs/metrics_and_display.md @@ -583,7 +583,7 @@ routeCache.size=1 --- GrpcClient --- started=true opts=RpcOptions{defaultRpcTimeout=10000, rpcThreadPoolSize=0, rpcThreadPoolQueueSize=16, maxInboundMessageSize=67108864, flowControlWindow=67108864, idleTimeoutSeconds=300, keepAliveTimeSeconds=3, keepAliveTimeoutSeconds=3, keepAliveWithoutCalls=true, openVegasLimiter=true, vegasInitialLimit=50, blockOnLimit=false} -connectionObservers=[io.ceresdb.HoraeDBClient$RpcConnectionObserver@465f5824] +connectionObservers=[org.apache.HoraeDBClient$RpcConnectionObserver@465f5824] asyncPool=DirectExecutor{name='grpc_executor'} interceptors=[io.ceresdb.rpc.interceptors.MetricInterceptor@62b47ad1, io.ceresdb.rpc.interceptors.ClientRequestLimitInterceptor@77533e32, io.ceresdb.rpc.interceptors.ContextToHeadersInterceptor@1a52427d] managedChannelPool={127.0.0.1:8831=ManagedChannelOrphanWrapper{delegate=ManagedChannelImpl{logId=1, target=127.0.0.1:8831}}} diff --git a/horaedb-common/src/test/java/io/ceresdb/common/util/DirectExecutorTest.java b/horaedb-common/src/test/java/io/ceresdb/common/util/DirectExecutorTest.java deleted file mode 100644 index 3052497..0000000 --- a/horaedb-common/src/test/java/io/ceresdb/common/util/DirectExecutorTest.java +++ /dev/null @@ -1,23 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -package io.ceresdb.common.util; - -import java.util.concurrent.Executor; - -import org.apache.horaedb.common.util.DirectExecutor; -import org.apache.horaedb.common.util.RefCell; -import org.junit.Assert; -import org.junit.Test; - -public class DirectExecutorTest { - - @Test - public void selfExecuteTest() { - final Executor executor = new DirectExecutor("test"); - final Thread t = Thread.currentThread(); - final RefCell t2 = new RefCell<>(); - executor.execute(() -> t2.set(Thread.currentThread())); - Assert.assertSame(t, t2.get()); - } -} diff --git a/horaedb-common/src/test/java/io/ceresdb/common/util/ExecutorServiceHelperTest.java b/horaedb-common/src/test/java/io/ceresdb/common/util/ExecutorServiceHelperTest.java deleted file mode 100644 index b6ef8d0..0000000 --- a/horaedb-common/src/test/java/io/ceresdb/common/util/ExecutorServiceHelperTest.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -package io.ceresdb.common.util; - -import java.util.concurrent.ExecutorService; -import java.util.concurrent.SynchronousQueue; - -import org.apache.horaedb.common.util.ExecutorServiceHelper; -import org.apache.horaedb.common.util.NamedThreadFactory; -import org.apache.horaedb.common.util.ThreadPoolUtil; -import org.junit.Assert; -import org.junit.Test; - -public class ExecutorServiceHelperTest { - - @Test - public void shutdownNullTest() { - Assert.assertTrue(ExecutorServiceHelper.shutdownAndAwaitTermination(null)); - } - - @Test - public void shutdownNotStart() { - final ExecutorService e = ThreadPoolUtil.newBuilder().poolName("test_shutdown") // - .coreThreads(1) // - .maximumThreads(1) // - .keepAliveSeconds(100L) // - .workQueue(new SynchronousQueue<>()) // - .enableMetric(false) // - .threadFactory(new NamedThreadFactory("test_shutdown")) // - .build(); - Assert.assertTrue(ExecutorServiceHelper.shutdownAndAwaitTermination(e)); - } -} diff --git a/horaedb-common/src/test/java/io/ceresdb/common/util/RcObjectPoolTest.java b/horaedb-common/src/test/java/io/ceresdb/common/util/RcObjectPoolTest.java deleted file mode 100644 index f070df9..0000000 --- a/horaedb-common/src/test/java/io/ceresdb/common/util/RcObjectPoolTest.java +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -package io.ceresdb.common.util; - -import org.apache.horaedb.common.util.ObjectPool; -import org.apache.horaedb.common.util.RcObjectPool; -import org.junit.Assert; -import org.junit.Test; - -public class RcObjectPoolTest { - - static final ObjectPool.Resource RESOURCE = new ObjectPool.Resource() { - - @Override - public Object create() { - return new Object(); - } - - @Override - public void close(final Object instance) { - } - }; - - static final RcObjectPool POOL = new RcObjectPool<>(RESOURCE); - - @Test - public void sharedTest() { - final Object obj1 = POOL.getObject(); - final Object obj2 = POOL.getObject(); - Assert.assertEquals(obj1, obj2); - POOL.returnObject(obj1); - POOL.returnObject(obj2); - } - - @Test - public void reCreateTest() { - final Object obj1 = POOL.getObject(); - POOL.returnObject(obj1); - final Object obj2 = POOL.getObject(); - Assert.assertNotEquals(obj1, obj2); - POOL.returnObject(obj2); - } - - @Test(expected = IllegalArgumentException.class) - public void returnWrongInstanceTest() { - POOL.getObject(); - POOL.returnObject(new Object()); - } - - @Test(expected = NullPointerException.class) - public void returnBeforeGetObjectTest() { - POOL.returnObject(new Object()); - } - - @Test(expected = NullPointerException.class) - public void returnTooMoreTest() { - final Object obj = POOL.getObject(); - POOL.returnObject(obj); - POOL.returnObject(obj); - } -} diff --git a/horaedb-common/src/test/java/io/ceresdb/common/util/SpinedBufTest.java b/horaedb-common/src/test/java/io/ceresdb/common/util/SpinedBufTest.java deleted file mode 100644 index 7fb854a..0000000 --- a/horaedb-common/src/test/java/io/ceresdb/common/util/SpinedBufTest.java +++ /dev/null @@ -1,97 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -package io.ceresdb.common.util; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collection; - -import org.apache.horaedb.common.util.Spines; -import org.junit.Assert; -import org.junit.Test; - -public class SpinedBufTest { - - @Test - public void addTest() { - addAndCheck(10); - addAndCheck(100); - addAndCheck(1000); - addAndCheck(10000); - addAndCheck(100000); - } - - @SuppressWarnings("ConstantConditions") - public void addAndCheck(final int count) { - final Collection buf1 = Spines.newBuf(); - final Collection buf2 = new ArrayList<>(); - - for (int i = 0; i < count; i++) { - buf1.add(i); - buf2.add(i); - } - - Assert.assertEquals(buf1, buf2); - - buf1.clear(); - Assert.assertTrue(buf1.isEmpty()); - } - - @Test - public void sizeTest() { - final Collection buf = Spines.newBuf(); - Assert.assertEquals(0, buf.size()); - add(buf, 1); - Assert.assertEquals(1, buf.size()); - add(buf, 15); - Assert.assertEquals(16, buf.size()); - } - - private void add(final Collection buf, final int count) { - for (int i = 0; i < count; i++) { - buf.add(i); - } - } - - @SuppressWarnings("ConstantConditions") - @Test - public void isEmptyTest() { - final Collection buf = Spines.newBuf(); - Assert.assertTrue(buf.isEmpty()); - add(buf, 1); - Assert.assertFalse(buf.isEmpty()); - buf.clear(); - Assert.assertTrue(buf.isEmpty()); - } - - @Test - public void containsTest() { - final int count = 10; - final Collection buf = Spines.newBuf(); - add(buf, count); - for (int i = 0; i < count; i++) { - Assert.assertTrue(buf.contains(i)); - } - - Assert.assertTrue(buf.containsAll(Arrays.asList(1, 2, 3))); - } - - @Test - public void toArrayTest() { - final int count = 10; - final Collection buf = Spines.newBuf(); - add(buf, count); - final Object[] array = buf.toArray(); - int i = 0; - for (final Integer v : buf) { - Assert.assertEquals(v, array[i++]); - } - - final Integer[] array2 = buf.toArray(new Integer[0]); - i = 0; - for (final Integer v : buf) { - Assert.assertEquals(v, array2[i++]); - } - } -} diff --git a/horaedb-common/src/test/java/io/ceresdb/common/util/StringsTest.java b/horaedb-common/src/test/java/io/ceresdb/common/util/StringsTest.java deleted file mode 100644 index 31dacb2..0000000 --- a/horaedb-common/src/test/java/io/ceresdb/common/util/StringsTest.java +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -package io.ceresdb.common.util; - -import org.apache.horaedb.common.util.Strings; -import org.junit.Assert; -import org.junit.Test; - -public class StringsTest { - - @Test - public void nullToEmptyTest() { - Assert.assertEquals("", Strings.nullToEmpty(null)); - } - - @Test - public void emptyToNullTest() { - Assert.assertNull(Strings.emptyToNull("")); - Assert.assertNotNull(Strings.emptyToNull(" ")); - } - - @Test - public void isNullOrEmptyTest() { - Assert.assertTrue(Strings.isNullOrEmpty("")); - } - - @Test - public void isBlankTest() { - Assert.assertTrue(Strings.isBlank(null)); - Assert.assertTrue(Strings.isBlank("")); - Assert.assertTrue(Strings.isBlank(" ")); - - Assert.assertFalse(Strings.isBlank("bob")); - Assert.assertFalse(Strings.isBlank(" bob ")); - } - - @Test - public void isNotBlankTest() { - Assert.assertFalse(Strings.isNotBlank(null)); - Assert.assertFalse(Strings.isNotBlank("")); - Assert.assertFalse(Strings.isNotBlank(" ")); - - Assert.assertTrue(Strings.isNotBlank("bob")); - Assert.assertTrue(Strings.isNotBlank(" bob ")); - } - - @Test - public void splitTest() { - Assert.assertNull(Strings.split(null, '*')); - Assert.assertArrayEquals(new String[0], Strings.split("", '*')); - Assert.assertArrayEquals(new String[] { "a", "b", "c" }, Strings.split("a.b.c", '.')); - Assert.assertArrayEquals(new String[] { "a", "b", "c" }, Strings.split("a..b.c", '.')); - Assert.assertArrayEquals(new String[] { "a:b:c" }, Strings.split("a:b:c", '.')); - Assert.assertArrayEquals(new String[] { "a", "b", "c" }, Strings.split("a b c", ' ')); - } - - @Test - public void splitPreserveAllTokensTest() { - Assert.assertNull(Strings.split(null, '*', true)); - Assert.assertArrayEquals(new String[0], Strings.split("", '*', true)); - Assert.assertArrayEquals(new String[] { "a", "b", "c" }, Strings.split("a.b.c", '.', true)); - Assert.assertArrayEquals(new String[] { "a", "", "b", "c" }, Strings.split("a..b.c", '.', true)); - Assert.assertArrayEquals(new String[] { "a:b:c" }, Strings.split("a:b:c", '.', true)); - Assert.assertArrayEquals(new String[] { "a", "b", "c" }, Strings.split("a b c", ' ', true)); - Assert.assertArrayEquals(new String[] { "a", "b", "c", "" }, Strings.split("a b c ", ' ', true)); - Assert.assertArrayEquals(new String[] { "a", "b", "c", "", "" }, Strings.split("a b c ", ' ', true)); - Assert.assertArrayEquals(new String[] { "", "a", "b", "c" }, Strings.split(" a b c", ' ', true)); - Assert.assertArrayEquals(new String[] { "", "", "a", "b", "c" }, Strings.split(" a b c", ' ', true)); - Assert.assertArrayEquals(new String[] { "", "a", "b", "c", "" }, Strings.split(" a b c ", ' ', true)); - } -} diff --git a/horaedb-common/src/test/java/io/ceresdb/common/util/TopKSelectorTest.java b/horaedb-common/src/test/java/io/ceresdb/common/util/TopKSelectorTest.java deleted file mode 100644 index 031a228..0000000 --- a/horaedb-common/src/test/java/io/ceresdb/common/util/TopKSelectorTest.java +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -package io.ceresdb.common.util; - -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; - -import org.apache.horaedb.common.util.TopKSelector; -import org.junit.Assert; -import org.junit.Test; - -public class TopKSelectorTest { - - @Test - public void selectTopKTest() { - final Map map = new HashMap() { - private static final long serialVersionUID = 2125026175853916643L; - - { - put("a", 12); - put("b", 11); - put("c", 10); - put("d", 9); - put("e", 8); - put("f", 7); - put("g", 6); - put("h", 5); - put("i", 4); - put("j", 3); - put("k", 2); - put("l", 1); - } - }; - - final List top5Keys = TopKSelector - .selectTopK(map.entrySet(), 3, (o1, o2) -> -o1.getValue().compareTo(o2.getValue())) // - .map(Map.Entry::getKey) // - .collect(Collectors.toList()); - Assert.assertEquals(Arrays.asList("j", "k", "l"), top5Keys); - } -} diff --git a/horaedb-common/src/test/java/io/ceresdb/common/util/UnsignedUtilTest.java b/horaedb-common/src/test/java/io/ceresdb/common/util/UnsignedUtilTest.java deleted file mode 100644 index 7d948ca..0000000 --- a/horaedb-common/src/test/java/io/ceresdb/common/util/UnsignedUtilTest.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. - */ -package io.ceresdb.common.util; - -import java.math.BigInteger; - -import org.apache.horaedb.common.util.UnsignedUtil; -import org.junit.Assert; -import org.junit.Test; - -public class UnsignedUtilTest { - - @SuppressWarnings("all") - @Test - public void u64Test() { - final long toAdd = 3; - long longVal = Long.MAX_VALUE; - final BigInteger maxLongVal = BigInteger.valueOf(longVal); - longVal += toAdd; - Assert.assertTrue(longVal < 0); - final BigInteger u64Val = UnsignedUtil.getUInt64(longVal); - Assert.assertEquals(maxLongVal.add(BigInteger.valueOf(toAdd)), u64Val); - final long newLong = UnsignedUtil.getInt64(u64Val); - Assert.assertEquals(longVal, newLong); - } - - @Test - public void zeroTest() { - Assert.assertEquals(0, UnsignedUtil.getUInt64(0).longValueExact()); - } -} diff --git a/horaedb-common/src/test/java/io/ceresdb/common/EndpointTest.java b/horaedb-common/src/test/java/org/apache/horaedb/common/util/EndpointTest.java similarity index 90% rename from horaedb-common/src/test/java/io/ceresdb/common/EndpointTest.java rename to horaedb-common/src/test/java/org/apache/horaedb/common/util/EndpointTest.java index 3a43894..be9418d 100644 --- a/horaedb-common/src/test/java/io/ceresdb/common/EndpointTest.java +++ b/horaedb-common/src/test/java/org/apache/horaedb/common/util/EndpointTest.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.common; +package org.apache.horaedb.common.util; import org.apache.horaedb.common.Endpoint; import org.junit.Assert; diff --git a/horaedb-example/src/test/java/io/ceresdb/CeresDBTest.java b/horaedb-example/src/test/java/org/apache/horaedb/CeresDBTest.java similarity index 94% rename from horaedb-example/src/test/java/io/ceresdb/CeresDBTest.java rename to horaedb-example/src/test/java/org/apache/horaedb/CeresDBTest.java index 8b3ae57..9e7a4bc 100644 --- a/horaedb-example/src/test/java/io/ceresdb/CeresDBTest.java +++ b/horaedb-example/src/test/java/org/apache/horaedb/CeresDBTest.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache.horaedb; import java.text.SimpleDateFormat; import java.util.ArrayList; @@ -13,7 +13,11 @@ import java.util.concurrent.ThreadLocalRandom; import java.util.concurrent.TimeUnit; -import io.ceresdb.options.HoraeDBOptions; +import org.apache.HoraeDBClient; +import org.apache.RouteMode; +import org.apache.horaedb.common.util.MetricsUtil; +import org.apache.horaedb.common.util.internal.ThrowUtil; +import org.apache.horaedb.options.HoraeDBOptions; import org.junit.After; import org.junit.Assert; import org.junit.Before; @@ -22,19 +26,17 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.common.util.MetricsUtil; -import io.ceresdb.common.util.internal.ThrowUtil; -import io.ceresdb.models.Err; -import io.ceresdb.models.Point; -import io.ceresdb.models.Row; -import io.ceresdb.models.SqlQueryOk; -import io.ceresdb.models.SqlQueryRequest; -import io.ceresdb.models.Result; -import io.ceresdb.models.Value; -import io.ceresdb.models.WriteOk; -import io.ceresdb.models.WriteRequest; -import io.ceresdb.rpc.RpcOptions; -import io.ceresdb.util.StreamWriteBuf; +import org.apache.horaedb.models.Err; +import org.apache.horaedb.models.Point; +import org.apache.horaedb.models.Row; +import org.apache.horaedb.models.SqlQueryOk; +import org.apache.horaedb.models.SqlQueryRequest; +import org.apache.horaedb.models.Result; +import org.apache.horaedb.models.Value; +import org.apache.horaedb.models.WriteOk; +import org.apache.horaedb.models.WriteRequest; +import org.apache.horaedb.rpc.RpcOptions; +import org.apache.horaedb.util.StreamWriteBuf; public class CeresDBTest { @@ -90,7 +92,7 @@ public void before() throws Exception { "fUint8 UINT8 NULL," + // "fTimestamp TIMESTAMP NULL," + // - //"fVarbinary VARBINARY NULL, + //" + //"fVarbinary VARBINARY NULL, + //" "TIMESTAMP KEY(ts)) ENGINE=Analytic WITH (ttl='7d')", TEST_TABLE_NAME)).get(); if (!createResult.isOk()) { diff --git a/horaedb-example/src/test/java/io/ceresdb/ReadmeTest.java b/horaedb-example/src/test/java/org/apache/horaedb/ReadmeTest.java similarity index 96% rename from horaedb-example/src/test/java/io/ceresdb/ReadmeTest.java rename to horaedb-example/src/test/java/org/apache/horaedb/ReadmeTest.java index 4cef098..2b56564 100644 --- a/horaedb-example/src/test/java/io/ceresdb/ReadmeTest.java +++ b/horaedb-example/src/test/java/org/apache/horaedb/ReadmeTest.java @@ -1,11 +1,15 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache.horaedb; import io.ceresdb.models.*; -import io.ceresdb.options.HoraeDBOptions; -import io.ceresdb.util.StreamWriteBuf; +import org.apache.HoraeDBClient; +import org.apache.RouteMode; +import org.apache.horaedb.models.*; +import org.apache.models.*; +import org.apache.horaedb.options.HoraeDBOptions; +import org.apache.horaedb.util.StreamWriteBuf; import org.junit.Assert; import org.junit.Ignore; diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/GrpcClient.java b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/GrpcClient.java similarity index 97% rename from horaedb-grpc/src/main/java/io/ceresdb/rpc/GrpcClient.java rename to horaedb-grpc/src/main/java/org/apache/horaedb/rpc/GrpcClient.java index 7ac5c32..db8331c 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/GrpcClient.java +++ b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/GrpcClient.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc; +package org.apache.horaedb.rpc; import java.util.List; import java.util.Map; @@ -52,17 +52,17 @@ import org.apache.horaedb.common.util.StringBuilderHelper; import org.apache.horaedb.common.util.SystemPropertyUtil; import org.apache.horaedb.common.util.ThreadPoolUtil; -import io.ceresdb.rpc.errors.ConnectFailException; -import io.ceresdb.rpc.errors.InvokeTimeoutException; -import io.ceresdb.rpc.errors.OnlyErrorMessage; -import io.ceresdb.rpc.errors.RemotingException; -import io.ceresdb.rpc.interceptors.ClientRequestLimitInterceptor; -import io.ceresdb.rpc.interceptors.ContextToHeadersInterceptor; -import io.ceresdb.rpc.interceptors.MetricInterceptor; -import io.ceresdb.rpc.limit.Gradient2Limit; -import io.ceresdb.rpc.limit.LimitMetricRegistry; -import io.ceresdb.rpc.limit.RequestLimiterBuilder; -import io.ceresdb.rpc.limit.VegasLimit; +import org.apache.horaedb.rpc.errors.ConnectFailException; +import org.apache.horaedb.rpc.errors.InvokeTimeoutException; +import org.apache.horaedb.rpc.errors.OnlyErrorMessage; +import org.apache.horaedb.rpc.errors.RemotingException; +import org.apache.horaedb.rpc.interceptors.ClientRequestLimitInterceptor; +import org.apache.horaedb.rpc.interceptors.ContextToHeadersInterceptor; +import org.apache.horaedb.rpc.interceptors.MetricInterceptor; +import org.apache.horaedb.rpc.limit.Gradient2Limit; +import org.apache.horaedb.rpc.limit.LimitMetricRegistry; +import org.apache.horaedb.rpc.limit.RequestLimiterBuilder; +import org.apache.horaedb.rpc.limit.VegasLimit; import com.google.protobuf.Message; import com.netflix.concurrency.limits.Limit; import com.netflix.concurrency.limits.MetricRegistry; diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/GrpcFactory.java b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/GrpcFactory.java similarity index 97% rename from horaedb-grpc/src/main/java/io/ceresdb/rpc/GrpcFactory.java rename to horaedb-grpc/src/main/java/org/apache/horaedb/rpc/GrpcFactory.java index 603a945..43a38ef 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/GrpcFactory.java +++ b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/GrpcFactory.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc; +package org.apache.horaedb.rpc; import org.apache.horaedb.common.SPI; import com.google.protobuf.Message; diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/IdChannel.java b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/IdChannel.java similarity index 98% rename from horaedb-grpc/src/main/java/io/ceresdb/rpc/IdChannel.java rename to horaedb-grpc/src/main/java/org/apache/horaedb/rpc/IdChannel.java index 3d3067b..030c53c 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/IdChannel.java +++ b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/IdChannel.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc; +package org.apache.horaedb.rpc; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicLong; diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/ManagedChannelHelper.java b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/ManagedChannelHelper.java similarity index 98% rename from horaedb-grpc/src/main/java/io/ceresdb/rpc/ManagedChannelHelper.java rename to horaedb-grpc/src/main/java/org/apache/horaedb/rpc/ManagedChannelHelper.java index eb5864c..9307b55 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/ManagedChannelHelper.java +++ b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/ManagedChannelHelper.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc; +package org.apache.horaedb.rpc; import java.util.concurrent.TimeUnit; diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/MarshallerRegistry.java b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/MarshallerRegistry.java similarity index 99% rename from horaedb-grpc/src/main/java/io/ceresdb/rpc/MarshallerRegistry.java rename to horaedb-grpc/src/main/java/org/apache/horaedb/rpc/MarshallerRegistry.java index 279cca5..fc9f8d7 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/MarshallerRegistry.java +++ b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/MarshallerRegistry.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc; +package org.apache.horaedb.rpc; import java.util.Map; import java.util.Set; diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/interceptors/ClientRequestLimitInterceptor.java b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/interceptors/ClientRequestLimitInterceptor.java similarity index 97% rename from horaedb-grpc/src/main/java/io/ceresdb/rpc/interceptors/ClientRequestLimitInterceptor.java rename to horaedb-grpc/src/main/java/org/apache/horaedb/rpc/interceptors/ClientRequestLimitInterceptor.java index 9738de5..66ff317 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/interceptors/ClientRequestLimitInterceptor.java +++ b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/interceptors/ClientRequestLimitInterceptor.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc.interceptors; +package org.apache.horaedb.rpc.interceptors; import java.util.concurrent.atomic.AtomicBoolean; import java.util.function.Function; @@ -17,8 +17,8 @@ import io.grpc.Status; import org.apache.horaedb.common.util.MetricsUtil; -import io.ceresdb.rpc.limit.LimitMetricRegistry; -import io.ceresdb.rpc.limit.RequestLimitCtx; +import org.apache.horaedb.rpc.limit.LimitMetricRegistry; +import org.apache.horaedb.rpc.limit.RequestLimitCtx; import com.netflix.concurrency.limits.Limiter; /** diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/interceptors/ContextToHeadersInterceptor.java b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/interceptors/ContextToHeadersInterceptor.java similarity index 95% rename from horaedb-grpc/src/main/java/io/ceresdb/rpc/interceptors/ContextToHeadersInterceptor.java rename to horaedb-grpc/src/main/java/org/apache/horaedb/rpc/interceptors/ContextToHeadersInterceptor.java index e4da5db..d69122d 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/interceptors/ContextToHeadersInterceptor.java +++ b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/interceptors/ContextToHeadersInterceptor.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc.interceptors; +package org.apache.horaedb.rpc.interceptors; import io.grpc.CallOptions; import io.grpc.Channel; @@ -11,7 +11,7 @@ import io.grpc.Metadata; import io.grpc.MethodDescriptor; -import io.ceresdb.rpc.Context; +import org.apache.horaedb.rpc.Context; /** * Add RPC context to Grpc headers. diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/interceptors/MetricInterceptor.java b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/interceptors/MetricInterceptor.java similarity index 98% rename from horaedb-grpc/src/main/java/io/ceresdb/rpc/interceptors/MetricInterceptor.java rename to horaedb-grpc/src/main/java/org/apache/horaedb/rpc/interceptors/MetricInterceptor.java index 3a98bd4..2c4856d 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/interceptors/MetricInterceptor.java +++ b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/interceptors/MetricInterceptor.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc.interceptors; +package org.apache.horaedb.rpc.interceptors; import io.grpc.CallOptions; import io.grpc.Channel; diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/Gradient2Limit.java b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/limit/Gradient2Limit.java similarity index 99% rename from horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/Gradient2Limit.java rename to horaedb-grpc/src/main/java/org/apache/horaedb/rpc/limit/Gradient2Limit.java index bd0b123..95f943d 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/Gradient2Limit.java +++ b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/limit/Gradient2Limit.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc.limit; +package org.apache.horaedb.rpc.limit; import java.util.concurrent.TimeUnit; import java.util.function.Function; diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/LimitMetricRegistry.java b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/limit/LimitMetricRegistry.java similarity index 96% rename from horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/LimitMetricRegistry.java rename to horaedb-grpc/src/main/java/org/apache/horaedb/rpc/limit/LimitMetricRegistry.java index 67ed9b0..a95bca0 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/LimitMetricRegistry.java +++ b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/limit/LimitMetricRegistry.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc.limit; +package org.apache.horaedb.rpc.limit; import java.util.function.Supplier; diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/RequestLimitCtx.java b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/limit/RequestLimitCtx.java similarity index 79% rename from horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/RequestLimitCtx.java rename to horaedb-grpc/src/main/java/org/apache/horaedb/rpc/limit/RequestLimitCtx.java index 86692d8..8fd4c66 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/RequestLimitCtx.java +++ b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/limit/RequestLimitCtx.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc.limit; +package org.apache.horaedb.rpc.limit; public interface RequestLimitCtx { diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/RequestLimiterBuilder.java b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/limit/RequestLimiterBuilder.java similarity index 97% rename from horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/RequestLimiterBuilder.java rename to horaedb-grpc/src/main/java/org/apache/horaedb/rpc/limit/RequestLimiterBuilder.java index eae2ede..5a38c2d 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/RequestLimiterBuilder.java +++ b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/limit/RequestLimiterBuilder.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc.limit; +package org.apache.horaedb.rpc.limit; import java.time.Duration; diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/VegasLimit.java b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/limit/VegasLimit.java similarity index 99% rename from horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/VegasLimit.java rename to horaedb-grpc/src/main/java/org/apache/horaedb/rpc/limit/VegasLimit.java index 33857fc..c6f4b4f 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/limit/VegasLimit.java +++ b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/limit/VegasLimit.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc.limit; +package org.apache.horaedb.rpc.limit; import org.apache.horaedb.common.util.Requires; import com.netflix.concurrency.limits.MetricIds; diff --git a/horaedb-grpc/src/main/java/io/ceresdb/rpc/signal/RpcLimitSignalHandler.java b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/signal/RpcLimitSignalHandler.java similarity index 90% rename from horaedb-grpc/src/main/java/io/ceresdb/rpc/signal/RpcLimitSignalHandler.java rename to horaedb-grpc/src/main/java/org/apache/horaedb/rpc/signal/RpcLimitSignalHandler.java index 16b7a5b..8e70f5e 100644 --- a/horaedb-grpc/src/main/java/io/ceresdb/rpc/signal/RpcLimitSignalHandler.java +++ b/horaedb-grpc/src/main/java/org/apache/horaedb/rpc/signal/RpcLimitSignalHandler.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc.signal; +package org.apache.horaedb.rpc.signal; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -10,7 +10,7 @@ import org.apache.horaedb.common.signal.FileSignal; import org.apache.horaedb.common.signal.FileSignals; import org.apache.horaedb.common.signal.SignalHandler; -import io.ceresdb.rpc.interceptors.ClientRequestLimitInterceptor; +import org.apache.horaedb.rpc.interceptors.ClientRequestLimitInterceptor; /** * A signal handler that can reset LIMIT_SWITCH by {@link ClientRequestLimitInterceptor#resetLimitSwitch()}. diff --git a/horaedb-grpc/src/main/resources/META-INF/services/io.ceresdb.rpc.RpcFactory b/horaedb-grpc/src/main/resources/META-INF/services/io.ceresdb.rpc.RpcFactory deleted file mode 100644 index 61f71c7..0000000 --- a/horaedb-grpc/src/main/resources/META-INF/services/io.ceresdb.rpc.RpcFactory +++ /dev/null @@ -1 +0,0 @@ -io.ceresdb.rpc.GrpcFactory diff --git a/horaedb-grpc/src/main/resources/META-INF/services/io.horaedb.rpc.RpcFactory b/horaedb-grpc/src/main/resources/META-INF/services/io.horaedb.rpc.RpcFactory new file mode 100644 index 0000000..d064b0f --- /dev/null +++ b/horaedb-grpc/src/main/resources/META-INF/services/io.horaedb.rpc.RpcFactory @@ -0,0 +1 @@ +org.apache.horaedb.rpc.GrpcFactory diff --git a/horaedb-grpc/src/main/resources/META-INF/services/org.apache.horaedb.common.signal.SignalHandler b/horaedb-grpc/src/main/resources/META-INF/services/org.apache.horaedb.common.signal.SignalHandler index 3f2f4f5..5f79544 100644 --- a/horaedb-grpc/src/main/resources/META-INF/services/org.apache.horaedb.common.signal.SignalHandler +++ b/horaedb-grpc/src/main/resources/META-INF/services/org.apache.horaedb.common.signal.SignalHandler @@ -1 +1 @@ -io.ceresdb.rpc.signal.RpcLimitSignalHandler +org.apache.horaedb.rpc.signal.RpcLimitSignalHandler diff --git a/horaedb-grpc/src/test/java/io/ceresdb/rpc/LimitTest.java b/horaedb-grpc/src/test/java/org/apache/horaedb/rpc/LimitTest.java similarity index 96% rename from horaedb-grpc/src/test/java/io/ceresdb/rpc/LimitTest.java rename to horaedb-grpc/src/test/java/org/apache/horaedb/rpc/LimitTest.java index a2e83a5..331e146 100644 --- a/horaedb-grpc/src/test/java/io/ceresdb/rpc/LimitTest.java +++ b/horaedb-grpc/src/test/java/org/apache/horaedb/rpc/LimitTest.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc; +package org.apache.horaedb.rpc; import java.util.concurrent.TimeUnit; @@ -10,8 +10,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.rpc.limit.Gradient2Limit; -import io.ceresdb.rpc.limit.VegasLimit; +import org.apache.horaedb.rpc.limit.Gradient2Limit; +import org.apache.horaedb.rpc.limit.VegasLimit; import com.netflix.concurrency.limits.Limit; public class LimitTest { diff --git a/horaedb-grpc/src/test/java/io/ceresdb/rpc/RequestLimiterInterceptorTest.java b/horaedb-grpc/src/test/java/org/apache/horaedb/rpc/RequestLimiterInterceptorTest.java similarity index 91% rename from horaedb-grpc/src/test/java/io/ceresdb/rpc/RequestLimiterInterceptorTest.java rename to horaedb-grpc/src/test/java/org/apache/horaedb/rpc/RequestLimiterInterceptorTest.java index 2084193..16d816b 100644 --- a/horaedb-grpc/src/test/java/io/ceresdb/rpc/RequestLimiterInterceptorTest.java +++ b/horaedb-grpc/src/test/java/org/apache/horaedb/rpc/RequestLimiterInterceptorTest.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc; +package org.apache.horaedb.rpc; import java.io.IOException; import java.util.concurrent.Executors; @@ -23,10 +23,10 @@ import org.junit.Test; import org.apache.horaedb.common.util.MetricsUtil; -import io.ceresdb.rpc.interceptors.ClientRequestLimitInterceptor; -import io.ceresdb.rpc.limit.LimitMetricRegistry; -import io.ceresdb.rpc.limit.RequestLimitCtx; -import io.ceresdb.rpc.limit.RequestLimiterBuilder; +import org.apache.horaedb.rpc.interceptors.ClientRequestLimitInterceptor; +import org.apache.horaedb.rpc.limit.LimitMetricRegistry; +import org.apache.horaedb.rpc.limit.RequestLimitCtx; +import org.apache.horaedb.rpc.limit.RequestLimiterBuilder; import com.netflix.concurrency.limits.Limiter; diff --git a/horaedb-grpc/src/test/java/io/ceresdb/rpc/StringMarshaller.java b/horaedb-grpc/src/test/java/org/apache/horaedb/rpc/StringMarshaller.java similarity index 97% rename from horaedb-grpc/src/test/java/io/ceresdb/rpc/StringMarshaller.java rename to horaedb-grpc/src/test/java/org/apache/horaedb/rpc/StringMarshaller.java index 9f1e13f..f71a04f 100644 --- a/horaedb-grpc/src/test/java/io/ceresdb/rpc/StringMarshaller.java +++ b/horaedb-grpc/src/test/java/org/apache/horaedb/rpc/StringMarshaller.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc; +package org.apache.horaedb.rpc; import java.io.ByteArrayInputStream; import java.io.IOException; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/BlockingStreamIterator.java b/horaedb-protocol/src/main/java/org/apache/BlockingStreamIterator.java similarity index 93% rename from horaedb-protocol/src/main/java/io/ceresdb/BlockingStreamIterator.java rename to horaedb-protocol/src/main/java/org/apache/BlockingStreamIterator.java index 578ee93..2c67ad6 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/BlockingStreamIterator.java +++ b/horaedb-protocol/src/main/java/org/apache/BlockingStreamIterator.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache; import java.util.Iterator; import java.util.concurrent.BlockingQueue; @@ -9,10 +9,10 @@ import java.util.concurrent.TimeUnit; import java.util.stream.Stream; -import io.ceresdb.errors.IteratorException; -import io.ceresdb.models.SqlQueryOk; -import io.ceresdb.models.Row; -import io.ceresdb.rpc.Observer; +import org.apache.horaedb.errors.IteratorException; +import org.apache.horaedb.models.SqlQueryOk; +import org.apache.horaedb.models.Row; +import org.apache.horaedb.rpc.Observer; /** * A blocking iterator, the `hasNext` method will be blocked until diff --git a/horaedb-protocol/src/main/java/io/ceresdb/HoraeDBClient.java b/horaedb-protocol/src/main/java/org/apache/HoraeDBClient.java similarity index 92% rename from horaedb-protocol/src/main/java/io/ceresdb/HoraeDBClient.java rename to horaedb-protocol/src/main/java/org/apache/HoraeDBClient.java index 64106db..0c833d5 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/HoraeDBClient.java +++ b/horaedb-protocol/src/main/java/org/apache/HoraeDBClient.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache; import java.util.ArrayList; import java.util.List; @@ -22,26 +22,26 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.models.Err; -import io.ceresdb.models.Point; -import io.ceresdb.models.RequestContext; -import io.ceresdb.models.SqlQueryOk; -import io.ceresdb.models.SqlQueryRequest; -import io.ceresdb.models.Result; -import io.ceresdb.models.WriteOk; -import io.ceresdb.models.WriteRequest; -import io.ceresdb.options.HoraeDBOptions; -import io.ceresdb.options.QueryOptions; -import io.ceresdb.options.RouterOptions; -import io.ceresdb.options.WriteOptions; -import io.ceresdb.rpc.Context; -import io.ceresdb.rpc.Observer; -import io.ceresdb.rpc.RpcClient; -import io.ceresdb.rpc.RpcFactoryProvider; -import io.ceresdb.rpc.RpcOptions; -import io.ceresdb.util.RpcServiceRegister; -import io.ceresdb.util.StreamWriteBuf; -import io.ceresdb.util.Utils; +import org.apache.horaedb.models.Err; +import org.apache.horaedb.models.Point; +import org.apache.horaedb.models.RequestContext; +import org.apache.horaedb.models.SqlQueryOk; +import org.apache.horaedb.models.SqlQueryRequest; +import org.apache.horaedb.models.Result; +import org.apache.horaedb.models.WriteOk; +import org.apache.horaedb.models.WriteRequest; +import org.apache.horaedb.options.HoraeDBOptions; +import org.apache.horaedb.options.QueryOptions; +import org.apache.horaedb.options.RouterOptions; +import org.apache.horaedb.options.WriteOptions; +import org.apache.horaedb.rpc.Context; +import org.apache.horaedb.rpc.Observer; +import org.apache.horaedb.rpc.RpcClient; +import org.apache.horaedb.rpc.RpcFactoryProvider; +import org.apache.horaedb.rpc.RpcOptions; +import org.apache.horaedb.util.RpcServiceRegister; +import org.apache.horaedb.util.StreamWriteBuf; +import org.apache.horaedb.util.Utils; import com.codahale.metrics.Counter; import com.codahale.metrics.Meter; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/ProxyRouterClient.java b/horaedb-protocol/src/main/java/org/apache/ProxyRouterClient.java similarity index 91% rename from horaedb-protocol/src/main/java/io/ceresdb/ProxyRouterClient.java rename to horaedb-protocol/src/main/java/org/apache/ProxyRouterClient.java index 87cc6a2..52faa11 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/ProxyRouterClient.java +++ b/horaedb-protocol/src/main/java/org/apache/ProxyRouterClient.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache; import java.util.Collection; import java.util.Collections; @@ -9,8 +9,8 @@ import java.util.Map; import java.util.concurrent.CompletableFuture; -import io.ceresdb.models.RequestContext; -import io.ceresdb.util.Utils; +import org.apache.horaedb.models.RequestContext; +import org.apache.horaedb.util.Utils; /** * A route rpc client which implement RouteMode.Proxy diff --git a/horaedb-protocol/src/main/java/io/ceresdb/Query.java b/horaedb-protocol/src/main/java/org/apache/Query.java similarity index 89% rename from horaedb-protocol/src/main/java/io/ceresdb/Query.java rename to horaedb-protocol/src/main/java/org/apache/Query.java index 2c2e622..c04a22d 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/Query.java +++ b/horaedb-protocol/src/main/java/org/apache/Query.java @@ -1,19 +1,19 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache; import java.util.Iterator; import java.util.concurrent.CompletableFuture; import java.util.concurrent.TimeUnit; -import io.ceresdb.models.Err; -import io.ceresdb.models.SqlQueryOk; -import io.ceresdb.models.Row; -import io.ceresdb.models.SqlQueryRequest; -import io.ceresdb.models.Result; -import io.ceresdb.rpc.Context; -import io.ceresdb.rpc.Observer; +import org.apache.horaedb.models.Err; +import org.apache.horaedb.models.SqlQueryOk; +import org.apache.horaedb.models.Row; +import org.apache.horaedb.models.SqlQueryRequest; +import org.apache.horaedb.models.Result; +import org.apache.horaedb.rpc.Context; +import org.apache.horaedb.rpc.Observer; /** * The query API for CeresDB client. diff --git a/horaedb-protocol/src/main/java/io/ceresdb/QueryClient.java b/horaedb-protocol/src/main/java/org/apache/QueryClient.java similarity index 95% rename from horaedb-protocol/src/main/java/io/ceresdb/QueryClient.java rename to horaedb-protocol/src/main/java/org/apache/QueryClient.java index 4e606d8..c07f1f0 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/QueryClient.java +++ b/horaedb-protocol/src/main/java/org/apache/QueryClient.java @@ -1,16 +1,16 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache; import java.util.Set; import java.util.concurrent.CompletableFuture; import java.util.concurrent.Executor; import java.util.stream.Collectors; -import io.ceresdb.limit.LimitedPolicy; -import io.ceresdb.limit.QueryLimiter; -import io.ceresdb.models.RequestContext; +import org.apache.horaedb.limit.LimitedPolicy; +import org.apache.horaedb.limit.QueryLimiter; +import org.apache.horaedb.models.RequestContext; import io.ceresdb.proto.internal.Storage; import org.apache.horaedb.common.Display; import org.apache.horaedb.common.Endpoint; @@ -22,15 +22,15 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.errors.StreamException; -import io.ceresdb.models.Err; -import io.ceresdb.models.SqlQueryOk; -import io.ceresdb.models.SqlQueryRequest; -import io.ceresdb.models.Result; -import io.ceresdb.options.QueryOptions; -import io.ceresdb.rpc.Context; -import io.ceresdb.rpc.Observer; -import io.ceresdb.util.Utils; +import org.apache.horaedb.errors.StreamException; +import org.apache.horaedb.models.Err; +import org.apache.horaedb.models.SqlQueryOk; +import org.apache.horaedb.models.SqlQueryRequest; +import org.apache.horaedb.models.Result; +import org.apache.horaedb.options.QueryOptions; +import org.apache.horaedb.rpc.Context; +import org.apache.horaedb.rpc.Observer; +import org.apache.horaedb.util.Utils; import com.codahale.metrics.Histogram; import com.codahale.metrics.Meter; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/Route.java b/horaedb-protocol/src/main/java/org/apache/Route.java similarity index 98% rename from horaedb-protocol/src/main/java/io/ceresdb/Route.java rename to horaedb-protocol/src/main/java/org/apache/Route.java index 9b7c492..500e539 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/Route.java +++ b/horaedb-protocol/src/main/java/org/apache/Route.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache; import org.apache.horaedb.common.Endpoint; import org.apache.horaedb.common.util.Clock; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/RouteMode.java b/horaedb-protocol/src/main/java/org/apache/RouteMode.java similarity index 95% rename from horaedb-protocol/src/main/java/io/ceresdb/RouteMode.java rename to horaedb-protocol/src/main/java/org/apache/RouteMode.java index 5a4297a..af80d8a 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/RouteMode.java +++ b/horaedb-protocol/src/main/java/org/apache/RouteMode.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache; public enum RouteMode { diff --git a/horaedb-protocol/src/main/java/io/ceresdb/Router.java b/horaedb-protocol/src/main/java/org/apache/Router.java similarity index 86% rename from horaedb-protocol/src/main/java/io/ceresdb/Router.java rename to horaedb-protocol/src/main/java/org/apache/Router.java index 20b9dd1..232a0ad 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/Router.java +++ b/horaedb-protocol/src/main/java/org/apache/Router.java @@ -1,11 +1,11 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache; import java.util.concurrent.CompletableFuture; -import io.ceresdb.models.RequestContext; +import org.apache.horaedb.models.RequestContext; /** * A RPC router for CeresDB. diff --git a/horaedb-protocol/src/main/java/io/ceresdb/RouterClient.java b/horaedb-protocol/src/main/java/org/apache/RouterClient.java similarity index 97% rename from horaedb-protocol/src/main/java/io/ceresdb/RouterClient.java rename to horaedb-protocol/src/main/java/org/apache/RouterClient.java index f36e29a..a658b99 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/RouterClient.java +++ b/horaedb-protocol/src/main/java/org/apache/RouterClient.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache; import java.util.ArrayList; import java.util.Collection; @@ -17,7 +17,7 @@ import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; -import io.ceresdb.models.RequestContext; +import org.apache.horaedb.models.RequestContext; import io.ceresdb.proto.internal.Storage; import org.apache.horaedb.common.Display; import org.apache.horaedb.common.Endpoint; @@ -26,13 +26,13 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.errors.RouteTableException; -import io.ceresdb.options.RouterOptions; -import io.ceresdb.rpc.Context; -import io.ceresdb.rpc.Observer; -import io.ceresdb.rpc.RpcClient; -import io.ceresdb.rpc.errors.RemotingException; -import io.ceresdb.util.Utils; +import org.apache.horaedb.errors.RouteTableException; +import org.apache.horaedb.options.RouterOptions; +import org.apache.horaedb.rpc.Context; +import org.apache.horaedb.rpc.Observer; +import org.apache.horaedb.rpc.RpcClient; +import org.apache.horaedb.rpc.errors.RemotingException; +import org.apache.horaedb.util.Utils; import com.codahale.metrics.Histogram; import com.codahale.metrics.Timer; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/RowIterator.java b/horaedb-protocol/src/main/java/org/apache/RowIterator.java similarity index 93% rename from horaedb-protocol/src/main/java/io/ceresdb/RowIterator.java rename to horaedb-protocol/src/main/java/org/apache/RowIterator.java index cee589b..59a83c3 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/RowIterator.java +++ b/horaedb-protocol/src/main/java/org/apache/RowIterator.java @@ -1,11 +1,11 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache; import java.util.Iterator; -import io.ceresdb.models.Row; +import org.apache.horaedb.models.Row; public class RowIterator implements Iterator { diff --git a/horaedb-protocol/src/main/java/io/ceresdb/Write.java b/horaedb-protocol/src/main/java/org/apache/Write.java similarity index 80% rename from horaedb-protocol/src/main/java/io/ceresdb/Write.java rename to horaedb-protocol/src/main/java/org/apache/Write.java index ad95666..4712ea5 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/Write.java +++ b/horaedb-protocol/src/main/java/org/apache/Write.java @@ -1,18 +1,18 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache; import java.util.concurrent.CompletableFuture; -import io.ceresdb.models.Err; -import io.ceresdb.models.Point; -import io.ceresdb.models.RequestContext; -import io.ceresdb.models.Result; -import io.ceresdb.models.WriteOk; -import io.ceresdb.models.WriteRequest; -import io.ceresdb.rpc.Context; -import io.ceresdb.util.StreamWriteBuf; +import org.apache.horaedb.models.Err; +import org.apache.horaedb.models.Point; +import org.apache.horaedb.models.RequestContext; +import org.apache.horaedb.models.Result; +import org.apache.horaedb.models.WriteOk; +import org.apache.horaedb.models.WriteRequest; +import org.apache.horaedb.rpc.Context; +import org.apache.horaedb.util.StreamWriteBuf; /** * CeresDB write API. Writes the streaming data to the database, support diff --git a/horaedb-protocol/src/main/java/io/ceresdb/WriteClient.java b/horaedb-protocol/src/main/java/org/apache/WriteClient.java similarity index 97% rename from horaedb-protocol/src/main/java/io/ceresdb/WriteClient.java rename to horaedb-protocol/src/main/java/org/apache/WriteClient.java index 88fad3b..65368d8 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/WriteClient.java +++ b/horaedb-protocol/src/main/java/org/apache/WriteClient.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache; import java.util.Collection; import java.util.Collections; @@ -24,22 +24,22 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.errors.StreamException; -import io.ceresdb.limit.LimitedPolicy; -import io.ceresdb.limit.WriteLimiter; -import io.ceresdb.models.Err; -import io.ceresdb.models.Point; -import io.ceresdb.models.RequestContext; -import io.ceresdb.models.Result; -import io.ceresdb.models.Value; -import io.ceresdb.models.WriteOk; -import io.ceresdb.models.WriteRequest; -import io.ceresdb.options.WriteOptions; +import org.apache.horaedb.errors.StreamException; +import org.apache.horaedb.limit.LimitedPolicy; +import org.apache.horaedb.limit.WriteLimiter; +import org.apache.horaedb.models.Err; +import org.apache.horaedb.models.Point; +import org.apache.horaedb.models.RequestContext; +import org.apache.horaedb.models.Result; +import org.apache.horaedb.models.Value; +import org.apache.horaedb.models.WriteOk; +import org.apache.horaedb.models.WriteRequest; +import org.apache.horaedb.options.WriteOptions; import io.ceresdb.proto.internal.Storage; -import io.ceresdb.rpc.Context; -import io.ceresdb.rpc.Observer; -import io.ceresdb.util.StreamWriteBuf; -import io.ceresdb.util.Utils; +import org.apache.horaedb.rpc.Context; +import org.apache.horaedb.rpc.Observer; +import org.apache.horaedb.util.StreamWriteBuf; +import org.apache.horaedb.util.Utils; import com.codahale.metrics.Histogram; import com.codahale.metrics.Meter; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/errors/IteratorException.java b/horaedb-protocol/src/main/java/org/apache/horaedb/errors/IteratorException.java similarity index 95% rename from horaedb-protocol/src/main/java/io/ceresdb/errors/IteratorException.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/errors/IteratorException.java index 3d882cd..114774c 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/errors/IteratorException.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/errors/IteratorException.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.errors; +package org.apache.horaedb.errors; /** * Iterator timeout error on stream query. diff --git a/horaedb-protocol/src/main/java/io/ceresdb/errors/LimitedException.java b/horaedb-protocol/src/main/java/org/apache/horaedb/errors/LimitedException.java similarity index 95% rename from horaedb-protocol/src/main/java/io/ceresdb/errors/LimitedException.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/errors/LimitedException.java index 15c8c2d..58e78b1 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/errors/LimitedException.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/errors/LimitedException.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.errors; +package org.apache.horaedb.errors; /** * A flow control exception that can be thrown by AbortPolicy. diff --git a/horaedb-protocol/src/main/java/io/ceresdb/errors/RouteTableException.java b/horaedb-protocol/src/main/java/org/apache/horaedb/errors/RouteTableException.java similarity index 95% rename from horaedb-protocol/src/main/java/io/ceresdb/errors/RouteTableException.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/errors/RouteTableException.java index 5d50466..9446c02 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/errors/RouteTableException.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/errors/RouteTableException.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.errors; +package org.apache.horaedb.errors; /** * Get route table exception. diff --git a/horaedb-protocol/src/main/java/io/ceresdb/errors/StreamException.java b/horaedb-protocol/src/main/java/org/apache/horaedb/errors/StreamException.java similarity index 95% rename from horaedb-protocol/src/main/java/io/ceresdb/errors/StreamException.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/errors/StreamException.java index 3b669c7..ccc61ad 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/errors/StreamException.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/errors/StreamException.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.errors; +package org.apache.horaedb.errors; /** * Error about stream-query or stream-write. diff --git a/horaedb-protocol/src/main/java/io/ceresdb/limit/CeresDBLimiter.java b/horaedb-protocol/src/main/java/org/apache/horaedb/limit/CeresDBLimiter.java similarity index 97% rename from horaedb-protocol/src/main/java/io/ceresdb/limit/CeresDBLimiter.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/limit/CeresDBLimiter.java index 52be073..d251ffa 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/limit/CeresDBLimiter.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/limit/CeresDBLimiter.java @@ -1,12 +1,12 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.limit; +package org.apache.horaedb.limit; import java.util.concurrent.CompletableFuture; import java.util.function.Supplier; -import io.ceresdb.util.Utils; +import org.apache.horaedb.util.Utils; import com.codahale.metrics.Histogram; import org.apache.horaedb.common.InFlightLimiter; import org.apache.horaedb.common.Limiter; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/limit/LimitedPolicy.java b/horaedb-protocol/src/main/java/org/apache/horaedb/limit/LimitedPolicy.java similarity index 97% rename from horaedb-protocol/src/main/java/io/ceresdb/limit/LimitedPolicy.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/limit/LimitedPolicy.java index 1679852..7587a5e 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/limit/LimitedPolicy.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/limit/LimitedPolicy.java @@ -1,11 +1,11 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.limit; +package org.apache.horaedb.limit; import java.util.concurrent.TimeUnit; -import io.ceresdb.errors.LimitedException; +import org.apache.horaedb.errors.LimitedException; import org.apache.horaedb.common.Limiter; /** diff --git a/horaedb-protocol/src/main/java/io/ceresdb/limit/QueryLimiter.java b/horaedb-protocol/src/main/java/org/apache/horaedb/limit/QueryLimiter.java similarity index 67% rename from horaedb-protocol/src/main/java/io/ceresdb/limit/QueryLimiter.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/limit/QueryLimiter.java index 0d91017..23017ca 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/limit/QueryLimiter.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/limit/QueryLimiter.java @@ -1,12 +1,12 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.limit; +package org.apache.horaedb.limit; -import io.ceresdb.models.Err; -import io.ceresdb.models.SqlQueryOk; -import io.ceresdb.models.SqlQueryRequest; -import io.ceresdb.models.Result; +import org.apache.horaedb.models.Err; +import org.apache.horaedb.models.SqlQueryOk; +import org.apache.horaedb.models.SqlQueryRequest; +import org.apache.horaedb.models.Result; /** * Like rust: pub type QueryLimiter = CeresDBLimiter> diff --git a/horaedb-protocol/src/main/java/io/ceresdb/limit/WriteLimiter.java b/horaedb-protocol/src/main/java/org/apache/horaedb/limit/WriteLimiter.java similarity index 68% rename from horaedb-protocol/src/main/java/io/ceresdb/limit/WriteLimiter.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/limit/WriteLimiter.java index bf75df5..a28e0ae 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/limit/WriteLimiter.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/limit/WriteLimiter.java @@ -1,14 +1,14 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.limit; +package org.apache.horaedb.limit; import java.util.List; -import io.ceresdb.models.Err; -import io.ceresdb.models.Point; -import io.ceresdb.models.Result; -import io.ceresdb.models.WriteOk; +import org.apache.horaedb.models.Err; +import org.apache.horaedb.models.Point; +import org.apache.horaedb.models.Result; +import org.apache.horaedb.models.WriteOk; /** * Like rust: pub type WriteLimiter = CeresDBLimiter, Result> diff --git a/horaedb-protocol/src/main/java/io/ceresdb/models/Err.java b/horaedb-protocol/src/main/java/org/apache/horaedb/models/Err.java similarity index 99% rename from horaedb-protocol/src/main/java/io/ceresdb/models/Err.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/models/Err.java index 86fccdb..4970c0a 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/models/Err.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/models/Err.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.models; +package org.apache.horaedb.models; import org.apache.horaedb.common.Endpoint; import org.apache.horaedb.common.Streamable; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/models/Keyword.java b/horaedb-protocol/src/main/java/org/apache/horaedb/models/Keyword.java similarity index 91% rename from horaedb-protocol/src/main/java/io/ceresdb/models/Keyword.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/models/Keyword.java index d23fd13..af99915 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/models/Keyword.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/models/Keyword.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.models; +package org.apache.horaedb.models; public enum Keyword { Timestamp, // diff --git a/horaedb-protocol/src/main/java/io/ceresdb/models/Point.java b/horaedb-protocol/src/main/java/org/apache/horaedb/models/Point.java similarity index 96% rename from horaedb-protocol/src/main/java/io/ceresdb/models/Point.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/models/Point.java index 9f566a9..7a5be43 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/models/Point.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/models/Point.java @@ -1,14 +1,14 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.models; +package org.apache.horaedb.models; import java.util.HashMap; import java.util.Map; import java.util.SortedMap; import java.util.TreeMap; -import io.ceresdb.util.Utils; +import org.apache.horaedb.util.Utils; import org.apache.horaedb.common.util.Requires; /** diff --git a/horaedb-protocol/src/main/java/io/ceresdb/models/RequestContext.java b/horaedb-protocol/src/main/java/org/apache/horaedb/models/RequestContext.java similarity index 91% rename from horaedb-protocol/src/main/java/io/ceresdb/models/RequestContext.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/models/RequestContext.java index 1040e5b..90d0fea 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/models/RequestContext.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/models/RequestContext.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.models; +package org.apache.horaedb.models; /** * diff --git a/horaedb-protocol/src/main/java/io/ceresdb/models/Result.java b/horaedb-protocol/src/main/java/org/apache/horaedb/models/Result.java similarity index 99% rename from horaedb-protocol/src/main/java/io/ceresdb/models/Result.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/models/Result.java index 0480cbf..c1f4125 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/models/Result.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/models/Result.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.models; +package org.apache.horaedb.models; import org.apache.horaedb.common.util.Requires; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/models/Row.java b/horaedb-protocol/src/main/java/org/apache/horaedb/models/Row.java similarity index 98% rename from horaedb-protocol/src/main/java/io/ceresdb/models/Row.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/models/Row.java index 39295c3..5e085d9 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/models/Row.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/models/Row.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.models; +package org.apache.horaedb.models; import java.util.ArrayList; import java.util.Collections; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/models/SqlQueryOk.java b/horaedb-protocol/src/main/java/org/apache/horaedb/models/SqlQueryOk.java similarity index 98% rename from horaedb-protocol/src/main/java/io/ceresdb/models/SqlQueryOk.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/models/SqlQueryOk.java index 46b5114..32a019f 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/models/SqlQueryOk.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/models/SqlQueryOk.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.models; +package org.apache.horaedb.models; import org.apache.horaedb.common.Streamable; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/models/SqlQueryRequest.java b/horaedb-protocol/src/main/java/org/apache/horaedb/models/SqlQueryRequest.java similarity index 98% rename from horaedb-protocol/src/main/java/io/ceresdb/models/SqlQueryRequest.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/models/SqlQueryRequest.java index da2186d..f2144ec 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/models/SqlQueryRequest.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/models/SqlQueryRequest.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.models; +package org.apache.horaedb.models; import org.apache.horaedb.common.util.Requires; import org.apache.horaedb.common.util.Strings; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/models/Value.java b/horaedb-protocol/src/main/java/org/apache/horaedb/models/Value.java similarity index 99% rename from horaedb-protocol/src/main/java/io/ceresdb/models/Value.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/models/Value.java index 13ff7a7..3e1dcde 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/models/Value.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/models/Value.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.models; +package org.apache.horaedb.models; import org.apache.horaedb.common.util.Requires; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/models/WriteOk.java b/horaedb-protocol/src/main/java/org/apache/horaedb/models/WriteOk.java similarity index 98% rename from horaedb-protocol/src/main/java/io/ceresdb/models/WriteOk.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/models/WriteOk.java index 1551b29..ef5d044 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/models/WriteOk.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/models/WriteOk.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.models; +package org.apache.horaedb.models; import org.apache.horaedb.common.OptKeys; import org.apache.horaedb.common.util.SystemPropertyUtil; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/models/WriteRequest.java b/horaedb-protocol/src/main/java/org/apache/horaedb/models/WriteRequest.java similarity index 94% rename from horaedb-protocol/src/main/java/io/ceresdb/models/WriteRequest.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/models/WriteRequest.java index 4894088..3978f18 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/models/WriteRequest.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/models/WriteRequest.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.models; +package org.apache.horaedb.models; import java.util.List; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/options/HoraeDBOptions.java b/horaedb-protocol/src/main/java/org/apache/horaedb/options/HoraeDBOptions.java similarity index 98% rename from horaedb-protocol/src/main/java/io/ceresdb/options/HoraeDBOptions.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/options/HoraeDBOptions.java index d63656f..cbe7ccc 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/options/HoraeDBOptions.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/options/HoraeDBOptions.java @@ -1,13 +1,13 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.options; +package org.apache.horaedb.options; import java.util.concurrent.Executor; -import io.ceresdb.limit.LimitedPolicy; -import io.ceresdb.RouteMode; -import io.ceresdb.rpc.RpcOptions; +import org.apache.horaedb.limit.LimitedPolicy; +import org.apache.RouteMode; +import org.apache.horaedb.rpc.RpcOptions; import org.apache.horaedb.common.Copiable; import org.apache.horaedb.common.Endpoint; import org.apache.horaedb.common.util.Requires; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/options/QueryOptions.java b/horaedb-protocol/src/main/java/org/apache/horaedb/options/QueryOptions.java similarity index 95% rename from horaedb-protocol/src/main/java/io/ceresdb/options/QueryOptions.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/options/QueryOptions.java index beace94..69f9486 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/options/QueryOptions.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/options/QueryOptions.java @@ -1,12 +1,12 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.options; +package org.apache.horaedb.options; import java.util.concurrent.Executor; -import io.ceresdb.limit.LimitedPolicy; -import io.ceresdb.RouterClient; +import org.apache.horaedb.limit.LimitedPolicy; +import org.apache.RouterClient; import org.apache.horaedb.common.Copiable; /** diff --git a/horaedb-protocol/src/main/java/io/ceresdb/options/RouterOptions.java b/horaedb-protocol/src/main/java/org/apache/horaedb/options/RouterOptions.java similarity index 96% rename from horaedb-protocol/src/main/java/io/ceresdb/options/RouterOptions.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/options/RouterOptions.java index c3a65ec..d8cf7b3 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/options/RouterOptions.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/options/RouterOptions.java @@ -1,10 +1,10 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.options; +package org.apache.horaedb.options; -import io.ceresdb.RouteMode; -import io.ceresdb.rpc.RpcClient; +import org.apache.RouteMode; +import org.apache.horaedb.rpc.RpcClient; import org.apache.horaedb.common.Copiable; import org.apache.horaedb.common.Endpoint; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/options/WriteOptions.java b/horaedb-protocol/src/main/java/org/apache/horaedb/options/WriteOptions.java similarity index 96% rename from horaedb-protocol/src/main/java/io/ceresdb/options/WriteOptions.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/options/WriteOptions.java index 409de7a..1b0251f 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/options/WriteOptions.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/options/WriteOptions.java @@ -1,12 +1,12 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.options; +package org.apache.horaedb.options; import java.util.concurrent.Executor; -import io.ceresdb.limit.LimitedPolicy; -import io.ceresdb.RouterClient; +import org.apache.horaedb.limit.LimitedPolicy; +import org.apache.RouterClient; import org.apache.horaedb.common.Copiable; /** diff --git a/horaedb-protocol/src/main/java/io/ceresdb/signal/ClearRouteCacheSignalHandler.java b/horaedb-protocol/src/main/java/org/apache/horaedb/signal/ClearRouteCacheSignalHandler.java similarity index 94% rename from horaedb-protocol/src/main/java/io/ceresdb/signal/ClearRouteCacheSignalHandler.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/signal/ClearRouteCacheSignalHandler.java index c990890..33429a2 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/signal/ClearRouteCacheSignalHandler.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/signal/ClearRouteCacheSignalHandler.java @@ -1,11 +1,11 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.signal; +package org.apache.horaedb.signal; import java.util.List; -import io.ceresdb.HoraeDBClient; +import org.apache.HoraeDBClient; import org.apache.horaedb.common.SPI; import org.apache.horaedb.common.signal.FileSignal; import org.apache.horaedb.common.signal.FileSignals; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/signal/DisplaySignalHandler.java b/horaedb-protocol/src/main/java/org/apache/horaedb/signal/DisplaySignalHandler.java similarity index 96% rename from horaedb-protocol/src/main/java/io/ceresdb/signal/DisplaySignalHandler.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/signal/DisplaySignalHandler.java index 1965510..f7087e9 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/signal/DisplaySignalHandler.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/signal/DisplaySignalHandler.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.signal; +package org.apache.horaedb.signal; import java.io.File; import java.io.FileOutputStream; @@ -11,7 +11,7 @@ import java.nio.charset.StandardCharsets; import java.util.List; -import io.ceresdb.HoraeDBClient; +import org.apache.HoraeDBClient; import org.apache.horaedb.common.Display; import org.apache.horaedb.common.SPI; import org.apache.horaedb.common.signal.FileOutputHelper; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/signal/MetricsSignalHandler.java b/horaedb-protocol/src/main/java/org/apache/horaedb/signal/MetricsSignalHandler.java similarity index 98% rename from horaedb-protocol/src/main/java/io/ceresdb/signal/MetricsSignalHandler.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/signal/MetricsSignalHandler.java index 35eeec5..75a5182 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/signal/MetricsSignalHandler.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/signal/MetricsSignalHandler.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.signal; +package org.apache.horaedb.signal; import java.io.File; import java.io.FileOutputStream; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/signal/RwLoggingSignalHandler.java b/horaedb-protocol/src/main/java/org/apache/horaedb/signal/RwLoggingSignalHandler.java similarity index 93% rename from horaedb-protocol/src/main/java/io/ceresdb/signal/RwLoggingSignalHandler.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/signal/RwLoggingSignalHandler.java index c980c0a..14b467d 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/signal/RwLoggingSignalHandler.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/signal/RwLoggingSignalHandler.java @@ -1,18 +1,17 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.signal; +package org.apache.horaedb.signal; import org.apache.horaedb.common.SPI; import org.apache.horaedb.common.signal.FileSignal; import org.apache.horaedb.common.signal.FileSignals; import org.apache.horaedb.common.signal.Signal; import org.apache.horaedb.common.signal.SignalHandler; +import org.apache.horaedb.util.Utils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.ceresdb.util.Utils; - /** * A signal handler that can reset RW_LOGGING by {@link Utils#resetRwLogging()}. * diff --git a/horaedb-protocol/src/main/java/io/ceresdb/signal/ShowHelpSignalHandler.java b/horaedb-protocol/src/main/java/org/apache/horaedb/signal/ShowHelpSignalHandler.java similarity index 98% rename from horaedb-protocol/src/main/java/io/ceresdb/signal/ShowHelpSignalHandler.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/signal/ShowHelpSignalHandler.java index 60fd2af..4e4b04c 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/signal/ShowHelpSignalHandler.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/signal/ShowHelpSignalHandler.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.signal; +package org.apache.horaedb.signal; import org.apache.horaedb.common.SPI; import org.apache.horaedb.common.signal.FileOutputHelper; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/signal/ShowRouteCacheSignalHandler.java b/horaedb-protocol/src/main/java/org/apache/horaedb/signal/ShowRouteCacheSignalHandler.java similarity index 96% rename from horaedb-protocol/src/main/java/io/ceresdb/signal/ShowRouteCacheSignalHandler.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/signal/ShowRouteCacheSignalHandler.java index 40644f9..ca4f5eb 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/signal/ShowRouteCacheSignalHandler.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/signal/ShowRouteCacheSignalHandler.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.signal; +package org.apache.horaedb.signal; import java.io.File; import java.io.FileOutputStream; @@ -11,7 +11,7 @@ import java.nio.charset.StandardCharsets; import java.util.List; -import io.ceresdb.HoraeDBClient; +import org.apache.HoraeDBClient; import org.apache.horaedb.common.Display; import org.apache.horaedb.common.SPI; import org.apache.horaedb.common.signal.FileOutputHelper; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/util/RpcServiceRegister.java b/horaedb-protocol/src/main/java/org/apache/horaedb/util/RpcServiceRegister.java similarity index 95% rename from horaedb-protocol/src/main/java/io/ceresdb/util/RpcServiceRegister.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/util/RpcServiceRegister.java index 611a693..208cd38 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/util/RpcServiceRegister.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/util/RpcServiceRegister.java @@ -1,11 +1,11 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.util; +package org.apache.horaedb.util; import io.ceresdb.proto.internal.Storage; -import io.ceresdb.rpc.MethodDescriptor; -import io.ceresdb.rpc.RpcFactoryProvider; +import org.apache.horaedb.rpc.MethodDescriptor; +import org.apache.horaedb.rpc.RpcFactoryProvider; import org.apache.horaedb.common.OptKeys; import org.apache.horaedb.common.util.SystemPropertyUtil; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/util/StreamWriteBuf.java b/horaedb-protocol/src/main/java/org/apache/horaedb/util/StreamWriteBuf.java similarity index 97% rename from horaedb-protocol/src/main/java/io/ceresdb/util/StreamWriteBuf.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/util/StreamWriteBuf.java index b3a4865..471808a 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/util/StreamWriteBuf.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/util/StreamWriteBuf.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.util; +package org.apache.horaedb.util; import java.util.Collection; import java.util.concurrent.CompletableFuture; diff --git a/horaedb-protocol/src/main/java/io/ceresdb/util/Utils.java b/horaedb-protocol/src/main/java/org/apache/horaedb/util/Utils.java similarity index 98% rename from horaedb-protocol/src/main/java/io/ceresdb/util/Utils.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/util/Utils.java index 9157581..c849aa4 100644 --- a/horaedb-protocol/src/main/java/io/ceresdb/util/Utils.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/util/Utils.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.util; +package org.apache.horaedb.util; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; @@ -25,19 +25,19 @@ import java.util.concurrent.atomic.AtomicBoolean; import java.util.stream.Collectors; -import io.ceresdb.Route; +import org.apache.Route; -import io.ceresdb.models.Err; -import io.ceresdb.models.Keyword; -import io.ceresdb.models.Point; -import io.ceresdb.models.Row; -import io.ceresdb.models.SqlQueryOk; -import io.ceresdb.models.Result; -import io.ceresdb.models.Value; -import io.ceresdb.models.WriteOk; +import org.apache.horaedb.models.Err; +import org.apache.horaedb.models.Keyword; +import org.apache.horaedb.models.Point; +import org.apache.horaedb.models.Row; +import org.apache.horaedb.models.SqlQueryOk; +import org.apache.horaedb.models.Result; +import org.apache.horaedb.models.Value; +import org.apache.horaedb.models.WriteOk; import io.ceresdb.proto.internal.Common; import io.ceresdb.proto.internal.Storage; -import io.ceresdb.rpc.Observer; +import org.apache.horaedb.rpc.Observer; import org.apache.arrow.memory.RootAllocator; import org.apache.arrow.vector.BigIntVector; diff --git a/horaedb-protocol/src/main/resources/META-INF/services/io.ceresdb.common.signal.SignalHandler b/horaedb-protocol/src/main/resources/META-INF/services/io.ceresdb.common.signal.SignalHandler deleted file mode 100644 index 3f32f98..0000000 --- a/horaedb-protocol/src/main/resources/META-INF/services/io.ceresdb.common.signal.SignalHandler +++ /dev/null @@ -1,6 +0,0 @@ -io.ceresdb.signal.ShowHelpSignalHandler -io.ceresdb.signal.MetricsSignalHandler -io.ceresdb.signal.DisplaySignalHandler -io.ceresdb.signal.ClearRouteCacheSignalHandler -io.ceresdb.signal.ShowRouteCacheSignalHandler -io.ceresdb.signal.RwLoggingSignalHandler diff --git a/horaedb-protocol/src/main/resources/META-INF/services/io.horaedb.common.signal.SignalHandler b/horaedb-protocol/src/main/resources/META-INF/services/io.horaedb.common.signal.SignalHandler new file mode 100644 index 0000000..b0fe12f --- /dev/null +++ b/horaedb-protocol/src/main/resources/META-INF/services/io.horaedb.common.signal.SignalHandler @@ -0,0 +1,6 @@ +io.horaedb.signal.ShowHelpSignalHandler +org.apache.horaedb.signal.MetricsSignalHandler +org.apache.horaedb.signal.DisplaySignalHandler +org.apache.horaedb.signal.ClearRouteCacheSignalHandler +org.apache.horaedb.signal.ShowRouteCacheSignalHandler +org.apache.horaedb.signal.RwLoggingSignalHandler diff --git a/horaedb-protocol/src/test/java/io/ceresdb/HoraeDBClientTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/HoraeDBClientTest.java similarity index 86% rename from horaedb-protocol/src/test/java/io/ceresdb/HoraeDBClientTest.java rename to horaedb-protocol/src/test/java/org/apache/horaedb/HoraeDBClientTest.java index bc77696..37e6868 100644 --- a/horaedb-protocol/src/test/java/io/ceresdb/HoraeDBClientTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/HoraeDBClientTest.java @@ -1,12 +1,15 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache.horaedb; import java.util.List; import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutionException; +import org.apache.HoraeDBClient; +import org.apache.RouteMode; +import org.apache.WriteClient; import org.apache.horaedb.common.util.MetricsUtil; import org.apache.horaedb.common.util.internal.ReferenceFieldUpdater; import org.apache.horaedb.common.util.internal.Updaters; @@ -19,14 +22,14 @@ import org.mockito.Mockito; import org.mockito.runners.MockitoJUnitRunner; -import io.ceresdb.models.Err; -import io.ceresdb.models.Point; -import io.ceresdb.models.Result; -import io.ceresdb.models.WriteOk; -import io.ceresdb.models.WriteRequest; -import io.ceresdb.options.HoraeDBOptions; -import io.ceresdb.util.TestUtil; -import io.ceresdb.util.Utils; +import org.apache.horaedb.models.Err; +import org.apache.horaedb.models.Point; +import org.apache.horaedb.models.Result; +import org.apache.horaedb.models.WriteOk; +import org.apache.horaedb.models.WriteRequest; +import org.apache.horaedb.options.HoraeDBOptions; +import org.apache.horaedb.util.TestUtil; +import org.apache.horaedb.util.Utils; @RunWith(value = MockitoJUnitRunner.class) public class HoraeDBClientTest { diff --git a/horaedb-protocol/src/test/java/io/ceresdb/QueryClientTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/QueryClientTest.java similarity index 97% rename from horaedb-protocol/src/test/java/io/ceresdb/QueryClientTest.java rename to horaedb-protocol/src/test/java/org/apache/horaedb/QueryClientTest.java index 6e3a487..db27156 100644 --- a/horaedb-protocol/src/test/java/io/ceresdb/QueryClientTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/QueryClientTest.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache.horaedb; import java.io.ByteArrayOutputStream; import java.io.IOException; @@ -17,7 +17,8 @@ import java.util.stream.Collectors; import java.util.stream.Stream; -import io.ceresdb.models.Row; +import org.apache.*; +import org.apache.horaedb.models.Row; import io.ceresdb.proto.internal.Common; import io.ceresdb.proto.internal.Storage; @@ -52,16 +53,16 @@ import io.ceresdb.common.Endpoint; import io.ceresdb.common.util.internal.ThrowUtil; -import io.ceresdb.errors.IteratorException; -import io.ceresdb.errors.StreamException; -import io.ceresdb.models.Err; -import io.ceresdb.models.SqlQueryOk; -import io.ceresdb.models.SqlQueryRequest; -import io.ceresdb.models.Result; -import io.ceresdb.options.QueryOptions; -import io.ceresdb.rpc.Context; -import io.ceresdb.rpc.Observer; -import io.ceresdb.util.Utils; +import org.apache.horaedb.errors.IteratorException; +import org.apache.horaedb.errors.StreamException; +import org.apache.horaedb.models.Err; +import org.apache.horaedb.models.SqlQueryOk; +import org.apache.horaedb.models.SqlQueryRequest; +import org.apache.horaedb.models.Result; +import org.apache.horaedb.options.QueryOptions; +import org.apache.horaedb.rpc.Context; +import org.apache.horaedb.rpc.Observer; +import org.apache.horaedb.util.Utils; import com.google.protobuf.ByteStringHelper; diff --git a/horaedb-protocol/src/test/java/io/ceresdb/QueryLimiterTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/QueryLimiterTest.java similarity index 91% rename from horaedb-protocol/src/test/java/io/ceresdb/QueryLimiterTest.java rename to horaedb-protocol/src/test/java/org/apache/horaedb/QueryLimiterTest.java index be44544..1a0e434 100644 --- a/horaedb-protocol/src/test/java/io/ceresdb/QueryLimiterTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/QueryLimiterTest.java @@ -1,24 +1,26 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache.horaedb; import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutionException; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicBoolean; +import org.apache.QueryClient; +import org.apache.horaedb.QueryClient; import org.junit.Assert; import org.junit.Test; -import io.ceresdb.errors.LimitedException; -import io.ceresdb.limit.LimitedPolicy; -import io.ceresdb.limit.QueryLimiter; -import io.ceresdb.models.Err; -import io.ceresdb.models.SqlQueryOk; -import io.ceresdb.models.SqlQueryRequest; -import io.ceresdb.models.Result; -import io.ceresdb.util.Utils; +import org.apache.horaedb.errors.LimitedException; +import org.apache.horaedb.limit.LimitedPolicy; +import org.apache.horaedb.limit.QueryLimiter; +import org.apache.horaedb.models.Err; +import org.apache.horaedb.models.SqlQueryOk; +import org.apache.horaedb.models.SqlQueryRequest; +import org.apache.horaedb.models.Result; +import org.apache.horaedb.util.Utils; public class QueryLimiterTest { diff --git a/horaedb-protocol/src/test/java/io/ceresdb/UtilsTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/UtilsTest.java similarity index 92% rename from horaedb-protocol/src/test/java/io/ceresdb/UtilsTest.java rename to horaedb-protocol/src/test/java/org/apache/horaedb/UtilsTest.java index 5a4bf7f..39dfb3f 100644 --- a/horaedb-protocol/src/test/java/io/ceresdb/UtilsTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/UtilsTest.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache.horaedb; import java.util.Collections; import java.util.HashMap; @@ -10,16 +10,18 @@ import java.util.Map; import java.util.Optional; +import org.apache.Route; +import org.apache.horaedb.Route; import org.apache.horaedb.common.Endpoint; import org.junit.Assert; import org.junit.Test; -import io.ceresdb.models.Err; -import io.ceresdb.models.Point; -import io.ceresdb.models.Result; -import io.ceresdb.models.WriteOk; -import io.ceresdb.util.TestUtil; -import io.ceresdb.util.Utils; +import org.apache.horaedb.models.Err; +import org.apache.horaedb.models.Point; +import org.apache.horaedb.models.Result; +import org.apache.horaedb.models.WriteOk; +import org.apache.horaedb.util.TestUtil; +import org.apache.horaedb.util.Utils; public class UtilsTest { diff --git a/horaedb-protocol/src/test/java/io/ceresdb/WriteClientTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/WriteClientTest.java similarity index 95% rename from horaedb-protocol/src/test/java/io/ceresdb/WriteClientTest.java rename to horaedb-protocol/src/test/java/org/apache/horaedb/WriteClientTest.java index 7e975da..f350696 100644 --- a/horaedb-protocol/src/test/java/io/ceresdb/WriteClientTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/WriteClientTest.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache.horaedb; import java.util.ArrayList; import java.util.Arrays; @@ -18,10 +18,13 @@ import java.util.stream.Collectors; import java.util.stream.Stream; -import io.ceresdb.models.Point; -import io.ceresdb.models.RequestContext; -import io.ceresdb.models.Value; -import io.ceresdb.models.WriteRequest; +import org.apache.Route; +import org.apache.RouterClient; +import org.apache.WriteClient; +import org.apache.horaedb.models.Point; +import org.apache.horaedb.models.RequestContext; +import org.apache.horaedb.models.Value; +import org.apache.horaedb.models.WriteRequest; import io.ceresdb.proto.internal.Common; import io.ceresdb.proto.internal.Storage; import org.junit.After; @@ -35,15 +38,15 @@ import io.ceresdb.common.Endpoint; import io.ceresdb.common.util.Clock; -import io.ceresdb.models.Err; -import io.ceresdb.models.Result; -import io.ceresdb.models.WriteOk; -import io.ceresdb.options.WriteOptions; -import io.ceresdb.rpc.Context; -import io.ceresdb.rpc.Observer; -import io.ceresdb.util.StreamWriteBuf; -import io.ceresdb.util.TestUtil; -import io.ceresdb.util.Utils; +import org.apache.horaedb.models.Err; +import org.apache.horaedb.models.Result; +import org.apache.horaedb.models.WriteOk; +import org.apache.horaedb.options.WriteOptions; +import org.apache.horaedb.rpc.Context; +import org.apache.horaedb.rpc.Observer; +import org.apache.horaedb.util.StreamWriteBuf; +import org.apache.horaedb.util.TestUtil; +import org.apache.horaedb.util.Utils; @RunWith(value = MockitoJUnitRunner.class) public class WriteClientTest { diff --git a/horaedb-protocol/src/test/java/io/ceresdb/WriteLimitTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/WriteLimitTest.java similarity index 90% rename from horaedb-protocol/src/test/java/io/ceresdb/WriteLimitTest.java rename to horaedb-protocol/src/test/java/org/apache/horaedb/WriteLimitTest.java index a7d9524..c6158ba 100644 --- a/horaedb-protocol/src/test/java/io/ceresdb/WriteLimitTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/WriteLimitTest.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb; +package org.apache.horaedb; import java.util.List; import java.util.concurrent.CompletableFuture; @@ -9,18 +9,20 @@ import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicBoolean; +import org.apache.WriteClient; +import org.apache.horaedb.WriteClient; import org.junit.Assert; import org.junit.Test; -import io.ceresdb.errors.LimitedException; -import io.ceresdb.limit.LimitedPolicy; -import io.ceresdb.limit.WriteLimiter; -import io.ceresdb.models.Err; -import io.ceresdb.models.Point; -import io.ceresdb.models.Result; -import io.ceresdb.models.WriteOk; -import io.ceresdb.util.TestUtil; -import io.ceresdb.util.Utils; +import org.apache.horaedb.errors.LimitedException; +import org.apache.horaedb.limit.LimitedPolicy; +import org.apache.horaedb.limit.WriteLimiter; +import org.apache.horaedb.models.Err; +import org.apache.horaedb.models.Point; +import org.apache.horaedb.models.Result; +import org.apache.horaedb.models.WriteOk; +import org.apache.horaedb.util.TestUtil; +import org.apache.horaedb.util.Utils; public class WriteLimitTest { diff --git a/horaedb-protocol/src/test/java/io/ceresdb/models/ErrTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/models/ErrTest.java similarity index 93% rename from horaedb-protocol/src/test/java/io/ceresdb/models/ErrTest.java rename to horaedb-protocol/src/test/java/org/apache/horaedb/models/ErrTest.java index 6cd8195..ba377ad 100644 --- a/horaedb-protocol/src/test/java/io/ceresdb/models/ErrTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/models/ErrTest.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.models; +package org.apache.horaedb.models; import java.util.Arrays; import java.util.Collections; @@ -11,6 +11,8 @@ import java.util.stream.Collectors; import org.apache.horaedb.common.Endpoint; +import org.apache.horaedb.models.Err; +import org.apache.horaedb.models.WriteOk; import org.junit.Assert; import org.junit.Test; diff --git a/horaedb-protocol/src/test/java/io/ceresdb/models/PointTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/models/PointTest.java similarity index 92% rename from horaedb-protocol/src/test/java/io/ceresdb/models/PointTest.java rename to horaedb-protocol/src/test/java/org/apache/horaedb/models/PointTest.java index 0ce23c7..ebdf7e8 100644 --- a/horaedb-protocol/src/test/java/io/ceresdb/models/PointTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/models/PointTest.java @@ -1,10 +1,10 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.models; - -import java.util.List; +package org.apache.horaedb.models; +import org.apache.horaedb.models.Point; +import org.apache.horaedb.models.Value; import org.junit.Assert; import org.junit.Test; diff --git a/horaedb-protocol/src/test/java/io/ceresdb/models/ResultTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/models/ResultTest.java similarity index 97% rename from horaedb-protocol/src/test/java/io/ceresdb/models/ResultTest.java rename to horaedb-protocol/src/test/java/org/apache/horaedb/models/ResultTest.java index 21de2b3..13e2d26 100644 --- a/horaedb-protocol/src/test/java/io/ceresdb/models/ResultTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/models/ResultTest.java @@ -1,13 +1,13 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.models; +package org.apache.horaedb.models; import java.util.ArrayList; -import java.util.Collections; import java.util.List; -import java.util.stream.IntStream; +import org.apache.horaedb.models.*; +import org.apache.models.*; import org.junit.Assert; import org.junit.Test; diff --git a/horaedb-protocol/src/test/java/io/ceresdb/models/RowTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/models/RowTest.java similarity index 91% rename from horaedb-protocol/src/test/java/io/ceresdb/models/RowTest.java rename to horaedb-protocol/src/test/java/org/apache/horaedb/models/RowTest.java index 3be78f4..5433874 100644 --- a/horaedb-protocol/src/test/java/io/ceresdb/models/RowTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/models/RowTest.java @@ -1,10 +1,12 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.models; +package org.apache.horaedb.models; import java.util.List; +import org.apache.horaedb.models.Row; +import org.apache.horaedb.models.Value; import org.junit.Assert; import org.junit.Test; diff --git a/horaedb-protocol/src/test/java/io/ceresdb/models/ValueTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/models/ValueTest.java similarity index 98% rename from horaedb-protocol/src/test/java/io/ceresdb/models/ValueTest.java rename to horaedb-protocol/src/test/java/org/apache/horaedb/models/ValueTest.java index cde0b48..d3aabc7 100644 --- a/horaedb-protocol/src/test/java/io/ceresdb/models/ValueTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/models/ValueTest.java @@ -1,8 +1,9 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.models; +package org.apache.horaedb.models; +import org.apache.horaedb.models.Value; import org.junit.Assert; import org.junit.Test; diff --git a/horaedb-protocol/src/test/java/io/ceresdb/models/WriteOkTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/models/WriteOkTest.java similarity index 94% rename from horaedb-protocol/src/test/java/io/ceresdb/models/WriteOkTest.java rename to horaedb-protocol/src/test/java/org/apache/horaedb/models/WriteOkTest.java index 990b619..7f3886a 100644 --- a/horaedb-protocol/src/test/java/io/ceresdb/models/WriteOkTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/models/WriteOkTest.java @@ -1,12 +1,13 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.models; +package org.apache.horaedb.models; import java.util.Arrays; import java.util.HashSet; import java.util.Set; +import org.apache.horaedb.models.WriteOk; import org.junit.Assert; import org.junit.Test; diff --git a/horaedb-protocol/src/test/java/io/ceresdb/util/TestUtil.java b/horaedb-protocol/src/test/java/org/apache/horaedb/util/TestUtil.java similarity index 94% rename from horaedb-protocol/src/test/java/io/ceresdb/util/TestUtil.java rename to horaedb-protocol/src/test/java/org/apache/horaedb/util/TestUtil.java index 05f85d8..2281e5e 100644 --- a/horaedb-protocol/src/test/java/io/ceresdb/util/TestUtil.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/util/TestUtil.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.util; +package org.apache.horaedb.util; import java.util.ArrayList; import java.util.Collections; @@ -10,9 +10,9 @@ import java.util.Set; import io.ceresdb.common.util.Clock; -import io.ceresdb.models.Point; -import io.ceresdb.models.Result; -import io.ceresdb.models.Value; +import org.apache.horaedb.models.Point; +import org.apache.horaedb.models.Result; +import org.apache.horaedb.models.Value; import io.ceresdb.proto.internal.Common; import io.ceresdb.proto.internal.Storage; diff --git a/horaedb-rpc/src/main/java/io/ceresdb/rpc/Context.java b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/Context.java similarity index 98% rename from horaedb-rpc/src/main/java/io/ceresdb/rpc/Context.java rename to horaedb-rpc/src/main/java/org/apache/horaedb/rpc/Context.java index c97b597..5cd3878 100644 --- a/horaedb-rpc/src/main/java/io/ceresdb/rpc/Context.java +++ b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/Context.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc; +package org.apache.horaedb.rpc; import java.util.HashMap; import java.util.Map; diff --git a/horaedb-rpc/src/main/java/io/ceresdb/rpc/MethodDescriptor.java b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/MethodDescriptor.java similarity index 98% rename from horaedb-rpc/src/main/java/io/ceresdb/rpc/MethodDescriptor.java rename to horaedb-rpc/src/main/java/org/apache/horaedb/rpc/MethodDescriptor.java index e0c2c06..bc24598 100644 --- a/horaedb-rpc/src/main/java/io/ceresdb/rpc/MethodDescriptor.java +++ b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/MethodDescriptor.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc; +package org.apache.horaedb.rpc; import java.util.Objects; diff --git a/horaedb-rpc/src/main/java/io/ceresdb/rpc/Observer.java b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/Observer.java similarity index 98% rename from horaedb-rpc/src/main/java/io/ceresdb/rpc/Observer.java rename to horaedb-rpc/src/main/java/org/apache/horaedb/rpc/Observer.java index e178078..b883878 100644 --- a/horaedb-rpc/src/main/java/io/ceresdb/rpc/Observer.java +++ b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/Observer.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc; +package org.apache.horaedb.rpc; import java.util.concurrent.Executor; diff --git a/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcClient.java b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/RpcClient.java similarity index 98% rename from horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcClient.java rename to horaedb-rpc/src/main/java/org/apache/horaedb/rpc/RpcClient.java index 4da186d..5345aee 100644 --- a/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcClient.java +++ b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/RpcClient.java @@ -1,12 +1,12 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc; +package org.apache.horaedb.rpc; import org.apache.horaedb.common.Display; import org.apache.horaedb.common.Endpoint; import org.apache.horaedb.common.Lifecycle; -import io.ceresdb.rpc.errors.RemotingException; +import org.apache.horaedb.rpc.errors.RemotingException; /** * A common RPC client. diff --git a/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcFactory.java b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/RpcFactory.java similarity index 97% rename from horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcFactory.java rename to horaedb-rpc/src/main/java/org/apache/horaedb/rpc/RpcFactory.java index bcca49b..268894b 100644 --- a/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcFactory.java +++ b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/RpcFactory.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc; +package org.apache.horaedb.rpc; /** * HoraeDB's RPC service factory. diff --git a/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcFactoryProvider.java b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/RpcFactoryProvider.java similarity index 94% rename from horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcFactoryProvider.java rename to horaedb-rpc/src/main/java/org/apache/horaedb/rpc/RpcFactoryProvider.java index b72c9bf..e199621 100644 --- a/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcFactoryProvider.java +++ b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/RpcFactoryProvider.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc; +package org.apache.horaedb.rpc; import org.apache.horaedb.common.util.ServiceLoader; diff --git a/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcOptions.java b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/RpcOptions.java similarity index 99% rename from horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcOptions.java rename to horaedb-rpc/src/main/java/org/apache/horaedb/rpc/RpcOptions.java index 0f8d318..6014557 100644 --- a/horaedb-rpc/src/main/java/io/ceresdb/rpc/RpcOptions.java +++ b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/RpcOptions.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc; +package org.apache.horaedb.rpc; import java.util.concurrent.TimeUnit; diff --git a/horaedb-rpc/src/main/java/io/ceresdb/rpc/errors/ConnectFailException.java b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/errors/ConnectFailException.java similarity index 95% rename from horaedb-rpc/src/main/java/io/ceresdb/rpc/errors/ConnectFailException.java rename to horaedb-rpc/src/main/java/org/apache/horaedb/rpc/errors/ConnectFailException.java index 432cac0..2596251 100644 --- a/horaedb-rpc/src/main/java/io/ceresdb/rpc/errors/ConnectFailException.java +++ b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/errors/ConnectFailException.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc.errors; +package org.apache.horaedb.rpc.errors; public class ConnectFailException extends RemotingException { diff --git a/horaedb-rpc/src/main/java/io/ceresdb/rpc/errors/InvokeTimeoutException.java b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/errors/InvokeTimeoutException.java similarity index 95% rename from horaedb-rpc/src/main/java/io/ceresdb/rpc/errors/InvokeTimeoutException.java rename to horaedb-rpc/src/main/java/org/apache/horaedb/rpc/errors/InvokeTimeoutException.java index b5cbea0..fa00718 100644 --- a/horaedb-rpc/src/main/java/io/ceresdb/rpc/errors/InvokeTimeoutException.java +++ b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/errors/InvokeTimeoutException.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc.errors; +package org.apache.horaedb.rpc.errors; public class InvokeTimeoutException extends RemotingException { diff --git a/horaedb-rpc/src/main/java/io/ceresdb/rpc/errors/OnlyErrorMessage.java b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/errors/OnlyErrorMessage.java similarity index 92% rename from horaedb-rpc/src/main/java/io/ceresdb/rpc/errors/OnlyErrorMessage.java rename to horaedb-rpc/src/main/java/org/apache/horaedb/rpc/errors/OnlyErrorMessage.java index 38e9f07..d2438d3 100644 --- a/horaedb-rpc/src/main/java/io/ceresdb/rpc/errors/OnlyErrorMessage.java +++ b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/errors/OnlyErrorMessage.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc.errors; +package org.apache.horaedb.rpc.errors; /** * Takes some additional error message, no stack trace, can be added to an exists Exception. diff --git a/horaedb-rpc/src/main/java/io/ceresdb/rpc/errors/RemotingException.java b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/errors/RemotingException.java similarity index 95% rename from horaedb-rpc/src/main/java/io/ceresdb/rpc/errors/RemotingException.java rename to horaedb-rpc/src/main/java/org/apache/horaedb/rpc/errors/RemotingException.java index cbb5ff5..c8f4708 100644 --- a/horaedb-rpc/src/main/java/io/ceresdb/rpc/errors/RemotingException.java +++ b/horaedb-rpc/src/main/java/org/apache/horaedb/rpc/errors/RemotingException.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package io.ceresdb.rpc.errors; +package org.apache.horaedb.rpc.errors; /** * Exception for default remoting problems. diff --git a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBParser.java b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBParser.java index 75d66b0..565629b 100644 --- a/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBParser.java +++ b/horaedb-sql-javacc/src/main/java/org/apache/horaedb/sql/CeresDBParser.java @@ -5,7 +5,7 @@ import java.util.List; -import io.ceresdb.util.Utils; +import org.apache.horaedb.util.Utils; import org.apache.horaedb.common.parser.SqlParser; import org.apache.horaedb.common.util.internal.ThrowUtil; From 1b29984e22311f4e0c63139d4cb3b88787f26b13 Mon Sep 17 00:00:00 2001 From: CooooolFrog Date: Fri, 29 Mar 2024 15:12:56 +0800 Subject: [PATCH 04/10] rename package --- docs/metrics_and_display.md | 2 +- .../src/test/java/org/apache/horaedb/CeresDBTest.java | 2 -- .../src/test/java/org/apache/horaedb/ReadmeTest.java | 2 -- .../apache/{ => horaedb}/BlockingStreamIterator.java | 2 +- .../java/org/apache/{ => horaedb}/HoraeDBClient.java | 2 +- .../org/apache/{ => horaedb}/ProxyRouterClient.java | 2 +- .../src/main/java/org/apache/{ => horaedb}/Query.java | 2 +- .../java/org/apache/{ => horaedb}/QueryClient.java | 11 +++++------ .../src/main/java/org/apache/{ => horaedb}/Route.java | 2 +- .../main/java/org/apache/{ => horaedb}/RouteMode.java | 2 +- .../main/java/org/apache/{ => horaedb}/Router.java | 2 +- .../java/org/apache/{ => horaedb}/RouterClient.java | 2 +- .../java/org/apache/{ => horaedb}/RowIterator.java | 2 +- .../src/main/java/org/apache/{ => horaedb}/Write.java | 2 +- .../java/org/apache/{ => horaedb}/WriteClient.java | 2 +- .../org/apache/horaedb/options/HoraeDBOptions.java | 2 +- .../java/org/apache/horaedb/options/QueryOptions.java | 2 +- .../org/apache/horaedb/options/RouterOptions.java | 2 +- .../java/org/apache/horaedb/options/WriteOptions.java | 2 +- .../horaedb/signal/ClearRouteCacheSignalHandler.java | 2 +- .../apache/horaedb/signal/DisplaySignalHandler.java | 2 +- .../horaedb/signal/ShowRouteCacheSignalHandler.java | 2 +- .../src/main/java/org/apache/horaedb/util/Utils.java | 2 +- .../java/org/apache/horaedb/HoraeDBClientTest.java | 3 --- .../test/java/org/apache/horaedb/QueryClientTest.java | 11 ++++------- .../java/org/apache/horaedb/QueryLimiterTest.java | 2 -- .../src/test/java/org/apache/horaedb/UtilsTest.java | 2 -- .../test/java/org/apache/horaedb/WriteClientTest.java | 3 --- .../test/java/org/apache/horaedb/WriteLimitTest.java | 2 -- 29 files changed, 29 insertions(+), 49 deletions(-) rename horaedb-protocol/src/main/java/org/apache/{ => horaedb}/BlockingStreamIterator.java (99%) rename horaedb-protocol/src/main/java/org/apache/{ => horaedb}/HoraeDBClient.java (99%) rename horaedb-protocol/src/main/java/org/apache/{ => horaedb}/ProxyRouterClient.java (97%) rename horaedb-protocol/src/main/java/org/apache/{ => horaedb}/Query.java (99%) rename horaedb-protocol/src/main/java/org/apache/{ => horaedb}/QueryClient.java (96%) rename horaedb-protocol/src/main/java/org/apache/{ => horaedb}/Route.java (98%) rename horaedb-protocol/src/main/java/org/apache/{ => horaedb}/RouteMode.java (94%) rename horaedb-protocol/src/main/java/org/apache/{ => horaedb}/Router.java (94%) rename horaedb-protocol/src/main/java/org/apache/{ => horaedb}/RouterClient.java (99%) rename horaedb-protocol/src/main/java/org/apache/{ => horaedb}/RowIterator.java (96%) rename horaedb-protocol/src/main/java/org/apache/{ => horaedb}/Write.java (98%) rename horaedb-protocol/src/main/java/org/apache/{ => horaedb}/WriteClient.java (99%) diff --git a/docs/metrics_and_display.md b/docs/metrics_and_display.md index f82fc6c..36c68a1 100644 --- a/docs/metrics_and_display.md +++ b/docs/metrics_and_display.md @@ -583,7 +583,7 @@ routeCache.size=1 --- GrpcClient --- started=true opts=RpcOptions{defaultRpcTimeout=10000, rpcThreadPoolSize=0, rpcThreadPoolQueueSize=16, maxInboundMessageSize=67108864, flowControlWindow=67108864, idleTimeoutSeconds=300, keepAliveTimeSeconds=3, keepAliveTimeoutSeconds=3, keepAliveWithoutCalls=true, openVegasLimiter=true, vegasInitialLimit=50, blockOnLimit=false} -connectionObservers=[org.apache.HoraeDBClient$RpcConnectionObserver@465f5824] +connectionObservers=[org.apache.horaedb.HoraeDBClient$RpcConnectionObserver@465f5824] asyncPool=DirectExecutor{name='grpc_executor'} interceptors=[io.ceresdb.rpc.interceptors.MetricInterceptor@62b47ad1, io.ceresdb.rpc.interceptors.ClientRequestLimitInterceptor@77533e32, io.ceresdb.rpc.interceptors.ContextToHeadersInterceptor@1a52427d] managedChannelPool={127.0.0.1:8831=ManagedChannelOrphanWrapper{delegate=ManagedChannelImpl{logId=1, target=127.0.0.1:8831}}} diff --git a/horaedb-example/src/test/java/org/apache/horaedb/CeresDBTest.java b/horaedb-example/src/test/java/org/apache/horaedb/CeresDBTest.java index 9e7a4bc..b6e05ae 100644 --- a/horaedb-example/src/test/java/org/apache/horaedb/CeresDBTest.java +++ b/horaedb-example/src/test/java/org/apache/horaedb/CeresDBTest.java @@ -13,8 +13,6 @@ import java.util.concurrent.ThreadLocalRandom; import java.util.concurrent.TimeUnit; -import org.apache.HoraeDBClient; -import org.apache.RouteMode; import org.apache.horaedb.common.util.MetricsUtil; import org.apache.horaedb.common.util.internal.ThrowUtil; import org.apache.horaedb.options.HoraeDBOptions; diff --git a/horaedb-example/src/test/java/org/apache/horaedb/ReadmeTest.java b/horaedb-example/src/test/java/org/apache/horaedb/ReadmeTest.java index 2b56564..e6155f7 100644 --- a/horaedb-example/src/test/java/org/apache/horaedb/ReadmeTest.java +++ b/horaedb-example/src/test/java/org/apache/horaedb/ReadmeTest.java @@ -4,8 +4,6 @@ package org.apache.horaedb; import io.ceresdb.models.*; -import org.apache.HoraeDBClient; -import org.apache.RouteMode; import org.apache.horaedb.models.*; import org.apache.models.*; import org.apache.horaedb.options.HoraeDBOptions; diff --git a/horaedb-protocol/src/main/java/org/apache/BlockingStreamIterator.java b/horaedb-protocol/src/main/java/org/apache/horaedb/BlockingStreamIterator.java similarity index 99% rename from horaedb-protocol/src/main/java/org/apache/BlockingStreamIterator.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/BlockingStreamIterator.java index 2c67ad6..3df4153 100644 --- a/horaedb-protocol/src/main/java/org/apache/BlockingStreamIterator.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/BlockingStreamIterator.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package org.apache; +package org.apache.horaedb; import java.util.Iterator; import java.util.concurrent.BlockingQueue; diff --git a/horaedb-protocol/src/main/java/org/apache/HoraeDBClient.java b/horaedb-protocol/src/main/java/org/apache/horaedb/HoraeDBClient.java similarity index 99% rename from horaedb-protocol/src/main/java/org/apache/HoraeDBClient.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/HoraeDBClient.java index 0c833d5..adbc08b 100644 --- a/horaedb-protocol/src/main/java/org/apache/HoraeDBClient.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/HoraeDBClient.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package org.apache; +package org.apache.horaedb; import java.util.ArrayList; import java.util.List; diff --git a/horaedb-protocol/src/main/java/org/apache/ProxyRouterClient.java b/horaedb-protocol/src/main/java/org/apache/horaedb/ProxyRouterClient.java similarity index 97% rename from horaedb-protocol/src/main/java/org/apache/ProxyRouterClient.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/ProxyRouterClient.java index 52faa11..da3fa6f 100644 --- a/horaedb-protocol/src/main/java/org/apache/ProxyRouterClient.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/ProxyRouterClient.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package org.apache; +package org.apache.horaedb; import java.util.Collection; import java.util.Collections; diff --git a/horaedb-protocol/src/main/java/org/apache/Query.java b/horaedb-protocol/src/main/java/org/apache/horaedb/Query.java similarity index 99% rename from horaedb-protocol/src/main/java/org/apache/Query.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/Query.java index c04a22d..b114dc5 100644 --- a/horaedb-protocol/src/main/java/org/apache/Query.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/Query.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package org.apache; +package org.apache.horaedb; import java.util.Iterator; import java.util.concurrent.CompletableFuture; diff --git a/horaedb-protocol/src/main/java/org/apache/QueryClient.java b/horaedb-protocol/src/main/java/org/apache/horaedb/QueryClient.java similarity index 96% rename from horaedb-protocol/src/main/java/org/apache/QueryClient.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/QueryClient.java index c07f1f0..dee87a6 100644 --- a/horaedb-protocol/src/main/java/org/apache/QueryClient.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/QueryClient.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package org.apache; +package org.apache.horaedb; import java.util.Set; import java.util.concurrent.CompletableFuture; @@ -11,7 +11,6 @@ import org.apache.horaedb.limit.LimitedPolicy; import org.apache.horaedb.limit.QueryLimiter; import org.apache.horaedb.models.RequestContext; -import io.ceresdb.proto.internal.Storage; import org.apache.horaedb.common.Display; import org.apache.horaedb.common.Endpoint; import org.apache.horaedb.common.Lifecycle; @@ -206,8 +205,8 @@ private CompletableFuture> queryFrom(final Endpoint endp final SqlQueryRequest req, // final Context ctx, // final int retries) { - final Storage.SqlQueryRequest request = Storage.SqlQueryRequest.newBuilder() // - .setContext(Storage.RequestContext.newBuilder().setDatabase(req.getReqCtx().getDatabase()).build()) // + final SqlQueryRequest request = SqlQueryRequest.newBuilder() // + .setContext(RequestContext.newBuilder().setDatabase(req.getReqCtx().getDatabase()).build()) // .addAllTables(req.getTables()) // .setSql(req.getSql()) // .build(); @@ -226,8 +225,8 @@ private void streamQueryFrom(final Endpoint endpoint, // final SqlQueryRequest req, // final Context ctx, // final Observer observer) { - final Storage.SqlQueryRequest request = Storage.SqlQueryRequest.newBuilder() // - .setContext(Storage.RequestContext.newBuilder().setDatabase(req.getReqCtx().getDatabase()).build()) // + final SqlQueryRequest request = SqlQueryRequest.newBuilder() // + .setContext(RequestContext.newBuilder().setDatabase(req.getReqCtx().getDatabase()).build()) // .addAllTables(req.getTables()) // .setSql(req.getSql()) // .build(); diff --git a/horaedb-protocol/src/main/java/org/apache/Route.java b/horaedb-protocol/src/main/java/org/apache/horaedb/Route.java similarity index 98% rename from horaedb-protocol/src/main/java/org/apache/Route.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/Route.java index 500e539..af84a0a 100644 --- a/horaedb-protocol/src/main/java/org/apache/Route.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/Route.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package org.apache; +package org.apache.horaedb; import org.apache.horaedb.common.Endpoint; import org.apache.horaedb.common.util.Clock; diff --git a/horaedb-protocol/src/main/java/org/apache/RouteMode.java b/horaedb-protocol/src/main/java/org/apache/horaedb/RouteMode.java similarity index 94% rename from horaedb-protocol/src/main/java/org/apache/RouteMode.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/RouteMode.java index af80d8a..2a51611 100644 --- a/horaedb-protocol/src/main/java/org/apache/RouteMode.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/RouteMode.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package org.apache; +package org.apache.horaedb; public enum RouteMode { diff --git a/horaedb-protocol/src/main/java/org/apache/Router.java b/horaedb-protocol/src/main/java/org/apache/horaedb/Router.java similarity index 94% rename from horaedb-protocol/src/main/java/org/apache/Router.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/Router.java index 232a0ad..981e814 100644 --- a/horaedb-protocol/src/main/java/org/apache/Router.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/Router.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package org.apache; +package org.apache.horaedb; import java.util.concurrent.CompletableFuture; diff --git a/horaedb-protocol/src/main/java/org/apache/RouterClient.java b/horaedb-protocol/src/main/java/org/apache/horaedb/RouterClient.java similarity index 99% rename from horaedb-protocol/src/main/java/org/apache/RouterClient.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/RouterClient.java index a658b99..90b3022 100644 --- a/horaedb-protocol/src/main/java/org/apache/RouterClient.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/RouterClient.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package org.apache; +package org.apache.horaedb; import java.util.ArrayList; import java.util.Collection; diff --git a/horaedb-protocol/src/main/java/org/apache/RowIterator.java b/horaedb-protocol/src/main/java/org/apache/horaedb/RowIterator.java similarity index 96% rename from horaedb-protocol/src/main/java/org/apache/RowIterator.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/RowIterator.java index 59a83c3..7e45896 100644 --- a/horaedb-protocol/src/main/java/org/apache/RowIterator.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/RowIterator.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package org.apache; +package org.apache.horaedb; import java.util.Iterator; diff --git a/horaedb-protocol/src/main/java/org/apache/Write.java b/horaedb-protocol/src/main/java/org/apache/horaedb/Write.java similarity index 98% rename from horaedb-protocol/src/main/java/org/apache/Write.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/Write.java index 4712ea5..567e7c3 100644 --- a/horaedb-protocol/src/main/java/org/apache/Write.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/Write.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package org.apache; +package org.apache.horaedb; import java.util.concurrent.CompletableFuture; diff --git a/horaedb-protocol/src/main/java/org/apache/WriteClient.java b/horaedb-protocol/src/main/java/org/apache/horaedb/WriteClient.java similarity index 99% rename from horaedb-protocol/src/main/java/org/apache/WriteClient.java rename to horaedb-protocol/src/main/java/org/apache/horaedb/WriteClient.java index 65368d8..ea89432 100644 --- a/horaedb-protocol/src/main/java/org/apache/WriteClient.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/WriteClient.java @@ -1,7 +1,7 @@ /* * Copyright 2023 CeresDB Project Authors. Licensed under Apache-2.0. */ -package org.apache; +package org.apache.horaedb; import java.util.Collection; import java.util.Collections; diff --git a/horaedb-protocol/src/main/java/org/apache/horaedb/options/HoraeDBOptions.java b/horaedb-protocol/src/main/java/org/apache/horaedb/options/HoraeDBOptions.java index cbe7ccc..8bc525c 100644 --- a/horaedb-protocol/src/main/java/org/apache/horaedb/options/HoraeDBOptions.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/options/HoraeDBOptions.java @@ -6,7 +6,7 @@ import java.util.concurrent.Executor; import org.apache.horaedb.limit.LimitedPolicy; -import org.apache.RouteMode; +import org.apache.horaedb.RouteMode; import org.apache.horaedb.rpc.RpcOptions; import org.apache.horaedb.common.Copiable; import org.apache.horaedb.common.Endpoint; diff --git a/horaedb-protocol/src/main/java/org/apache/horaedb/options/QueryOptions.java b/horaedb-protocol/src/main/java/org/apache/horaedb/options/QueryOptions.java index 69f9486..faa1167 100644 --- a/horaedb-protocol/src/main/java/org/apache/horaedb/options/QueryOptions.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/options/QueryOptions.java @@ -6,7 +6,7 @@ import java.util.concurrent.Executor; import org.apache.horaedb.limit.LimitedPolicy; -import org.apache.RouterClient; +import org.apache.horaedb.RouterClient; import org.apache.horaedb.common.Copiable; /** diff --git a/horaedb-protocol/src/main/java/org/apache/horaedb/options/RouterOptions.java b/horaedb-protocol/src/main/java/org/apache/horaedb/options/RouterOptions.java index d8cf7b3..a0fed8c 100644 --- a/horaedb-protocol/src/main/java/org/apache/horaedb/options/RouterOptions.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/options/RouterOptions.java @@ -3,7 +3,7 @@ */ package org.apache.horaedb.options; -import org.apache.RouteMode; +import org.apache.horaedb.RouteMode; import org.apache.horaedb.rpc.RpcClient; import org.apache.horaedb.common.Copiable; import org.apache.horaedb.common.Endpoint; diff --git a/horaedb-protocol/src/main/java/org/apache/horaedb/options/WriteOptions.java b/horaedb-protocol/src/main/java/org/apache/horaedb/options/WriteOptions.java index 1b0251f..659974e 100644 --- a/horaedb-protocol/src/main/java/org/apache/horaedb/options/WriteOptions.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/options/WriteOptions.java @@ -6,7 +6,7 @@ import java.util.concurrent.Executor; import org.apache.horaedb.limit.LimitedPolicy; -import org.apache.RouterClient; +import org.apache.horaedb.RouterClient; import org.apache.horaedb.common.Copiable; /** diff --git a/horaedb-protocol/src/main/java/org/apache/horaedb/signal/ClearRouteCacheSignalHandler.java b/horaedb-protocol/src/main/java/org/apache/horaedb/signal/ClearRouteCacheSignalHandler.java index 33429a2..de24330 100644 --- a/horaedb-protocol/src/main/java/org/apache/horaedb/signal/ClearRouteCacheSignalHandler.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/signal/ClearRouteCacheSignalHandler.java @@ -5,7 +5,7 @@ import java.util.List; -import org.apache.HoraeDBClient; +import org.apache.horaedb.HoraeDBClient; import org.apache.horaedb.common.SPI; import org.apache.horaedb.common.signal.FileSignal; import org.apache.horaedb.common.signal.FileSignals; diff --git a/horaedb-protocol/src/main/java/org/apache/horaedb/signal/DisplaySignalHandler.java b/horaedb-protocol/src/main/java/org/apache/horaedb/signal/DisplaySignalHandler.java index f7087e9..aef8e37 100644 --- a/horaedb-protocol/src/main/java/org/apache/horaedb/signal/DisplaySignalHandler.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/signal/DisplaySignalHandler.java @@ -11,7 +11,7 @@ import java.nio.charset.StandardCharsets; import java.util.List; -import org.apache.HoraeDBClient; +import org.apache.horaedb.HoraeDBClient; import org.apache.horaedb.common.Display; import org.apache.horaedb.common.SPI; import org.apache.horaedb.common.signal.FileOutputHelper; diff --git a/horaedb-protocol/src/main/java/org/apache/horaedb/signal/ShowRouteCacheSignalHandler.java b/horaedb-protocol/src/main/java/org/apache/horaedb/signal/ShowRouteCacheSignalHandler.java index ca4f5eb..4baf698 100644 --- a/horaedb-protocol/src/main/java/org/apache/horaedb/signal/ShowRouteCacheSignalHandler.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/signal/ShowRouteCacheSignalHandler.java @@ -11,7 +11,7 @@ import java.nio.charset.StandardCharsets; import java.util.List; -import org.apache.HoraeDBClient; +import org.apache.horaedb.HoraeDBClient; import org.apache.horaedb.common.Display; import org.apache.horaedb.common.SPI; import org.apache.horaedb.common.signal.FileOutputHelper; diff --git a/horaedb-protocol/src/main/java/org/apache/horaedb/util/Utils.java b/horaedb-protocol/src/main/java/org/apache/horaedb/util/Utils.java index c849aa4..300b92b 100644 --- a/horaedb-protocol/src/main/java/org/apache/horaedb/util/Utils.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/util/Utils.java @@ -25,7 +25,7 @@ import java.util.concurrent.atomic.AtomicBoolean; import java.util.stream.Collectors; -import org.apache.Route; +import org.apache.horaedb.Route; import org.apache.horaedb.models.Err; import org.apache.horaedb.models.Keyword; diff --git a/horaedb-protocol/src/test/java/org/apache/horaedb/HoraeDBClientTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/HoraeDBClientTest.java index 37e6868..1b6a943 100644 --- a/horaedb-protocol/src/test/java/org/apache/horaedb/HoraeDBClientTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/HoraeDBClientTest.java @@ -7,9 +7,6 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutionException; -import org.apache.HoraeDBClient; -import org.apache.RouteMode; -import org.apache.WriteClient; import org.apache.horaedb.common.util.MetricsUtil; import org.apache.horaedb.common.util.internal.ReferenceFieldUpdater; import org.apache.horaedb.common.util.internal.Updaters; diff --git a/horaedb-protocol/src/test/java/org/apache/horaedb/QueryClientTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/QueryClientTest.java index db27156..cb2e741 100644 --- a/horaedb-protocol/src/test/java/org/apache/horaedb/QueryClientTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/QueryClientTest.java @@ -17,10 +17,9 @@ import java.util.stream.Collectors; import java.util.stream.Stream; -import org.apache.*; +import org.apache.horaedb.common.Endpoint; +import org.apache.horaedb.common.util.internal.ThrowUtil; import org.apache.horaedb.models.Row; -import io.ceresdb.proto.internal.Common; -import io.ceresdb.proto.internal.Storage; import org.apache.arrow.memory.BufferAllocator; import org.apache.arrow.memory.RootAllocator; @@ -51,8 +50,6 @@ import org.mockito.Mockito; import org.mockito.runners.MockitoJUnitRunner; -import io.ceresdb.common.Endpoint; -import io.ceresdb.common.util.internal.ThrowUtil; import org.apache.horaedb.errors.IteratorException; import org.apache.horaedb.errors.StreamException; import org.apache.horaedb.models.Err; @@ -92,7 +89,7 @@ public void after() { @Test public void queryOkNoRouteTest() throws ExecutionException, InterruptedException, IOException { - final Storage.SqlQueryResponse resp = mockSimpleQueryResponse(1, false); + final SqlQueryResponse resp = mockSimpleQueryResponse(1, false); final Endpoint ep = Endpoint.of("127.0.0.1", 8081); Mockito.when(this.routerClient.invoke(Mockito.eq(ep), Mockito.any(), Mockito.any())) // @@ -388,7 +385,7 @@ private Storage.SqlQueryResponse mockAllTypeQueryResponse(int rowCount) throws I writer.writeBatch(); writer.close(); - Storage.ArrowPayload arrowPayload = Storage.ArrowPayload.newBuilder() + ArrowPayload arrowPayload = Storage.ArrowPayload.newBuilder() .setCompression(Storage.ArrowPayload.Compression.NONE) .addRecordBatches(ByteStringHelper.wrap(out.toByteArray())).build(); diff --git a/horaedb-protocol/src/test/java/org/apache/horaedb/QueryLimiterTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/QueryLimiterTest.java index 1a0e434..93ea1ce 100644 --- a/horaedb-protocol/src/test/java/org/apache/horaedb/QueryLimiterTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/QueryLimiterTest.java @@ -8,8 +8,6 @@ import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicBoolean; -import org.apache.QueryClient; -import org.apache.horaedb.QueryClient; import org.junit.Assert; import org.junit.Test; diff --git a/horaedb-protocol/src/test/java/org/apache/horaedb/UtilsTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/UtilsTest.java index 39dfb3f..b175508 100644 --- a/horaedb-protocol/src/test/java/org/apache/horaedb/UtilsTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/UtilsTest.java @@ -10,8 +10,6 @@ import java.util.Map; import java.util.Optional; -import org.apache.Route; -import org.apache.horaedb.Route; import org.apache.horaedb.common.Endpoint; import org.junit.Assert; import org.junit.Test; diff --git a/horaedb-protocol/src/test/java/org/apache/horaedb/WriteClientTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/WriteClientTest.java index f350696..441643f 100644 --- a/horaedb-protocol/src/test/java/org/apache/horaedb/WriteClientTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/WriteClientTest.java @@ -18,9 +18,6 @@ import java.util.stream.Collectors; import java.util.stream.Stream; -import org.apache.Route; -import org.apache.RouterClient; -import org.apache.WriteClient; import org.apache.horaedb.models.Point; import org.apache.horaedb.models.RequestContext; import org.apache.horaedb.models.Value; diff --git a/horaedb-protocol/src/test/java/org/apache/horaedb/WriteLimitTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/WriteLimitTest.java index c6158ba..52d2eb2 100644 --- a/horaedb-protocol/src/test/java/org/apache/horaedb/WriteLimitTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/WriteLimitTest.java @@ -9,8 +9,6 @@ import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicBoolean; -import org.apache.WriteClient; -import org.apache.horaedb.WriteClient; import org.junit.Assert; import org.junit.Test; From 13468caeb9e0400817816629904fe099d15a1556 Mon Sep 17 00:00:00 2001 From: CooooolFrog Date: Fri, 29 Mar 2024 15:21:11 +0800 Subject: [PATCH 05/10] rename package --- .../src/test/java/org/apache/horaedb/CeresDBTest.java | 2 +- .../src/main/java/org/apache/horaedb/QueryClient.java | 9 +++++---- .../src/main/java/org/apache/horaedb/RouterClient.java | 2 +- .../src/main/java/org/apache/horaedb/WriteClient.java | 2 +- .../java/org/apache/horaedb/util/RpcServiceRegister.java | 2 +- .../src/main/java/org/apache/horaedb/util/Utils.java | 4 ++-- 6 files changed, 11 insertions(+), 10 deletions(-) diff --git a/horaedb-example/src/test/java/org/apache/horaedb/CeresDBTest.java b/horaedb-example/src/test/java/org/apache/horaedb/CeresDBTest.java index b6e05ae..5b8986e 100644 --- a/horaedb-example/src/test/java/org/apache/horaedb/CeresDBTest.java +++ b/horaedb-example/src/test/java/org/apache/horaedb/CeresDBTest.java @@ -90,7 +90,7 @@ public void before() throws Exception { "fUint8 UINT8 NULL," + // "fTimestamp TIMESTAMP NULL," + // - //"fVarbinary VARBINARY NULL, + //" + //"fVarbinary VARBINARY NULL, + //" "TIMESTAMP KEY(ts)) ENGINE=Analytic WITH (ttl='7d')", TEST_TABLE_NAME)).get(); if (!createResult.isOk()) { diff --git a/horaedb-protocol/src/main/java/org/apache/horaedb/QueryClient.java b/horaedb-protocol/src/main/java/org/apache/horaedb/QueryClient.java index dee87a6..bb77971 100644 --- a/horaedb-protocol/src/main/java/org/apache/horaedb/QueryClient.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/QueryClient.java @@ -18,6 +18,7 @@ import org.apache.horaedb.common.parser.SqlParser; import org.apache.horaedb.common.parser.SqlParserFactoryProvider; import org.apache.horaedb.common.util.*; +import org.apache.horaedb.proto.internal.Storage; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -205,8 +206,8 @@ private CompletableFuture> queryFrom(final Endpoint endp final SqlQueryRequest req, // final Context ctx, // final int retries) { - final SqlQueryRequest request = SqlQueryRequest.newBuilder() // - .setContext(RequestContext.newBuilder().setDatabase(req.getReqCtx().getDatabase()).build()) // + final Storage.SqlQueryRequest request = Storage.SqlQueryRequest.newBuilder() // + .setContext(Storage.RequestContext.newBuilder().setDatabase(req.getReqCtx().getDatabase()).build()) // .addAllTables(req.getTables()) // .setSql(req.getSql()) // .build(); @@ -225,8 +226,8 @@ private void streamQueryFrom(final Endpoint endpoint, // final SqlQueryRequest req, // final Context ctx, // final Observer observer) { - final SqlQueryRequest request = SqlQueryRequest.newBuilder() // - .setContext(RequestContext.newBuilder().setDatabase(req.getReqCtx().getDatabase()).build()) // + final Storage.SqlQueryRequest request = Storage.SqlQueryRequest.newBuilder() // + .setContext(Storage.RequestContext.newBuilder().setDatabase(req.getReqCtx().getDatabase()).build()) // .addAllTables(req.getTables()) // .setSql(req.getSql()) // .build(); diff --git a/horaedb-protocol/src/main/java/org/apache/horaedb/RouterClient.java b/horaedb-protocol/src/main/java/org/apache/horaedb/RouterClient.java index 90b3022..29addc8 100644 --- a/horaedb-protocol/src/main/java/org/apache/horaedb/RouterClient.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/RouterClient.java @@ -18,11 +18,11 @@ import java.util.stream.Collectors; import org.apache.horaedb.models.RequestContext; -import io.ceresdb.proto.internal.Storage; import org.apache.horaedb.common.Display; import org.apache.horaedb.common.Endpoint; import org.apache.horaedb.common.Lifecycle; import org.apache.horaedb.common.util.*; +import org.apache.horaedb.proto.internal.Storage; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/horaedb-protocol/src/main/java/org/apache/horaedb/WriteClient.java b/horaedb-protocol/src/main/java/org/apache/horaedb/WriteClient.java index ea89432..93cacd3 100644 --- a/horaedb-protocol/src/main/java/org/apache/horaedb/WriteClient.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/WriteClient.java @@ -21,6 +21,7 @@ import org.apache.horaedb.common.Lifecycle; import org.apache.horaedb.common.VisibleForTest; import org.apache.horaedb.common.util.*; +import org.apache.horaedb.proto.internal.Storage; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -35,7 +36,6 @@ import org.apache.horaedb.models.WriteOk; import org.apache.horaedb.models.WriteRequest; import org.apache.horaedb.options.WriteOptions; -import io.ceresdb.proto.internal.Storage; import org.apache.horaedb.rpc.Context; import org.apache.horaedb.rpc.Observer; import org.apache.horaedb.util.StreamWriteBuf; diff --git a/horaedb-protocol/src/main/java/org/apache/horaedb/util/RpcServiceRegister.java b/horaedb-protocol/src/main/java/org/apache/horaedb/util/RpcServiceRegister.java index 208cd38..3c625c0 100644 --- a/horaedb-protocol/src/main/java/org/apache/horaedb/util/RpcServiceRegister.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/util/RpcServiceRegister.java @@ -3,7 +3,7 @@ */ package org.apache.horaedb.util; -import io.ceresdb.proto.internal.Storage; +import org.apache.horaedb.proto.internal.Storage; import org.apache.horaedb.rpc.MethodDescriptor; import org.apache.horaedb.rpc.RpcFactoryProvider; import org.apache.horaedb.common.OptKeys; diff --git a/horaedb-protocol/src/main/java/org/apache/horaedb/util/Utils.java b/horaedb-protocol/src/main/java/org/apache/horaedb/util/Utils.java index 300b92b..bf9b054 100644 --- a/horaedb-protocol/src/main/java/org/apache/horaedb/util/Utils.java +++ b/horaedb-protocol/src/main/java/org/apache/horaedb/util/Utils.java @@ -35,8 +35,8 @@ import org.apache.horaedb.models.Result; import org.apache.horaedb.models.Value; import org.apache.horaedb.models.WriteOk; -import io.ceresdb.proto.internal.Common; -import io.ceresdb.proto.internal.Storage; +import org.apache.horaedb.proto.internal.Common; +import org.apache.horaedb.proto.internal.Storage; import org.apache.horaedb.rpc.Observer; import org.apache.arrow.memory.RootAllocator; From 07b0750ae940c1708f3de6f806c9403dffd8db25 Mon Sep 17 00:00:00 2001 From: CooooolFrog Date: Fri, 29 Mar 2024 15:23:31 +0800 Subject: [PATCH 06/10] rename package --- .../src/test/java/org/apache/horaedb/QueryClientTest.java | 6 ++++-- .../src/test/java/org/apache/horaedb/WriteClientTest.java | 8 ++++---- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/horaedb-protocol/src/test/java/org/apache/horaedb/QueryClientTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/QueryClientTest.java index cb2e741..fa76658 100644 --- a/horaedb-protocol/src/test/java/org/apache/horaedb/QueryClientTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/QueryClientTest.java @@ -41,6 +41,8 @@ import org.apache.arrow.vector.VectorSchemaRoot; import org.apache.arrow.vector.ipc.ArrowStreamWriter; import org.apache.arrow.vector.types.pojo.Field; +import org.apache.horaedb.proto.internal.Common; +import org.apache.horaedb.proto.internal.Storage; import org.junit.After; import org.junit.Assert; import org.junit.Before; @@ -89,7 +91,7 @@ public void after() { @Test public void queryOkNoRouteTest() throws ExecutionException, InterruptedException, IOException { - final SqlQueryResponse resp = mockSimpleQueryResponse(1, false); + final Storage.SqlQueryResponse resp = mockSimpleQueryResponse(1, false); final Endpoint ep = Endpoint.of("127.0.0.1", 8081); Mockito.when(this.routerClient.invoke(Mockito.eq(ep), Mockito.any(), Mockito.any())) // @@ -385,7 +387,7 @@ private Storage.SqlQueryResponse mockAllTypeQueryResponse(int rowCount) throws I writer.writeBatch(); writer.close(); - ArrowPayload arrowPayload = Storage.ArrowPayload.newBuilder() + Storage.ArrowPayload arrowPayload = Storage.ArrowPayload.newBuilder() .setCompression(Storage.ArrowPayload.Compression.NONE) .addRecordBatches(ByteStringHelper.wrap(out.toByteArray())).build(); diff --git a/horaedb-protocol/src/test/java/org/apache/horaedb/WriteClientTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/WriteClientTest.java index 441643f..c0a9302 100644 --- a/horaedb-protocol/src/test/java/org/apache/horaedb/WriteClientTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/WriteClientTest.java @@ -18,12 +18,14 @@ import java.util.stream.Collectors; import java.util.stream.Stream; +import org.apache.horaedb.common.Endpoint; +import org.apache.horaedb.common.util.Clock; import org.apache.horaedb.models.Point; import org.apache.horaedb.models.RequestContext; import org.apache.horaedb.models.Value; import org.apache.horaedb.models.WriteRequest; -import io.ceresdb.proto.internal.Common; -import io.ceresdb.proto.internal.Storage; +import org.apache.horaedb.proto.internal.Common; +import org.apache.horaedb.proto.internal.Storage; import org.junit.After; import org.junit.Assert; import org.junit.Before; @@ -33,8 +35,6 @@ import org.mockito.Mockito; import org.mockito.runners.MockitoJUnitRunner; -import io.ceresdb.common.Endpoint; -import io.ceresdb.common.util.Clock; import org.apache.horaedb.models.Err; import org.apache.horaedb.models.Result; import org.apache.horaedb.models.WriteOk; From 41f0ffbcff36e217ec15ab6a74e628677be7e569 Mon Sep 17 00:00:00 2001 From: CooooolFrog Date: Fri, 29 Mar 2024 15:26:19 +0800 Subject: [PATCH 07/10] rename package --- .../src/test/java/org/apache/horaedb/models/PointTest.java | 5 +---- .../src/test/java/org/apache/horaedb/models/ResultTest.java | 2 -- .../src/test/java/org/apache/horaedb/util/TestUtil.java | 6 +++--- 3 files changed, 4 insertions(+), 9 deletions(-) diff --git a/horaedb-protocol/src/test/java/org/apache/horaedb/models/PointTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/models/PointTest.java index ebdf7e8..afcbc85 100644 --- a/horaedb-protocol/src/test/java/org/apache/horaedb/models/PointTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/models/PointTest.java @@ -3,13 +3,10 @@ */ package org.apache.horaedb.models; -import org.apache.horaedb.models.Point; -import org.apache.horaedb.models.Value; +import org.apache.horaedb.common.util.Clock; import org.junit.Assert; import org.junit.Test; -import io.ceresdb.common.util.Clock; - public class PointTest { @Test public void PointBuilderTest() { diff --git a/horaedb-protocol/src/test/java/org/apache/horaedb/models/ResultTest.java b/horaedb-protocol/src/test/java/org/apache/horaedb/models/ResultTest.java index 13e2d26..dfd5c7b 100644 --- a/horaedb-protocol/src/test/java/org/apache/horaedb/models/ResultTest.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/models/ResultTest.java @@ -6,8 +6,6 @@ import java.util.ArrayList; import java.util.List; -import org.apache.horaedb.models.*; -import org.apache.models.*; import org.junit.Assert; import org.junit.Test; diff --git a/horaedb-protocol/src/test/java/org/apache/horaedb/util/TestUtil.java b/horaedb-protocol/src/test/java/org/apache/horaedb/util/TestUtil.java index 2281e5e..6d20c48 100644 --- a/horaedb-protocol/src/test/java/org/apache/horaedb/util/TestUtil.java +++ b/horaedb-protocol/src/test/java/org/apache/horaedb/util/TestUtil.java @@ -9,12 +9,12 @@ import java.util.List; import java.util.Set; -import io.ceresdb.common.util.Clock; +import org.apache.horaedb.common.util.Clock; import org.apache.horaedb.models.Point; import org.apache.horaedb.models.Result; import org.apache.horaedb.models.Value; -import io.ceresdb.proto.internal.Common; -import io.ceresdb.proto.internal.Storage; +import org.apache.horaedb.proto.internal.Common; +import org.apache.horaedb.proto.internal.Storage; public class TestUtil { From 077fbb6d182438acff89bd1f61599f83513f2d8c Mon Sep 17 00:00:00 2001 From: CooooolFrog Date: Fri, 29 Mar 2024 15:29:14 +0800 Subject: [PATCH 08/10] rename package --- .../java/org/apache/horaedb/ReadmeTest.java | 69 +++++++------------ 1 file changed, 23 insertions(+), 46 deletions(-) diff --git a/horaedb-example/src/test/java/org/apache/horaedb/ReadmeTest.java b/horaedb-example/src/test/java/org/apache/horaedb/ReadmeTest.java index e6155f7..c563bc5 100644 --- a/horaedb-example/src/test/java/org/apache/horaedb/ReadmeTest.java +++ b/horaedb-example/src/test/java/org/apache/horaedb/ReadmeTest.java @@ -3,9 +3,7 @@ */ package org.apache.horaedb; -import io.ceresdb.models.*; import org.apache.horaedb.models.*; -import org.apache.models.*; import org.apache.horaedb.options.HoraeDBOptions; import org.apache.horaedb.util.StreamWriteBuf; @@ -25,15 +23,15 @@ public class ReadmeTest { @Ignore @Test public void readmeTest() throws ExecutionException, InterruptedException { - final HoraeDBOptions opts = HoraeDBOptions.newBuilder("127.0.0.1", 8831, RouteMode.DIRECT) // CeresDB default grpc port 8831 + final HoraeDBOptions opts = HoraeDBOptions.newBuilder("127.0.0.1", 8831, + RouteMode.DIRECT) // CeresDB default grpc port 8831 .database("public") // use database public // maximum retry times when write fails // (only some error codes will be retried, such as the routing table failure) .writeMaxRetries(1) // maximum retry times when read fails // (only some error codes will be retried, such as the routing table failure) - .readMaxRetries(1) - .build(); + .readMaxRetries(1).build(); final HoraeDBClient client = new HoraeDBClient(); if (!client.init(opts)) { @@ -41,13 +39,8 @@ public void readmeTest() throws ExecutionException, InterruptedException { } // Create table manually, creating table schema ahead of data ingestion is not required - String createTableSql = "CREATE TABLE IF NOT EXISTS machine_table(" + "ts TIMESTAMP NOT NULL," + // - "ts TIMESTAMP NOT NULL," + - "city STRING TAG NOT NULL," + - "ip STRING TAG NOT NULL," + - "cpu DOUBLE NULL," + - "mem DOUBLE NULL," + - "TIMESTAMP KEY(ts)" + // timestamp column must be specified + String createTableSql = "CREATE TABLE IF NOT EXISTS machine_table(" + "ts TIMESTAMP NOT NULL," + // + "ts TIMESTAMP NOT NULL," + "city STRING TAG NOT NULL," + "ip STRING TAG NOT NULL," + "cpu DOUBLE NULL," + "mem DOUBLE NULL," + "TIMESTAMP KEY(ts)" + // timestamp column must be specified ") ENGINE=Analytic"; Result createResult = client.sqlQuery(new SqlQueryRequest(createTableSql)).get(); @@ -56,27 +49,15 @@ public void readmeTest() throws ExecutionException, InterruptedException { } final long timestamp = System.currentTimeMillis(); - Point point1 = Point.newPointBuilder("machine_table") - .setTimestamp(timestamp) - .addTag("city", "Singapore") - .addTag("ip", "10.0.0.1") - .addField("cpu", Value.withDouble(0.23)) - .addField("mem", Value.withDouble(0.55)) - .build(); - Point point2 = Point.newPointBuilder("machine_table") - .setTimestamp(timestamp+1000) - .addTag("city", "Singapore") - .addTag("ip", "10.0.0.1") - .addField("cpu", Value.withDouble(0.25)) - .addField("mem", Value.withDouble(0.56)) - .build(); - Point point3 = Point.newPointBuilder("machine_table") - .setTimestamp(timestamp+1000) - .addTag("city", "Shanghai") - .addTag("ip", "10.0.0.2") - .addField("cpu", Value.withDouble(0.21)) - .addField("mem", Value.withDouble(0.52)) - .build(); + Point point1 = Point.newPointBuilder("machine_table").setTimestamp(timestamp).addTag("city", "Singapore") + .addTag("ip", "10.0.0.1").addField("cpu", Value.withDouble(0.23)) + .addField("mem", Value.withDouble(0.55)).build(); + Point point2 = Point.newPointBuilder("machine_table").setTimestamp(timestamp + 1000).addTag("city", "Singapore") + .addTag("ip", "10.0.0.1").addField("cpu", Value.withDouble(0.25)) + .addField("mem", Value.withDouble(0.56)).build(); + Point point3 = Point.newPointBuilder("machine_table").setTimestamp(timestamp + 1000).addTag("city", "Shanghai") + .addTag("ip", "10.0.0.2").addField("cpu", Value.withDouble(0.21)) + .addField("mem", Value.withDouble(0.52)).build(); List pointList = Arrays.asList(point1, point2, point3); final CompletableFuture> wf = client.write(new WriteRequest(pointList)); @@ -89,10 +70,9 @@ public void readmeTest() throws ExecutionException, InterruptedException { Assert.assertEquals(0, writeResult.getOk().getFailed()); Assert.assertEquals(0, writeResult.mapOr(-1, WriteOk::getFailed).intValue()); - final SqlQueryRequest queryRequest = SqlQueryRequest.newBuilder() - .forTables("machine_table") // table name is optional. If not provided, SQL parser will parse the `sql` to get the table name and do the routing automaticly - .sql("select * from machine_table where ts >= %d", timestamp) - .build(); + final SqlQueryRequest queryRequest = SqlQueryRequest.newBuilder().forTables( + "machine_table") // table name is optional. If not provided, SQL parser will parse the `sql` to get the table name and do the routing automaticly + .sql("select * from machine_table where ts >= %d", timestamp).build(); final CompletableFuture> qf = client.sqlQuery(queryRequest); // here the `future.get` is just for demonstration, a better async programming practice would be using the CompletableFuture API final Result queryResult = qf.get(); @@ -111,21 +91,18 @@ public void readmeTest() throws ExecutionException, InterruptedException { long t = start; final StreamWriteBuf writeBuf = client.streamWrite("machine_table"); for (int i = 0; i < 1000; i++) { - final Point streamData = Point.newPointBuilder("machine_table") - .setTimestamp(t) - .addTag("city", "Beijing") - .addTag("ip", "10.0.0.3") - .addField("cpu", Value.withDouble(0.42)) - .addField("mem", Value.withDouble(0.67)) - .build(); + final Point streamData = Point.newPointBuilder("machine_table").setTimestamp(t).addTag("city", "Beijing") + .addTag("ip", "10.0.0.3").addField("cpu", Value.withDouble(0.42)) + .addField("mem", Value.withDouble(0.67)).build(); writeBuf.writeAndFlush(Collections.singletonList(streamData)); - t = t+1; + t = t + 1; } final CompletableFuture writeOk = writeBuf.completed(); Assert.assertEquals(1000, writeOk.join().getSuccess()); final SqlQueryRequest streamQuerySql = SqlQueryRequest.newBuilder() - .sql("select * from %s where city = '%s' and ts >= %d and ts < %d", "machine_table", "Beijing", start, t).build(); + .sql("select * from %s where city = '%s' and ts >= %d and ts < %d", "machine_table", "Beijing", start, + t).build(); final Result streamQueryResult = client.sqlQuery(streamQuerySql).get(); Assert.assertTrue(streamQueryResult.isOk()); Assert.assertEquals(1000, streamQueryResult.getOk().getRowCount()); From f7c2923d6234fd6629f632fdb99db89a3772c008 Mon Sep 17 00:00:00 2001 From: CooooolFrog Date: Fri, 29 Mar 2024 15:48:21 +0800 Subject: [PATCH 09/10] rename package --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 4379c42..079b913 100644 --- a/pom.xml +++ b/pom.xml @@ -71,7 +71,7 @@ 2.8.0 UTF-8 2.0.0 - 3.21.7 + 3.25.1 1.7.21 From c370e8b4a251850f1f12ff708c897d6876a68001 Mon Sep 17 00:00:00 2001 From: CooooolFrog Date: Mon, 1 Apr 2024 15:17:53 +0800 Subject: [PATCH 10/10] rename package --- ...o.horaedb.rpc.RpcFactory => org.apache.horaedb.rpc.RpcFactory} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename horaedb-grpc/src/main/resources/META-INF/services/{io.horaedb.rpc.RpcFactory => org.apache.horaedb.rpc.RpcFactory} (100%) diff --git a/horaedb-grpc/src/main/resources/META-INF/services/io.horaedb.rpc.RpcFactory b/horaedb-grpc/src/main/resources/META-INF/services/org.apache.horaedb.rpc.RpcFactory similarity index 100% rename from horaedb-grpc/src/main/resources/META-INF/services/io.horaedb.rpc.RpcFactory rename to horaedb-grpc/src/main/resources/META-INF/services/org.apache.horaedb.rpc.RpcFactory