Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1370 commits
Select commit Hold shift + click to select a range
ede5696
fix: fix delete dump file while still in use (#2377)
wangshao1 Feb 2, 2024
b6448c8
fix keyspace's result wrong (#2369)
Mixficsol Feb 2, 2024
2ad20e6
fix: update 'info replication command' output format about db which a…
chengyu-l Feb 2, 2024
3318a08
unstable->3.5 (#2396)
chejinge Feb 7, 2024
b4dc361
unstable->3.5 (#2397)
chejinge Feb 7, 2024
bb951ee
Update pika_migrate_thread.cc (#2415)
chejinge Feb 23, 2024
dbee624
fix lock
chejinge Feb 26, 2024
3fb8f9f
fix lock
brother-jin Feb 27, 2024
3e0245a
Update pika_version.h (#2443)
chejinge Mar 4, 2024
70a136a
fix: ACL user authentication errors
lqxhub Mar 5, 2024
10078a2
add rename command (#2462)
Mixficsol Mar 7, 2024
a2d559d
fix: Fix the problem of possible slave_key conflict (#2431)
happy-v587 Feb 29, 2024
8cccc2d
feat: pika supports kubeblocks component definition api (#2411)
Feb 29, 2024
869dda7
feat: support dynamic set max-conn-rbuf-size (#2434)
happy-v587 Mar 2, 2024
cdca7f3
fix ci replication go test failed problem (#2435)
Mixficsol Mar 2, 2024
e960ffb
fix not syncing (#2430)
baixin01 Mar 3, 2024
6838609
Fix the initial authentication status of the ACL user and the ACL per…
lqxhub Mar 5, 2024
0a66049
fix: return kErr status when Master handle MetaRsync reqeust if db is…
chengyu-l Mar 6, 2024
9dbb98e
fix: after full synchronization fails, full synchronization will be s…
chengyu-l Mar 6, 2024
232fd5d
fix: linux arm64 spelling mistake in Makefile of pika_exporter(#2456)…
chengyu-l Mar 6, 2024
6764d63
add tcl go test (#2464)
Mixficsol Mar 7, 2024
96295f5
fix: acl forward compatible (#2459)
dingxiaoshuai123 Mar 8, 2024
fd4222e
Integration tests differentiate between cached and non-cached (#2467)
luky116 Mar 8, 2024
a014158
feat:add issue translation robot (#2478)
lqxhub Mar 9, 2024
255447b
fix: support removing pika instance from codis dashboard before pod s…
chengyu-l Mar 9, 2024
567f027
fix: support saving pika config to hostpath (#2476)
chengyu-l Mar 9, 2024
2df638d
fix: no namespace in configmap, so remove the namespace (#2474)
chengyu-l Mar 9, 2024
b78148d
fix: move Dockerfile and build_docker.sh into docker subdirectory (#2…
chengyu-l Mar 9, 2024
e11ccfd
feat: support building pika_exporter docker image (#2451)
chengyu-l Mar 11, 2024
c2aa188
add rename-command go test (#2468)
Mixficsol Mar 11, 2024
5e67751
ci: cleanup code (#2479)
baerwang Mar 11, 2024
7669070
feat: support deploying pika_exporter components using kubeblocks (#2…
chengyu-l Mar 11, 2024
49fc364
fix: fix github action CI failure (#2491)
luky116 Mar 12, 2024
01a4f12
test: add replication-test-go (#2496)
Mixficsol Mar 12, 2024
6df8feb
feat: add tcl test (#2497)
Mixficsol Mar 12, 2024
4c2c17e
test: add acl and userBlackList test (#2495)
luky116 Mar 12, 2024
b3f095d
fix:dbsize caculate error (#2494)
chejinge Mar 13, 2024
616b716
fix:Binlog is written repeatedly && not delete cache (#2485)
chejinge Mar 13, 2024
ff554c4
feat:add multi key slot migrate (#2486)
chejinge Mar 13, 2024
75c8f13
feat:add namespace for kubeblocks pika cluster helm chart (#2480)
Y-Rookie Mar 13, 2024
9d11eb0
test: add codis integration test (#2502)
luky116 Mar 14, 2024
dee27a5
delete unsed log
Mar 14, 2024
7ca0572
fix lock bug (#4)
Mixficsol Mar 14, 2024
6bf4460
fix Eventually timeout
Mar 14, 2024
9c4e3f2
add timeout param
Mar 14, 2024
ff5cae0
fix:delete cache log
brother-jin Mar 14, 2024
0f078e2
fix lock (#5)
Mixficsol Mar 15, 2024
8f40ef8
temp remove some intergration test for bugs
Mar 17, 2024
017f892
fix: replace del of flushdb (#7)
Mixficsol Mar 18, 2024
b4b012e
fix: fix dead lock bug (#2529)
luky116 Mar 19, 2024
d720455
fix: added some disable command additions to the rename-command (#2540)
Mixficsol Mar 21, 2024
2b2b77f
unstable
brother-jin Mar 22, 2024
ef48441
fix:353 changelog (#2544)
chejinge Mar 22, 2024
388f3cc
fix:some conf load error (#2561)
chejinge Apr 3, 2024
aa628e3
fix:MoveConnOut(it->second[i]) will cause CloseFd(it->second[i]) to g…
chejinge Mar 22, 2024
c723ade
fix: spop binlog , rewritten as srem (#2541)
chenbt-hz Mar 22, 2024
d20502c
fix: modify the function name from "GetFlushDname" to "GetFlushDBname…
euvre Mar 27, 2024
2082212
feat: stat disk usage in bg thread (#2554)
wangshao1 Mar 28, 2024
901269d
Update CMakeLists.txt (#2556)
euvre Mar 28, 2024
095e7bf
fix: flushdb and flushall bug (#2533)
Mixficsol Mar 29, 2024
3a4fbe4
remove pika operator (#2405)
machinly Feb 27, 2024
f9aebf3
Revert "fix version compare error in ZSetsScoreKeyComparatorImpl (#23…
wangshao1 Apr 8, 2024
47063c5
feat:add slotmigrate test (#2576)
chejinge Apr 7, 2024
f36693e
fix:compact dead lock (#2581)
chejinge Apr 7, 2024
713ecee
fix:info all slow when call info keyspace 1 (#2584)
chejinge Apr 8, 2024
ebc89c5
fix:change cache-model to cache-mode (#2585)
chejinge Apr 9, 2024
dba10f8
fix:tnx failed some times (#2586)
chejinge Apr 10, 2024
4a2e0e4
change deafult thread num (#2590)
chejinge Apr 10, 2024
399f106
fix:Revise the value check for max-rsync-parallel-num to prevent a co…
cheniujh Apr 15, 2024
5de0f89
Reverted commit 0eaf2be606c8f78b006f68151652caeaac14f69e, resolved co…
brother-jin Apr 16, 2024
59ebe53
fix:userbacklist && userpass (#2600)
chejinge Apr 15, 2024
8749613
354 version (#2604)
chejinge Apr 17, 2024
d6dda7e
fix: data structure tcl bugfix (#2527)
Mixficsol Mar 22, 2024
12b6d34
clean-dir (#2507)
Mixficsol Mar 14, 2024
fa823f6
test: Comment unavailable tcl test cases (#2528)
zhjinliang Mar 22, 2024
047dd9f
chore: release add centos for os and optimization (#2535)
baerwang Mar 21, 2024
33a4966
docs: changelog of v3.5.4-rc1 (#2605)
chejinge Apr 17, 2024
633e4a0
fix:operator
brother-jin Apr 22, 2024
ff48998
Revert "fix:operator"
brother-jin Apr 22, 2024
609e006
fix:cache_disable_flag assign initial value (#2613)
chejinge Apr 18, 2024
d1f40c8
fix macos CI in github action (#2627)
cheniujh Apr 26, 2024
333b821
fix:slave parse tnx binlog failed (#2642)
chejinge May 9, 2024
fbf6304
fix: unable to start pika exporter (#2640)
Polaris3003 May 8, 2024
9fddf94
fix:codis proxy panic when helm pikacluster (#2632)
chejinge May 7, 2024
8d7c57e
fix:Add the output data of command 'info keyspace 0' to the output of…
XiaoLiang2333 Apr 29, 2024
3a25410
feat: Add support for dynamicaly reconfig rsync-timeout-ms and thrott…
cheniujh May 8, 2024
eba1877
fix strings_test (#2621)
TheCandle Apr 22, 2024
fc0f030
feat: Add a feature that is IO speed limiting (#2599)
vacheli Apr 19, 2024
2455747
fix: Revised CI start script to remove invalid cp command (#2615)
cheniujh Apr 19, 2024
59f8d0a
fix:Revise the value check for max-rsync-parallel-num to prevent a co…
cheniujh Apr 15, 2024
6698e96
Revert "fix:Revise the value check for max-rsync-parallel-num to prev…
brother-jin May 15, 2024
82139e0
fix:Revise the value check for max-rsync-parallel-num to prevent a co…
cheniujh Apr 15, 2024
3a3da18
fix:slots rebalance error and replication stats error when use pika o…
chejinge May 15, 2024
f6be76d
fixed a bug where try fix a group repeatly (#2650)
vacheli May 15, 2024
079bac9
docs: v3.5.4 change log (#2654)
chejinge May 15, 2024
59093d4
feat:mget support multi get (#2694)
chejinge Jun 4, 2024
689502c
fix: fix acl bug (#2714)
luky116 Jun 12, 2024
9763e13
fix:ttl will deafult 0 when keys have ttl (#2729)
chejinge Jun 14, 2024
434706f
fix:pkpatternmatchdel support stream type (#2723)
wangshao1 Jun 14, 2024
5798896
fix: Pika can not exec full-sync when multi slaves connect to the sam…
cheniujh Jun 20, 2024
3c724d4
fix:pksetexat should update cache (#2759)
chejinge Jun 25, 2024
ff18a43
delete iter before return (#2786)
wangshao1 Jul 8, 2024
835717e
add streams data column-family compactionfilter (#2799)
wangshao1 Jul 18, 2024
aa5f215
fix: slotmigrate return not correct (#2741)
chejinge Jun 18, 2024
f297ed1
docs: modify run pika in docker readme (#2743)
luky116 Jun 19, 2024
cdf9bf6
fix: Revised RocksDB-Related Parameters in Pika (#2728)
cheniujh Jun 18, 2024
4ee2e85
add repl metric "repl_connect_status" in the resp of info command (#2…
cheniujh May 17, 2024
c2a9523
removed keys_mutex.unlock() (#2657)
cheniujh May 17, 2024
55e77a8
feat: add a new test env (rocky linux) in github ci. (#2806) (#2823)
QlQlqiqi Jul 29, 2024
fb06ef4
fix: make SlaveDB stay in WaitDBSync state instead of sink into Error…
cheniujh Jun 3, 2024
4e1f88c
fix: Reconstruct slave sync thread model (#2638)
cheniujh May 22, 2024
462aa1d
fix the problem that BinlogAckEnd smaller than BinlogAckStart(due to …
cheniujh May 24, 2024
bcaa456
fix: fix data race around spop Dobinlog (#2674)
cheniujh May 24, 2024
fa9c489
fix exec_count_db data race issue (#2671)
cheniujh May 29, 2024
a8a1ad6
add back the override Execute() of WatchCmd, InfoCmd, ConfigCmd (#2693)
cheniujh Jun 4, 2024
45ddef3
update CI
brother-jin Jul 31, 2024
08d2d12
Update migrator_thread.cc (#2758)
guangkun123 Jun 26, 2024
24fe158
refactor: geo related tcl tests (#2753)
saz97 Jun 26, 2024
1a9bf32
feat:thread purge (#2697)
chejinge Jun 19, 2024
b3118c1
refeator log (#2702)
chejinge Jun 6, 2024
271cc8d
test: add pika benchmark tools (#2663)
luky116 May 29, 2024
3598142
feat:Split the admin command out of the main thread (#2727)
chejinge Jun 26, 2024
5cc691d
fix:zverank return error (#2763)
chejinge Jun 27, 2024
ecd4872
fix min-blob-size parse error (#2767)
wangshao1 Jun 28, 2024
b2bd3d0
fix: github action centos CI can’t pull dependencies (#2772)
cheniujh Jul 3, 2024
8147a5f
remove an unnecessary shared_lock in a hot path(every request will co…
cheniujh Jul 3, 2024
6c270e5
docs: v4.0.0 changelog (#2764)
chejinge Jul 3, 2024
a29e21e
fix: incr sync shouldn't be established after full sync corrupted (#2…
cheniujh Jul 6, 2024
e844ed2
fix:delete iter before PKPatternMatchDel returns
brother-jin Aug 1, 2024
c9f630e
fix:400changelog (#2788)
chejinge Jul 8, 2024
e56e010
fix: revised TimerTaskManager and add some comments (#2776)
cheniujh Jul 10, 2024
bd8f210
set slaveNode to DBSync status before commit bgsave task (#2798)
cheniujh Jul 12, 2024
ccf4022
fix: add metric is_eligible_for_master_election to support reelectio…
cheniujh Jul 12, 2024
aa9f5be
add function DeactivateSyncSlaveDB (#2801)
cheniujh Jul 18, 2024
40dc647
draft fix of bgsave's inconsistent problem (#2818)
cheniujh Jul 22, 2024
6100d25
feat: add more cache info (#2797)
bigdaronlee163 Jul 22, 2024
936a792
fix:slave_prorority need to be 100 when used redis sentinel (#2813)
chejinge Jul 26, 2024
9bbbd2e
fix: successive exec of flushdb may cause delete old db fail (#2790)
cheniujh Jul 26, 2024
a6adb07
feat: use RTC(Run-to-completion) model to speed up cache read (#2837)
cheniujh Jul 31, 2024
7078019
fix: flushdb may cause master-slave inconsistency (#2808)
cheniujh Jul 31, 2024
ee87567
fix:delete logs (#2840)
chejinge Aug 2, 2024
b39ab67
fix: add switch for RTC cache read (#2841)
cheniujh Aug 3, 2024
676f09f
fix: PkPatternMatchDel inconsistent between rediscache and db (#2839)
chejinge Aug 7, 2024
208193d
fix: multi command through cache (#2812)
luky116 Aug 7, 2024
deef745
feat:incr send binlog withttl (#2833)
chejinge Aug 7, 2024
a2cf771
feat:Added the periodically clearing serverlog function (#2829)
XiaoLiang2333 Aug 8, 2024
9fba922
fix:355 CI (#2851)
chejinge Aug 8, 2024
18dd67b
test: fix multi bug and compatible ACL test (#2844)
luky116 Aug 8, 2024
872373b
fix:update version (#2856)
chejinge Aug 9, 2024
8782053
make flushall write binlog of flushdb (#2846)
cheniujh Aug 9, 2024
bfe96ad
fix: blpop/brpop don't update cache (#2858)
cheniujh Aug 12, 2024
d0acadd
change the network time out from 60 to 500 to avoid some fake fail in…
cheniujh Aug 12, 2024
2065a82
fix: kill connections correctly in Net WorkThread (#2862)
cheniujh Aug 13, 2024
dec9f87
fix: make pika compactible with redis-sentinel (#2854)
cheniujh Aug 13, 2024
e857053
fix CI
brother-jin Aug 14, 2024
43f9640
Revert "fix CI"
brother-jin Aug 14, 2024
da57f90
fix:fix 355 CI (#2864)
chejinge Aug 14, 2024
e9d6931
fix: let pika slave support Redis transaction (#2441)
happy-v587 Mar 13, 2024
2a48ad1
fix CI
brother-jin Aug 14, 2024
7396e1a
use ERR READONLY You can't write against a read only replica. to repl…
cheniujh Aug 15, 2024
af51b30
fix centos compile support (#2865)
cheniujh Aug 14, 2024
d2a01f9
fix: changed the calculating logic of epoll timeout provided by Timer…
cheniujh Jul 19, 2024
496f8dd
fix:not correct used bgsave_info_ (#2745)
chejinge Jun 20, 2024
3e78a54
fix: modify cmdId assignment time to assgining after registering cmd…
gukj-spel Jun 4, 2024
a2d86f8
fix: v3.5.5 changelog patch (#2877)
chejinge Aug 20, 2024
5c475bb
fix:Segmentation fault in zremrangebyrank (#2896)
chejinge Sep 13, 2024
1a7de90
fix:caculate memory (#2899)
chejinge Sep 14, 2024
f17c005
fix:4.0.1 changelog (#2902)
chejinge Sep 19, 2024
20302b1
Update pika_zset.cc
chejinge Sep 24, 2024
650eb44
fix 353 zset test
brother-jin Sep 24, 2024
c362d27
feat: dont store cmd(Get/Set/Hget/Hset) with too large key in cache (…
QlQlqiqi Sep 24, 2024
7abfe99
feat:Update kubeblocks version to 0.9 (#2860)
XiaoLiang2333 Sep 24, 2024
f914e59
feat:add test for redis commands, including LPush, RPushX, BgSave, Fl…
tsinow Sep 24, 2024
7a068be
bump: upgrade actions (#2910)
baerwang Sep 26, 2024
8675c30
feat:pika-master-slave-cluster in kb (#2903)
XiaoLiang2333 Sep 26, 2024
63c2d2e
fix:fix CI (#2924)
chejinge Oct 17, 2024
1d3ec50
fix:macos13 (#2937)
chejinge Nov 1, 2024
81f7d21
fix:lpop and lpushx test (#2985)
chejinge Dec 26, 2024
d949752
fix:slash test (#2986)
chejinge Dec 26, 2024
5684bfb
docs:Pika wechat (#2915)
chejinge Sep 29, 2024
e27bddd
docs:pika wechat (#2917)
chejinge Sep 29, 2024
d1eadab
move declare position of in_conn to avoid unnecessary extra Ref from …
cheniujh Oct 14, 2024
fd294fe
fix: fix log_level (#2948)
buzhimingyonghu Nov 13, 2024
c6e2f53
fix:log level
brother-jin Dec 27, 2024
72c5f0d
fix: pika exporter error output due to versions dismatch (#2951)
buzhimingyonghu Nov 18, 2024
1803bd6
fix: fix user ERR NOAUTH Authentication required (#2939)
buzhimingyonghu Nov 22, 2024
c70cf46
fix: Merge Pika-migrate into the tools directory of the unstable bran…
chenbt-hz Nov 22, 2024
b0ec39e
Update README.md
Mixficsol Nov 24, 2024
a2adf6a
fix: user ERR NOAUTH in github action (#2962)
buzhimingyonghu Dec 4, 2024
49e6f55
feat:finish backup and restore (#2968)
buzhimingyonghu Dec 9, 2024
a7a8921
feat:zmax && zmin (#2966)
chejinge Dec 11, 2024
ec83579
fix: fix pika exporter 336 version match nil and delete optional log…
buzhimingyonghu Dec 11, 2024
4e9df66
make log-retention-time dynamically changeable (#2963)
cheniujh Dec 11, 2024
93b4cb3
feat: add repl_connect_status to pika_exporter (#2961)
cheniujh Dec 11, 2024
a26b3b5
persist the salveof conf item when slaveof no one is executed (#2973)
cheniujh Dec 13, 2024
d853d23
feat: add log-net-activities configuration (#2964)
cheniujh Dec 16, 2024
9a85d76
ensure rpoplpush can update cache (#2976)
cheniujh Dec 16, 2024
eb42223
fix RpushLpop
brother-jin Dec 30, 2024
8d98e48
feat:4.0.2 changelog && add some test (#2977)
chejinge Dec 18, 2024
9f65546
fix:release wrong (#2979)
chejinge Dec 18, 2024
c96ebd0
fix:initialize the struct member (#2992)
chejinge Jan 8, 2025
dc7bee3
fix: hello command not return information of pika version (#2990)
pro-spild Feb 10, 2025
382f612
fix: Change the maximum range of setbit's offset to fit redis v3.5 (#…
Mixficsol Feb 11, 2025
75784f2
feat:Hset35 (#3005)
chejinge Feb 11, 2025
19ded5a
fix: Change the maximum range of setbit's offset to fit redis (#2995)
Mixficsol Feb 11, 2025
8aafefa
feat:new big key count (#3009)
chejinge Feb 11, 2025
0cd1c4e
fix ci (#3035)
Mixficsol Mar 3, 2025
cf60090
fix: Reduced ReadCache tags for some commands (#3034)
Mixficsol Mar 5, 2025
c467b47
fix: Fixed an issue with asynchronous loading (#3037)
Mixficsol Mar 6, 2025
6c271c7
summary different stages duration && add rocksdb perfcontext (#3036)
wangshao1 Mar 6, 2025
274b1b7
feat: Add p99 and slow command count (#3042)
Mixficsol Mar 14, 2025
1668357
fix: The number of element updates in RedisCache is configurable (#3043)
Mixficsol Mar 14, 2025
5fdb472
fix slowcmd log duration error with batch command && add proxy metric…
wangshao1 Mar 14, 2025
0865a81
fix: fix replication on pika node recovering (#3038)
wangshao1 Mar 14, 2025
29c8311
fix: Fix problems found during testing (#3039)
Mixficsol Mar 14, 2025
61c760c
Example Modify the policy for updating big keys except String to Redi…
Mixficsol Mar 17, 2025
5dda459
add auth command to admin-thread-pool (#3048)
Mixficsol Mar 19, 2025
bfd8cf8
fix: Example Repair the subjective and objective offline logic of noe…
Mixficsol Mar 19, 2025
7e0141c
fix: fix exit core (#3050)
Mixficsol Mar 19, 2025
8f576d2
Revert "fix: fix exit core (#3050)" (#3052)
Mixficsol Mar 20, 2025
430ee80
Revert "feat: Add p99 and slow command count (#3042)" (#3053)
Mixficsol Mar 20, 2025
618424c
Revert "feat:new big key count (#3009)" (#3055)
Mixficsol Mar 20, 2025
38fc921
fix: Fixed version information for Pika, Pika_exporter, Codis (#3054)
Mixficsol Mar 20, 2025
849ea27
Revert "fix slowcmd log duration error with batch command && add prox…
wangshao1 Mar 21, 2025
d26dd3a
fix: Fixed versions of Pika, Pika_exporter, Codis (#3057)
Mixficsol Mar 21, 2025
845f412
correction maximum range (#3064)
Mixficsol Mar 27, 2025
3c398f6
Force CMake to run with the policy behavior of version 3.5 to avoid c…
Mixficsol Apr 2, 2025
673b847
fix: added the correct loading of admin-cmd-list in the configuration…
Mixficsol Apr 8, 2025
ee37467
Divide the auth command into the command thread pool in pipeling mode…
Mixficsol Jun 9, 2025
9577a49
fix: ZRemrangebylex和zremrangebyscore等命令传参错误(#3090) (#3091)
chenbt-hz Jun 9, 2025
084752c
fix rediscache race condition when read api meets rehashing (#3088)
wangshao1 Jun 9, 2025
bba59ef
fix: block-cache & blob-cache bug (#3105)
chenbt-hz Jun 12, 2025
214229f
fix telnet core dump (#3099)
Mixficsol Jun 12, 2025
3381c25
Fix the error bugs in getrange and setrange in pika 3.5 version (#3106)
YuCai18 Jun 13, 2025
15c3e82
fix connections overflow when command processing takes too long and c…
wangshao1 Jun 13, 2025
6621f52
Modify the ZAdd function in redis_zsets to read the array from back t…
YuCai18 Jun 13, 2025
55ea818
fix proxy log print error && request time stat error (#3107)
wangshao1 Jun 13, 2025
55e6981
skip processing command while associated connection has been closed (…
wangshao1 Jun 16, 2025
e4ad3a6
fix: requirepass allows connection with any non-empty password (#3113)
YuCai18 Jun 20, 2025
ccc54d5
Delete the print of the inconsequential log (#3119)
YuCai18 Jul 14, 2025
0d229fa
fix spop resp format to compatible with php redis client (#3129)
wangshao1 Jul 15, 2025
955ccbd
Fix bug in time statistics format (#3134)
YuCai18 Jul 22, 2025
438e644
stat pipeline num when printing slowlog (#3142)
wangshao1 Jul 29, 2025
1c49985
Revert "Fix bug in time statistics format (#3134)" (#3143)
wangshao1 Jul 30, 2025
e399134
fix:unused conf (#3155)
chejinge Sep 5, 2025
d901c9f
Bump PIKA_PATCH version to 6 (#3157)
chejinge Sep 8, 2025
7e98f03
feat:356changelog (#3158)
chejinge Sep 8, 2025
257594d
Update release.yml (#3160)
chejinge Sep 8, 2025
31fe216
fix:tag (#3161)
chejinge Sep 8, 2025
98896c4
feat: Enable batch import of SST files with S3/MinIO in Pika
byseea11 Sep 28, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
200 changes: 200 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,200 @@
---
Language: Cpp
# BasedOnStyle: Google
AccessModifierOffset: -1
AlignAfterOpenBracket: Align
AlignConsecutiveMacros: None
AlignConsecutiveAssignments: None
AlignConsecutiveBitFields: None
AlignConsecutiveDeclarations: None
AlignEscapedNewlines: Left
AlignOperands: Align
AlignTrailingComments: true
AllowAllArgumentsOnNextLine: true
AllowAllConstructorInitializersOnNextLine: true
AllowAllParametersOfDeclarationOnNextLine: true
AllowShortEnumsOnASingleLine: true
AllowShortBlocksOnASingleLine: Never
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: All
AllowShortLambdasOnASingleLine: All
AllowShortIfStatementsOnASingleLine: WithoutElse
AllowShortLoopsOnASingleLine: true
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: true
AlwaysBreakTemplateDeclarations: Yes
AttributeMacros:
- __capability
BinPackArguments: true
BinPackParameters: true
BraceWrapping:
AfterCaseLabel: false
AfterClass: false
AfterControlStatement: Never
AfterEnum: false
AfterFunction: false
AfterNamespace: false
AfterObjCDeclaration: false
AfterStruct: false
AfterUnion: false
AfterExternBlock: false
BeforeCatch: false
BeforeElse: false
BeforeLambdaBody: false
BeforeWhile: false
IndentBraces: false
SplitEmptyFunction: true
SplitEmptyRecord: true
SplitEmptyNamespace: true
BreakBeforeBinaryOperators: None
BreakBeforeConceptDeclarations: true
BreakBeforeBraces: Attach
BreakBeforeInheritanceComma: false
BreakInheritanceList: BeforeColon
BreakBeforeTernaryOperators: true
BreakConstructorInitializersBeforeComma: false
BreakConstructorInitializers: BeforeColon
BreakAfterJavaFieldAnnotations: false
BreakStringLiterals: true
ColumnLimit: 120
CommentPragmas: '^ IWYU pragma:'
CompactNamespaces: false
ConstructorInitializerAllOnOneLineOrOnePerLine: true
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
Cpp11BracedListStyle: true
DeriveLineEnding: true
DerivePointerAlignment: true
DisableFormat: false
EmptyLineBeforeAccessModifier: LogicalBlock
ExperimentalAutoDetectBinPacking: false
FixNamespaceComments: true
ForEachMacros:
- foreach
- Q_FOREACH
- BOOST_FOREACH
StatementAttributeLikeMacros:
- Q_EMIT
IncludeBlocks: Preserve
IncludeCategories:
- Regex: '^<ext/.*\.h>'
Priority: 2
SortPriority: 0
CaseSensitive: false
- Regex: '^<.*\.h>'
Priority: 1
SortPriority: 0
CaseSensitive: false
- Regex: '^<.*'
Priority: 2
SortPriority: 0
CaseSensitive: false
- Regex: '.*'
Priority: 3
SortPriority: 0
CaseSensitive: false
IncludeIsMainRegex: '([-_](test|unittest))?$'
IncludeIsMainSourceRegex: ''
IndentCaseLabels: true
IndentCaseBlocks: false
IndentGotoLabels: true
IndentPPDirectives: AfterHash
IndentExternBlock: AfterExternBlock
IndentRequires: false
IndentWidth: 2
IndentWrappedFunctionNames: false
InsertTrailingCommas: None
JavaScriptQuotes: Leave
JavaScriptWrapImports: true
KeepEmptyLinesAtTheStartOfBlocks: false
MacroBlockBegin: ''
MacroBlockEnd: ''
MaxEmptyLinesToKeep: 1
NamespaceIndentation: None
ObjCBinPackProtocolList: Never
ObjCBlockIndentWidth: 2
ObjCBreakBeforeNestedBlockParam: true
ObjCSpaceAfterProperty: false
ObjCSpaceBeforeProtocolList: true
PenaltyBreakAssignment: 2
PenaltyBreakBeforeFirstCallParameter: 1
PenaltyBreakComment: 300
PenaltyBreakFirstLessLess: 120
PenaltyBreakString: 1000
PenaltyBreakTemplateDeclaration: 10
PenaltyExcessCharacter: 1000000
PenaltyReturnTypeOnItsOwnLine: 200
PenaltyIndentedWhitespace: 0
PointerAlignment: Left
RawStringFormats:
- Language: Cpp
Delimiters:
- cc
- CC
- cpp
- Cpp
- CPP
- 'c++'
- 'C++'
CanonicalDelimiter: ''
BasedOnStyle: google
- Language: TextProto
Delimiters:
- pb
- PB
- proto
- PROTO
EnclosingFunctions:
- EqualsProto
- EquivToProto
- PARSE_PARTIAL_TEXT_PROTO
- PARSE_TEST_PROTO
- PARSE_TEXT_PROTO
- ParseTextOrDie
- ParseTextProtoOrDie
- ParseTestProto
- ParsePartialTestProto
CanonicalDelimiter: ''
BasedOnStyle: google
ReflowComments: true
SortIncludes: true
SortJavaStaticImport: Before
SortUsingDeclarations: true
SpaceAfterCStyleCast: false
SpaceAfterLogicalNot: false
SpaceAfterTemplateKeyword: true
SpaceBeforeAssignmentOperators: true
SpaceBeforeCaseColon: false
SpaceBeforeCpp11BracedList: false
SpaceBeforeCtorInitializerColon: true
SpaceBeforeInheritanceColon: true
SpaceBeforeParens: ControlStatements
SpaceAroundPointerQualifiers: Default
SpaceBeforeRangeBasedForLoopColon: true
SpaceInEmptyBlock: false
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 2
SpacesInAngles: false
SpacesInConditionalStatement: false
SpacesInContainerLiterals: true
SpacesInCStyleCastParentheses: false
SpacesInParentheses: false
SpacesInSquareBrackets: false
SpaceBeforeSquareBrackets: false
BitFieldColonSpacing: Both
Standard: Auto
StatementMacros:
- Q_UNUSED
- QT_REQUIRE_VERSION
TabWidth: 8
UseCRLF: false
UseTab: Never
WhitespaceSensitiveMacros:
- STRINGIZE
- PP_STRINGIZE
- BOOST_PP_STRINGIZE
- NS_SWIFT_NAME
- CF_SWIFT_NAME
...

140 changes: 140 additions & 0 deletions .clang-tidy
Original file line number Diff line number Diff line change
@@ -0,0 +1,140 @@
---
Checks: '
bugprone-*,
clang-analyzer-*,
google-*,
modernize-*,
performance-*,
portability-*,
-readability-*,
-cppcoreguidelines-*,
-bugprone-easily-swappable-parameters,
-bugprone-implicit-widening-of-multiplication-result,
-bugprone-reserved-identifier,
-bugprone-signed-char-misuse,
-bugprone-branch-clone,
-clang-analyzer-cplusplus.NewDelete,
-clang-analyzer-cplusplus.NewDeleteLeaks,
-clang-analyzer-security.insecureAPI.rand,
-clang-analyzer-cplusplus.InnerPointer,
-clang-analyzer-core.CallAndMessage,
-clang-analyzer-deadcode.DeadStores,
-clang-diagnostic-implicit-int-float-conversion,
-clang-diagnostic-unused-command-line-argument,
-clang-diagnostic-ignored-optimization-argument,
-google-readability-avoid-underscore-in-googletest-name,
-google-default-arguments,
-google-explicit-constructor,
-google-runtime-int,
-modernize-avoid-c-arrays,
-modernize-use-nodiscard,
-modernize-use-trailing-return-type,
-modernize-pass-by-value,
-modernize-concat-nested-namespaces,
-modernize-return-braced-init-list,
-modernize-use-equals-delete,
-modernize-redundant-void-arg,
-readability-convert-member-functions-to-static,
-readability-identifier-length,
-readability-function-cognitive-complexity,
-readability-magic-numbers,
-readability-make-member-function-const,
-readability-qualified-auto,
-readability-redundant-access-specifiers,
-readability-function-size,
-readability-else-after-return,
-readability-use-anyofallof,
-readability-implicit-bool-conversion,
-use_of_tag_name_without_tag,
'
# naming check
CheckOptions:
- { key: readability-identifier-naming.ClassCase, value: CamelCase }
- { key: readability-identifier-naming.EnumCase, value: CamelCase }
- { key: readability-identifier-naming.FunctionCase, value: CamelCase }
- { key: readability-identifier-naming.NamespaceCase, value: lower_case }
- { key: readability-identifier-naming.StructCase, value: CamelCase }
- { key: readability-identifier-naming.UnionCase, value: CamelCase }
- { key: readability-identifier-naming.TemplateParameterCase, value: CamelCase }
- { key: readability-identifier-naming.MacroDefinitionCase, value: UPPER_CASE }

- { key: readability-identifier-naming.GlobalConstantCase, value: CamelCase }
- { key: readability-identifier-naming.GlobalConstantPrefix, value: k }
- { key: readability-identifier-naming.MemberConstantCase, value: CamelCase }
- { key: readability-identifier-naming.MemberConstantPrefix, value: k }
- { key: readability-identifier-naming.EnumConstantCase, value: CamelCase }
- { key: readability-identifier-naming.EnumConstantPrefix, value: k }
# - { key: readability-identifier-naming.StaticConstantCase, value: CamelCase }
# - { key: readability-identifier-naming.StaticConstantPrefix, value: k }
# - { key: readability-identifier-naming.ConstantCase, value: CamelCase }
# - { key: readability-identifier-naming.ConstantPrefix, value: k }
# - { key: readability-identifier-naming.ConstantParameterCase, value: lower_case}

- { key: readability-identifier-naming.GlobalVariableCase, value: lower_case }
- { key: readability-identifier-naming.GlobalVariablePrefix, value: g_pika_ }
- { key: readability-identifier-naming.VariableCase, value: lower_case }

- { key: readability-identifier-naming.PublicMethodCase, value: CamelCase }
- { key: readability-identifier-naming.PrivateMethodCase, value: camelBack }
- { key: readability-identifier-naming.ProtectedMethodCase, value: camelBack }
- { key: readability-identifier-naming.MemberCase, value: lower_case }
- { key: readability-identifier-naming.MemberSuffix, value: _ }

WarningsAsErrors: '*'
HeaderFilterRegex: '((pstd|net|storage)/include/.+\.h|include/pika_.+\.h)'
AnalyzeTemporaryDtors: true

#### Disabled checks and why: #####
#
# -readability-convert-member-functions-to-static,
# This check started going off in the upgrade from clang-tidy-8 to clang-tidy-12. It is not always correct because
# we hide the reference implementation in another repository.
# -clang-analyzer-security.insecureAPI.rand, -clang-analyzer-security.insecureAPI.rand, -bugprone-unhandled-self-assignment,
# -bugprone-implicit-widening-of-multiplication-result
# These have not been investigated yet.
# -bugprone-reserved-identifier,
# Fails due to use of some __SHORT_FILE__ symbol, originating from very old code.
# -bugprone-suspicious-include,
# False positive due to GTest code.
# -bugprone-too-small-loop-variable,
# Complains about uint8_t or uint16_t when the limit on the loop is a container's .size() (size_t).
# We usually do this when we know the maximum size of the container though, so propose leaving disabled.
# -clang-analyzer-cplusplus.NewDelete,
# Seems to generate false positives. Suggest relying on ASAN and valgrind for memory stuff.
# -clang-analyzer-cplusplus.NewDeleteLeaks,
# Seems to generate false positives. Suggest relying on ASAN and valgrind for memory stuff.
# -modernize-use-nodiscard,
# New C++17 feature, slightly polarizing. Would clutter codebase.
# -modernize-avoid-c-arrays,
# Let's not deal with people doing ridiculous things to hack around this. If it bites them, it bites them.
# -bugprone-signed-char-misuse, -clang-diagnostic-implicit-int-float-conversion, -readability-make-member-function-const,
# -readability-qualified-auto, -readability-redundant-access-specifiers
# These were previously disabled for not being available in clang-tidy-8. They are now available on our clang-tidy-12,
# and potentially worth investigating/fixing.
# -bugprone-exception-escape
# Weird. No idea how to resolve.
# -bugprone-branch-clone,
# frequent misidentification
# -google-default-arguments
# Too many virtual functions in pika have default parameters, specifically void Do(std::shared_ptr<Partition> partition = nullptr)
# -clang-analyzer-cplusplus.InnerPointer
# I don't know why this bug in the RocksDB library fails to suppress detection.So I have to disable this check.
#--google-explicit-constructor
# There are so many implicit convert in pika
#--use_of_tag_name_without_tag
# like class member is class , If there is no class tag, an error will be reported
# class A{ B b_; } -> error ; class A{ class B b_; } -> no error ;
#-clang-analyzer-core.CallAndMessage
# pika/src/storage/src/scope_record_lock.h
# Always detect a null pointer and call the TryLock method
# Called C++ object pointer is null [clang-analyzer-core.CallAndMessage,-warnings-as-errors]
# lock_mgr_->UnLock(key);
#-clang-analyzer-deadcode.DeadStores
# error detection in some places
#-google-runtime-int
# todo discussed, because there are so many of `long` and `long long` in pika, so disable for now
#-clang-diagnostic-unused-command-line-argument
# because there are to many compile command error in github ci, but no error in local environment
# See in build folder compile_commands.json
#-clang-diagnostic-ignored-optimization-argument
# The reason disabled this is same as above.
Loading