Commit Graph

147 Commits

Author SHA1 Message Date
d372b04e42 Revert "Add cpu and io indicates to audit log (#513)" (#520)
This reverts commit 5192e2f010308eefffa5271b0bdc947dfd9168ae.
2019-01-10 12:44:09 +08:00
5192e2f010 Add cpu and io indicates to audit log (#513)
Record query consumption into fe audit log. Its basic mode of work is as follows, one of instance of parent plan is responsible for accumulating sub plan's consumption and send to it's parent, BE coordinator will get total consumption because it's a single instance.
2019-01-09 22:28:20 +08:00
92b138121b Support io and cpu indicates for current query (#497)
Help to locate big query when system overload, by checking consumptions of running parts of current all queries or specified one query. Its basic mode of work is as follows: firstly trigger BE to report RuntimeProfiles, and wait a moment. secondly caculate consumptions with RuntimeProfiles reported by BE. The consumptions supported by it are the cost of running ExecNode in query when call it.
2019-01-08 10:59:42 +08:00
a51ce03595 Enhance the usability of Load operation (#490)
1. Add broker load error hub
A broker load error hub will collect error messages in load process and saves them as a file to the specified remote storage via broker. In case that in broker/min/streaming load process, user may not be able to access the error log file in Backend directly.
We also add a new header option: 'enable_hub' in streaming load request, and default is false. Because if we enable the broker load error hub, it will significantly slow down the processing speed of streaming load, due to the visit of remote storage via broker. So use can disable the error load hub using this header option, to avoid slowing down the load speed.

2. Show load error logs by using SHOW LOAD WARNINGS stmt
We also provide a more easy way to get load error logs. We implement 'SHOW LOAD WARNINGS ON 'url'' stmt to show load error logs directly. The 'url' in stmt is provided in 'SHOW  LOAD' stmt.
eg:
show load warnings on "http://192.168.1.1:8040/api/_load_error_log?file=__shard_2/error_log_xxx";

3. Support now() function in broker load
User can mapping a column to now() in broker load stmt, which means this column will be filled with time when the ETL started.

4. Support more types of wildcard in broker load
Currently, we only support wildcard '*' to match the file names. wildcard like '/path/to/20190[1-4]*' is not support.
2019-01-03 19:07:27 +08:00
ff7d3e5878 Unify the print method of TUniqueId (#487) 2018-12-29 16:22:38 +08:00
7380483394 Support UDF (#468)
Now, user can create UDF with CREATE FUNCTION statement. Doris only
support UDF in this version, it will support UDAF/UDTF later.
2018-12-29 09:13:04 +08:00
46c70a16b1 Add more detail logs to debug streaming load (#484)
* Add more detail logs to debug streaming load

* fix bugs

* fix bugs
2018-12-28 19:42:09 +08:00
f88970a454 Fix get_tablet_stat data race and base_compaction deletion check bug. (#477)
1. It is wrong to use _tablet_map_lock to protect critical region in get_tablet_stat function.
   Add a _tablet_stat_mutex to protect critical region.
2. When base_compaction finished, it checks where there is version missed in tablet.
   If answer is yes, BE will be cored dump. Now check tablet's integrity in advance.
2018-12-27 19:50:08 +08:00
c74c915441 Fix license issue of gutil (#471) 2018-12-27 13:53:27 +08:00
7d7934112f Fix fe ut (#469)
1. Fix StreamLoadScanNodeTest
2. Revert the fix of decimal value with scientific notation, this still need to fix it later
2018-12-25 20:07:03 +08:00
053bf62460 Change WriteLock to ReadLock when get_tablet_stat (#466) 2018-12-25 16:10:01 +08:00
b037466d56 Get rid of choosing one tablet by compaction (#433)
1. Get rid of choosing one tablet by compaction.
2. Change PREFER_READER to PREFER_WRITING from _tablet_map_lock.
3. Change license of murmur_hash
2018-12-24 16:55:39 +08:00
5b1e3d3f40 Optimize backup & restore process (#460)
1. Print broker address for debug.
2. Do not letting backup job cancelled if it already in state UPLOAD_INFO.
3. Cancel task on Backends when job is cancelled.
4. Show detail progress of backup and restore job.
5. Make 'show snapshot' result more readable.
6. Change upload and download thread num of backup and restore in Backend to 1.
2018-12-24 16:49:16 +08:00
945aaf8923 Fix core when release UDF cache entry (#462) 2018-12-24 14:34:31 +08:00
f1db289934 Fix compile error (#461) 2018-12-24 10:26:03 +08:00
90d71508ff Add UserFunctionCache to cache UDF's library (#453)
* Add UserFunctionCache to cache UDF's library

This patch replace LibCache with UserFunctionCache. LibCache use HDFS
URL to identify a UDF's Library, and when BE process restart all of
downloaded library should be loaded another time. We use function id
corresponding to a library, and when process restart, all downloaded
libraries can be loaded without another downloading.

* update
2018-12-21 22:07:21 +08:00
0341ffde67 Revert commit 'Add log to detect empty load file' (#447)
Looks like we still need to send push task without file
to Backend, or load job will fail.
Fix it later.
2018-12-19 12:29:12 +08:00
5a6e5cfd07 Add log to detect empty load file (#445)
We find that a load file may not be generated for rollup tablet,
add a log to observe.
2018-12-18 12:44:36 +08:00
e99468c387 Add HttpClient class (#441)
Replace FileDownloader with HttpClient, this patch change clone_copy and
pusher's download.
2018-12-18 09:55:11 +08:00
e177c23787 Update the increased frequency of priority for remaining tasks in BlockingPriorityQueue (#434) 2018-12-17 21:05:57 +08:00
dc4cbab11e Report error when loading decimal value with scientific notation (#428)
Currently we do not support scientific notation of decimal value.
2018-12-17 21:04:18 +08:00
d291068b37 Fix memory_copy core dump in aggregate (#440) 2018-12-17 19:02:49 +08:00
0bedd336b5 Support add new key column for LinkedSchemaChange (#432)
* Support add key column for LinkedSchemaChange

* Move ColumnMapping to single file
2018-12-14 20:25:25 +08:00
74cc5c5404 Write summary line in load error file anyway (#425)
Summary line should be wrote in spite of the limit error number
2018-12-13 12:35:19 +08:00
850150896a Fix bug that load error log is empty sometimes (#424)
_num_print_error_rows is not initialized
2018-12-13 11:23:32 +08:00
371e3d18ca Fix base compaction bug. (#421)
Base compaction may choose tablet which has missed versions now.
After compaction, it will failed to check tablet integrity by versions and cored dump.
Ignore this tablet when find tablet to base_compaction.
2018-12-12 20:44:32 +08:00
e2bb86cf78 Add Md5Digest to util (#420) 2018-12-12 20:06:35 +08:00
842e943f56 Fix compaction and ingestion core (#417)
Error occurs when reading data by compaction and ingestion.
Under the circumstance, the two operation should stop and return error.
2018-12-12 11:30:06 +08:00
5634d13dd2 Release push_lock when schema change failed (#407)
Release push_lock when schema change failed
2018-12-10 18:39:19 +08:00
530bdec020 Fix bug that null value will be loaded to non-nullable column (#401)
* Fix bug that null value will be loaded to non-nullable column

* Optimize performance
2018-12-06 19:55:55 +08:00
e913e45343 Fix bug that null value will be loaded to non-nullable column (#397) 2018-12-06 10:09:34 +08:00
6b4049e21c Unify Slice code path (#380) 2018-12-03 18:11:47 +08:00
ff95f23615 Remove OLAP_LOG_DEBUG AND OLAP_LOG_TRACE log format (#378)
Use VLOG(3) and VLOG(10) instead
2018-12-03 10:08:21 +08:00
5dea8bd3e6 Remove OLAP_LOG_FATAL log format. Use LOG(FATAL) instead (#376) 2018-12-01 19:26:08 +08:00
3d324e38ea Remove OLAP_LOG_INFO log format. Use LOG(INFO) instead (#372) 2018-11-30 20:59:40 +08:00
49302955c8 Revert "Remove OLAP_LOG_INFO log format. Use LOG(INFO) instead (#370)" (#371)
This reverts commit a816925776de06dc7503ea7429802cad9042d0e4.
2018-11-30 20:56:51 +08:00
a816925776 Remove OLAP_LOG_INFO log format. Use LOG(INFO) instead (#370)
* Remove unused row-oriented format flags

* Remove unused row-oriented format flags

* Remove OLAP_LOG_INFO log format. Use LOG(INFO) instead
2018-11-30 20:36:58 +08:00
85d0996b35 Rename Rowset to SegmentGroup (#364)
* Rename Rowset to SegmentGroup

* Modify protobuf related rowset to SegmentGroup
2018-11-29 17:30:41 +08:00
aa27d0e056 Fix snapshot's making header bug (#362) 2018-11-28 18:58:21 +08:00
477b6b3d2a Remove unused row-oriented format flags (#357) 2018-11-27 16:34:22 +08:00
dedfccfaf5 Optimize the publish logic of streaming load (#350)
1. Only collect all error replicas if publish task is timeout.
2. Add 2 metrics to monitor the success of failure of txn.
3. Change publish timeout to Config.load_straggler_wait_second
2018-11-26 19:01:50 +08:00
7ac011571f Improve the Backend's disk info report performance (#349)
1. Use the data size save in tablet's header to calculate the disk used capacity.
2. Decrease the default interval of disk and tablet report, from 10 min to 1 min.
2018-11-26 13:42:58 +08:00
33873f2446 Fix wrong query result when column value is Null (#344) 2018-11-26 13:36:23 +08:00
be6e9c393d Fix bug of using symbolic link dir as storage path (#340)
* Fix bug of #307

There is a bug to use symbolic link directory as storage root path.
It is a problem that whether the path is canonical

In DownloadAction, checking fails by comparing canonical path with non-canonical path.
So fix the bug by convert all path to canonical path before comparison
2018-11-23 10:12:26 +08:00
8fbc043f93 Change ByteBuffer to StorageByteBuffer in olap/byte_buffer.h (#341)
Class definition of ByteBuffer duplicates between olap/byte_buffer.h and util/byte_buffer.h.
All of the two classes has a function names as remaining().
Some place which want to call remaining() of util/byte_buffer.h is linked to the other remaining() function of olap/byte_buffer.h
2018-11-22 23:18:33 +08:00
cec1b971f6 Add special add_column_statistics method for linked_schema_change (#337) 2018-11-22 15:39:00 +08:00
fbde6a8636 Support for custom build toolchains (#330)
* Support for custom build toolchains

ISSUE #297

Locate the header file path of DORIS_GCC_HOME, add them to the CPLUS_INCLUDE_PATH environment variable.
So clang can find it.

* Compatible with custom toolchain for clang

ISSUE #297

1. Find default header file paths of DORIS_GCC_HOME and set as enviroment variable CLANG_COMPATIBLE_FLAGS.
2. Explicitly add these paths to CLANG_INCLUDE_FLAGS.
2018-11-21 15:58:12 +08:00
9a2ad18428 Add path info of replica in catalog (#327)
Add path info of replica in catalog

Also fix a bug that when calling check_none_row_oriented_table,
store is null, it cannot be used to create table.
Instead, OLAPHeader can be used to get storage type information.
2018-11-19 17:42:46 +08:00
fec3c58655 Change log verbose level to vlog(3) (#325)
* Transform row-oriented table to columnar-oriented table

* Transform row-oriented table to columnar-oriented table

* change log verbose level
2018-11-16 17:17:39 +08:00
1ba8a4ee4e Transform row-oriented table to columnar-oriented table (#311) 2018-11-16 16:03:56 +08:00