127 Commits

Author SHA1 Message Date
ec2a25ab69 Don't lock RdbTree/RdbBucket when calling isSaving function. It's already an atomic. 2017-05-29 14:16:51 +02:00
69e5212d65 Merge branch 'master' into nomerge2 2017-04-28 14:59:50 +02:00
b047656975 bugfix 9e28e36abe 2017-04-28 14:59:36 +02:00
65e4d8aa9e Merge branch 'master' of github.com:privacore/open-source-search-engine 2017-04-27 15:43:59 +02:00
34e883b6c8 Merge branch 'master' into nomerge2 2017-04-26 17:16:12 +02:00
f6df4d44cc Use initialization list instead 2017-04-25 09:45:11 +02:00
cfdff69424 Merge branch 'master' into nomerge2 2017-04-24 12:07:22 +02:00
a7bfb39b9d Remove RdbTree/RdbBuckets/Rdb isWritable. We shouldn't need to disable writes just because we're saving. 2017-04-24 10:36:29 +02:00
9e28e36abe normalized binary search in RdbBucket::getNode() into somethign recognizable 2017-04-21 17:28:57 +02:00
a395847f50 Merge remote-tracking branch 'origin/master' into nomerge2 2017-04-21 17:17:26 +02:00
dfd361b551 Return value of RdbBucket::deleteNode() was not used; bool->void 2017-04-21 16:51:26 +02:00
51e732f1fb Make logic clearer in RdbBuckets by added RdbBucket::isEmpty() 2017-04-21 16:48:09 +02:00
e89a859f50 Merge branch 'master' into nomerge2 2017-04-21 12:29:26 +02:00
c84408d7d0 Make sure m_isSaving & m_needsSave is protected by mutex for both RdbBuckets & RdbTree 2017-04-21 12:29:03 +02:00
2fda591e46 Merge branch 'master' into nomerge2 2017-04-20 18:14:24 +02:00
8e215eac6f Move RdbBuckets save to a thread 2017-04-20 17:55:46 +02:00
3ac9b74bf7 No need to use abbreviated variable name because we are not afraid of columns past 78 2017-04-20 17:16:20 +02:00
57d23341c5 Merge branch 'master' into nomerge2 2017-04-20 15:59:43 +02:00
e2e4783635 We don't need to save after tree/bucket reset. Align code between RdbTree & RdbBuckets 2017-04-20 15:55:54 +02:00
cb3f66fa97 More const 2017-04-20 15:55:01 +02:00
50b656f93a Merge branch 'master' into nomerge2 2017-04-10 12:38:13 +02:00
5ecebfd41d Add more locks/lock verification to RdbBuckets & append all unlocked methods with _unlocked
Rename RdbBuckets::getListSize to RdbBuckets::estimateListSize
Modify RdbBuckets::addNode to return boolean
2017-04-05 15:11:50 +02:00
ccc738df65 Remove private function calls with direct variable access 2017-04-05 14:37:03 +02:00
2b5f689dcc Merge branch 'master' into nomerge2 2017-03-31 13:00:25 +02:00
1349b48c41 Add locks to RdbTree.
Some code style changes/comment removal.
Moved treetest which was in main.cpp to unittest
2017-03-31 12:59:40 +02:00
f7b5ab1173 Remove g_conf.m_noInMemoryPosdbMerge 2017-03-30 14:12:03 +02:00
8dd3ac87c6 negative keys in RdbBuckets are fine if g_conf.m_noInMemoryPosdbMerge is false 2017-03-30 13:42:12 +02:00
4a203531d1 Sync changes for RdbBuckets from nomerge2 2017-03-24 14:05:44 +01:00
0f42928031 Remove RdbMem::freeDumpedMem dependency with RdbTree 2017-03-22 11:10:02 +01:00
77f582559f Remove unused RdbBuckets::addList 2017-03-22 11:06:06 +01:00
db32a7f45c Hide RdbBucket declaration in cpp file 2017-03-21 17:00:29 +01:00
0d0aaaf89e Remove unused functions in RdbBuckets 2017-03-21 16:36:16 +01:00
ce5ff1878c Use const version of RdbTree::getData 2017-03-21 16:36:16 +01:00
2620ea3031 fix data corruption bug when deleting an RdbBucket 2017-02-23 10:13:09 +01:00
b2d743a135 RdbBucket::getFirstKey() should return const 2017-02-21 11:59:56 +01:00
7af380e001 memmove() correct part of RdbBucket when deleting node 2017-02-03 12:15:40 +01:00
1bdf81a4f6 Support option to verify integrity of RdbBuckets 2017-02-02 15:10:14 +01:00
f844ad731b No rdb has rdbid -1. Don't check for that 2017-01-29 00:49:27 +01:00
6dd26a3606 Better encapsulation of Collectiondb 2017-01-12 16:49:21 +01:00
34ca9098e3 More accurate estimation in rdbBuckets::hasRoom()
The previous estimate was way off when most buckets were used and caused duplicates. The new estimate looks expensive, but the function isn't called that often even during rebuild. During a rebuild it barely makes it into the top-100 in callgrind/kcachegrind.
2017-01-02 12:59:34 +01:00
bdd8cb5338 #include clean up Query.h 2016-12-08 16:56:09 +01:00
5af39f1358 Moved MAX_COLL_LEN and MAX_URL_LEN to separate header files
So not most files have to include Collectiondb.h and Url.h
2016-11-12 20:44:42 +01:00
aba937780d Stop #including Conf.h from header files 2016-11-12 20:24:20 +01:00
bacc239572 #include cleanup of BigFile.h 2016-10-27 13:47:49 +02:00
5174d8352e null-check before use in RdbBuckets::addNode 2016-10-22 19:26:13 +02:00
7c9bc9af7d Removed all use and mentions of g_conf.m_stripeDir
If you want to use striped I/O for peformance then the lower level disk susbsystem is a better idea (eg Linux Raid og a dedicated storge controller/system)
2016-10-21 15:50:56 +02:00
676075cab1 RdbBucket member init 2016-10-20 13:39:12 +02:00
ba81b7a7d6 Use proper English: alloced -> allocated 2016-10-17 11:57:37 +02:00
ada927bab0 Remove XOPEN_SOURCE defines 2016-10-11 13:54:55 +02:00
8ce3b603da More constness in Rdb* 2016-10-06 15:21:11 +02:00