macan / pomegranate Goto Github PK
View Code? Open in Web Editor NEWAn Efficient Distributed File/Blob/Key-Value Store for Billions of Small Files
Home Page: http://github.com/macan/Pomegranate/wiki
An Efficient Distributed File/Blob/Key-Value Store for Billions of Small Files
Home Page: http://github.com/macan/Pomegranate/wiki
Sometimes, the accepted socket fd can not be set to the table. There is a conflict entry already table, maybe the last broken connection. Check it!
Under heavy memory pressure, the active entry counter in ITB is not correct.
It is easy to reproduce this bug. Run the API unit test several times, you can got it!
In xnet-simple RESEND mode, there is a race between the reply message and the original xnet_msg, it is hard to trace the calling path.
For now, we just disable the RESEND mode to fix this bug:(
[root@vs1 Pomegranate]# make
make: *** No rule to make target /usr/src/Pomegranate/test/xnet/cr.c', needed by
unit_test'. Stop.
itb_dirty in future access case, we got a assertion failure.
it is related to mds_read_itb() and cbht_itb_miss(), the itb->h.state can be CLEAN.
[macan@gh01 hvfs]$ *** glibc detected *** /home/macan/hvfs/test/xnet/mds.ut: double free or corruption (!prev): 0x00002aaaac48fce0 ***
======= Backtrace: =========
/lib64/libc.so.6[0x3bab271ce2]
/lib64/libc.so.6[0x3bab2738e2]
/lib64/libc.so.6(realloc+0x1d0)[0x3bab275c30]
/home/macan/hvfs/test/xnet/mds.ut(txg_add_rdir+0x7d)[0x44373d]
/home/macan/hvfs/test/xnet/mds.ut(mds_gossip_rdir+0x1d7)[0x45ba37]
/home/macan/hvfs/test/xnet/mds.ut(mds_mds_dispatch+0x127)[0x464667]
/home/macan/hvfs/test/xnet/mds.ut[0x45d5b2]
/lib64/libpthread.so.0[0x3babe06367]
/lib64/libc.so.6(clone+0x6d)[0x3bab2d2f7d]
The writebacked ITB can not be lookuped in the TOE list.
Maybe the itb counter is not correct or the MDSL code is not correct, should be rechecked!
Enable memory limit, run unit test.
After running a few TXGs, mds.ut crashed with ITB reference assertion failure.
It is a conflict between txg_wb() and aur_itb_split(). The usage of itb_put() should be revised.
Using postmark to test tiny file I/O, we found that the disk usage for each server is imbalance. The largest disk image can be 2 or 3 times of the smallest one. Maybe a new hash function is useful for postmark test.
How does xtable organize data in the Pomegranate file system? Could you please explain it with a diagram? Thank you very much
Add a reliable (replicated), striped OSD level to PFS.
New Feature.
scrub_running flag is set, but the scrub thread is not running.
I believe that there is a memory set conflict on scrub_running flag. So protect it!
macan@MACANA ~/hvfs/working $ git bisect start
macan@MACANA ~/hvfs/working $ git bisect bad
macan@MACANA ~/hvfs/working $ git bisect good 1491353
Bisecting: 24 revisions left to test after this (roughly 5 steps)
[19f1fb1] Finish PFS xattr integrated test case. Seems that it works fine :)
macan@MACANA ~/hvfs/working $ git bisect good 19f1fb1
Bisecting: 12 revisions left to test after this (roughly 4 steps)
[15b2e14] Cleanup c2m.c and remove redundant code, and add fuse client latency distrbution. To use fuse client latency distribution, add 'CFLAGS='-DHVFS_FUSE_STAT'' and 'USE_FUSE=1' before make.
macan@MACANA ~/hvfs/working $ git bisect good 15b2e14
Bisecting: 6 revisions left to test after this (roughly 3 steps)
[ba24348] State checking and corrupt message checking in bitmap gossip
macan@MACANA ~/hvfs/working $ git bisect good
Bisecting: 2 revisions left to test after this (roughly 2 steps)
[2a11fef] Merge fuse microbenchmark from master branch
macan@MACANA ~/hvfs/working $ git bisect good
Bisecting: 0 revisions left to test after this (roughly 1 step)
[97d6bac] Add dbsearch bench, change xattr microbench for fast12 paper.
macan@MACANA ~/hvfs/working $ git bisect bad
Bisecting: 0 revisions left to test after this (roughly 0 steps)
[1d0595a] Internal API bug fix for hvfs_stat()
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.