Commit Graph

3863 Commits

Author SHA1 Message Date
fa7cd94dca [typo](docs) fix typos in multi-tenant.md(zh-CN) (#8032)
1. 3各 -> 3个
2. add right quote to `show proc "/cluster_balance/`
2022-02-14 09:30:52 +08:00
a390b766d4 [Improvement] BE could print log foreground when not use daemon mode (#8031) 2022-02-14 09:30:12 +08:00
1ff0df9f54 [refactor] Remove old schema change rollup backend decommission code (#8030) 2022-02-14 09:29:50 +08:00
aea3e4e59b [refactor] Remove version hash from BE and related test in BE (#8027) 2022-02-14 09:29:27 +08:00
Pxl
64f71ddae3 [fix](be-ut) fix segmentation fault at unaligned address int128 (#8021) 2022-02-14 09:29:05 +08:00
969cd0c391 [fix](fe-ui)Solve the problem that the web UI playground preview table data, the field is the wrong problem (#8016)
Solve the problem that the web UI playground preview table data, the field is the wrong problem
2022-02-14 09:28:32 +08:00
8d7a0d9747 [docs](routine-load)Update routine-load-manual.md (#8006) 2022-02-14 09:28:08 +08:00
18e2071278 [fix](be-unit-test) Fix memory problems in agg_test.cpp. (#8019) 2022-02-14 09:23:40 +08:00
7d7e3a39f5 [refactor] Remove snapshot converter and unused Protobuf Definitions (#8026)
1. remove snapshot converter
2. remove unused protobuf definitions
3. move some macro as const variables
2022-02-12 16:06:04 +08:00
1278796e51 [fix](backup) fix backup job finished with error message issue (#7997) 2022-02-12 16:01:05 +08:00
Pxl
b26e7e3c28 [feature](function)(vec) support locate function (#7988)
* support function locate in vectorized engine

* add ut and fix some bug
2022-02-12 16:00:37 +08:00
Pxl
64fb8dab39 [feature] (function)(vec) support pmod function (#7977) 2022-02-12 16:00:11 +08:00
6934534155 [fix](demo) scala.Function1 used in java about compiling error:apply$mcVJ$sp(long)
Fix MyForeachPartitionFunction.java:xxx:xxx
java: org.apache.doris.demo.spark.demo.hdfs.MyForeachPartitionFunction is not abstract and does not override abstract method apply$mcVJ$sp(long) in scala.Function1
2022-02-12 15:59:41 +08:00
ee26cd2d07 [fix] (grouping set) fix Unexpected exception: bitIndex < 0: -1 (#7989) 2022-02-12 15:18:08 +08:00
7a73645eee [refactor] remove some unused code (#8022) 2022-02-12 15:17:28 +08:00
6b9cb49779 [Refactor] remove plugin folder in be since it is useless and it need fPIC tag to build and we will remove all fPIC tag in the future (#8008) 2022-02-12 12:28:14 +08:00
76483038f4 [docs](config) correct mysql jdbc auto-retry url format (#8009)
Correct format of mysql jdbc failover auto-retry url.
2022-02-11 22:07:02 +08:00
0b1b937dec [docs] Fixed typo in CREATE TABLE (#8001) 2022-02-11 18:55:25 +08:00
789472a87d [build] change docker image add perf tools and simdjson (#8012) 2022-02-11 18:54:09 +08:00
Pxl
a4e7c76336 [Enhancement] use std::search to replace custom search (#7999) 2022-02-11 10:47:58 +08:00
5bd9fdb8c1 [Improvement] print log foreground if not use --daemon to start fe (#7995) 2022-02-10 17:19:39 +08:00
0b2b328c7b [doc] remove useless word 'To' in materialized view (#7985) 2022-02-10 15:08:58 +08:00
690b3b7283 [doc] Translate the Chinese comments (#7982)
Translate the Chinese comments of file /be/src/common/config.h
2022-02-10 15:08:45 +08:00
92b690f3eb [feature-wip](iceberg) Step2: add table creation strict mode and support refresh iceberg table or db. (#7981)
1. Add `iceberg_table_creation_strict_mode` in `fe.conf` to control iceberg external table creation, when data type  is not supported in Doris.
2. Add `REFRESH` syntax to synchronize the Iceberg table and database.
3. Support create Iceberg external table with specific column definitions.
2022-02-10 15:08:04 +08:00
2e27827c73 [doc] Added http interface return example to obtain the specified table structure information (#7955)
1. Added http interface return example in table-schema-action.md.
2. Correct typos in the document in error.md.
3. Modify the content of the code comments in the text_converter.hpp file.
2022-02-10 15:07:28 +08:00
c3b010b277 [refactor] Remove flink/spark connectors (#8004)
As we discussed in dev@doris[1]
Flink/Spark connectors has been moved to new repo: https://github.com/apache/incubator-doris-connectors

[1] https://lists.apache.org/thread/hnb7bf0l6y6rzb9pr6lhxz3jjoo04skl
2022-02-10 15:00:36 +08:00
df2c7563b0 [improvement](log) Add query id info in error log for easy tracking (#7975)
This PR #7936 change some FE log level to debug, so that when error happens, it is not easy to find out
which SQL cause the error.
So I add stmt id and query id in error log, so that user can use these identifiers to find SQL in fe.audit.log
2022-02-09 13:07:28 +08:00
eeaf6725fd (fix)[lateral-view] Solve the problem of not recognizing the lateral view on the view (#7968)
If the tableRef behind represents a CTE or a view,
the tableRef will be reset during semantic parsing.
The new tableRef needs to inherit the lateral view property of the origin tableRef
to ensure that the lateral view is not accidentally lost during parsing.
2022-02-09 13:07:03 +08:00
5029ef46c9 [fix] fix ltrim result may incorrect in some case (#7963)
fix ltrim result may incorrect in some case
according to https://gcc.gnu.org/onlinedocs/gcc/Other-Builtins.html
Built-in Function: int __builtin_cl/tz (unsigned int x)
If x is 0, the result is undefined.
So we handle the case of 0 separately

this function return different between gcc and clang when x is 0
2022-02-09 13:06:37 +08:00
db20e1f323 [refactor](storage) VGenericIterator to reuse Schema (#7858)
1. reuse Schema to avoid copying, because clone Schema will generate a lot of sub Field object
2. call interface provided by Block to reduce code lines
2022-02-09 13:06:03 +08:00
Pxl
0553ce2944 [feature](vectorization) support function topn && remove some unused code (#7793) 2022-02-09 13:05:31 +08:00
3048ce8a4f [improvement][refactor](vec) Refactor serde of vec block and using brpc attachment (#7939)
This PR mainly changes:

1. Change the define of PBlock

    The new PBlock consists of a set of PColumnMeta and a binary buffer.
    The PColumnMeta records the metadata information of all columns in the Block,
    while the buffer stores the serialized binary data of all columns.
    
2. Refactor the serialize/deserialize method of data type

    Rewrite the `serialize()/deserialize()` of IDataType. And also add
    a new method `get_uncompressed_serialized_bytes()` to get the total length
    of uncompressed serialized data of a column.
    
3. Rewrite the serialize/deserialize method of Block

    Now, when serializing a Block to PBlock, it will first get the total length
    of uncompressed serialized data of all columns in this Block, and then allocate
    the memory to write the serialized data to the buffer.
    
4. Use brpc attachment to transmit the serialized column data
2022-02-08 11:11:42 +08:00
ef233701b3 [feature](vec)(load) Support vtablet sink to enable insert into by using vec query engine (#7957)
Support vtablet sink to enable insert into query in vec query engine
2022-02-08 11:04:09 +08:00
505acae931 [fix](vectorization) make sure the mem address use in agg is align in proper way before use (#7960) 2022-02-08 10:05:03 +08:00
ecbd4bcae0 [fix](catalog) Fix bug that The MetaObject lock design of fe would cause some problems with consistent meta when catalog do replay operation (#6650)
1. If the table or db has been dropped,we will get write lock failed or just skip or throw exception,
2. and if we recover table or db, we must ensure that unmark dropped state after writing recover journal. 
3. db.dropTable corresponds to db.createTable, I don't move table.markDropped method to the db.dropTable,
    for that all meta added to db or catalog must after writing recover journal, so we must invoke markDropped
    and unmarkDropped method outside the dropTable and createTable method.
2022-02-08 10:01:52 +08:00
8fcae0f0f4 [refactor] Modify the content of code comments (#7950)
Co-authored-by: caol <caol@shuhaisc.com>
2022-02-08 09:55:46 +08:00
c6defb2faf [improvement](query) Improve fe high concurrent query performance (#7936) 2022-02-08 09:54:59 +08:00
4c22f3c6e1 (docs) Improve Flink Connector documentation description (#7946) 2022-02-08 09:50:38 +08:00
cc9cfebbff (build) teach build.sh --clean work correctly (#7949)
CMAKE_BUILD_DIR is set while building be. "build.sh --clean" just
cleans and exits, however clean_be does not works without
CMAKE_BUILD_DIR set. This patch set CMAKE_BUILD_DIR in clean_be
to teach build.sh --clean work correctly.
2022-02-08 09:49:39 +08:00
f0a3c852f1 [Docs] fix typo (#7964) 2022-02-08 09:46:31 +08:00
ed9ecb8fa8 [docs] Update README (#7965)
1. Add slack channel
2. Modify some links
2022-02-08 09:46:04 +08:00
f8d086d87f [feature](rpc) (experimental)Support implement UDF through GRPC protocol. (#7519)
Support implement UDF through GRPC protocol. This brings several benefits: 
1. The udf implementation language is not limited to c++, users can use any familiar language to implement udf
2. UDF is decoupled from Doris, udf will not cause doris coredump, udf computing resources are separated from doris, and doris services are not affected

But RPC's UDF has a fixed overhead, so its performance is much slower than C++ UDF, especially when the amount of data is large.

Create function like

```
CREATE FUNCTION rpc_add(INT, INT) RETURNS INT PROPERTIES (
  "SYMBOL"="add_int",
  "OBJECT_FILE"="127.0.0.1:9999",
  "TYPE"="RPC"
);
```
Function service need to implement `check_fn` and `fn_call` methods
Note:
THIS IS AN EXPERIMENTAL FEATURE, THE INTERFACE AND DATA STRUCTURE MAY BE CHANGED IN FUTURE !!!
2022-02-08 09:25:09 +08:00
03f5fc2b0b [chore] Make build setting BUILD_META_TOOL optional. (#7948) 2022-02-07 16:06:42 +08:00
8207883319 [style] Translate Chinese to English in PaloBrokerService.thrift (#7941)
Translate Chinese to English in PaloBrokerService.thrift
2022-02-06 08:35:24 +08:00
e7103bfd08 [chore] Set the full path of make program to CMake (#7909) 2022-02-06 08:34:08 +08:00
2ffd7fc80a [fix](load priv) modify error msg of checking table priv (#7817) 2022-02-06 08:33:41 +08:00
9eb1d1df27 [fix](vec) fix block mem use-after-free bug in agg table read (#7944) 2022-02-06 00:34:38 +08:00
51abaa89f3 [fix](vec) Fix some bugs about vec engine (#7884)
1. mem leak in vcollector iter
2. query slow in agg table limit 10
3. query slow in SSB q4,q5,q6
2022-02-03 19:21:17 +08:00
c0e59e59aa [fix][refactor] fix bugs and refactor some code by lint (#7871)
1. Fix some `passedByValue` issues.
2. Fix some `dereferenceBeforeCheck` issues.
3. Fix some `uninitMemberVar` issues.
4. Fix some iterator `eraseDereference` issues.
5. Fix compile issue introduced from #7923 #7905 #7848
2022-02-01 14:31:14 +08:00
82f421a019 [fix](brpc-attachment) Fix bug that may cause BE crash when enable transfer_data_by_brpc_attachment (#7921)
This PR mainly changes:

1. Fix bug when enable `transfer_data_by_brpc_attachment`

    In `data_stream_sender`, we will send a serialized PRowBatch data to multiple Channels.
    And if `transfer_data_by_brpc_attachment` is enabled, we will mistakenly clear the data in PRowBatch
    after sending PRowBatch to the first Channel.
    As a result, the following Channel cannot receive the correct data, causing an error.

    So I use a separate buffer instead of `tuple_data` in PRowBatch to store the serialized data
    and reuse it in multiple channels.

2. Fix bug that the the offset in serialized row batch may overflow

    Use int64 to replace int32 offset. And for compatibility, add a new field `new_tuple_offsets` in PRowBatch.
2022-02-01 08:51:16 +08:00