mirror of
https://github.com/ceph/ceph
synced 2025-02-17 07:57:44 +00:00
*** empty log message ***
git-svn-id: https://ceph.svn.sf.net/svnroot/ceph@275 29311d96-e01e-0410-9327-a35deaab8ce9
This commit is contained in:
parent
45ba0d1c6d
commit
2b257d375d
31
ceph/TODO
31
ceph/TODO
@ -1,23 +1,24 @@
|
||||
notes and todos.
|
||||
|
||||
- new fakeclient that uses client
|
||||
- virtual mega-filesystem
|
||||
big fast todo's:
|
||||
- client buffer cache
|
||||
- replication protocol
|
||||
- heartbeat protocol
|
||||
|
||||
|
||||
ask tyce+bill:
|
||||
- obfs on alc?
|
||||
|
||||
|
||||
notes and todos.
|
||||
- SyntheticClient
|
||||
- virtual mega-filesystem (metadata only)
|
||||
|
||||
|
||||
HARD LINKS
|
||||
|
||||
- discover_ino
|
||||
- called by path_traverse
|
||||
- clean up inode file concept, #define's, etc.
|
||||
- unlink
|
||||
- migrate to inode file
|
||||
- reclaim from inode file on discover...
|
||||
|
||||
|
||||
- reclaim danglers from inode file on discover...
|
||||
- fix rename
|
||||
|
||||
|
||||
/- scatter/gather parallel rendrecv (for client file i/o)
|
||||
- client buffered writes
|
||||
|
||||
|
||||
MDS TODO
|
||||
@ -25,7 +26,7 @@ MDS TODO
|
||||
- they mostly work, but they're fragile
|
||||
- sync clients on stat
|
||||
- will need to ditch 10s client metadata caching before this is useful
|
||||
- truncate
|
||||
- implement truncate
|
||||
- implement hashed directories
|
||||
- statfs?
|
||||
- rewrite journal + recovery
|
||||
|
32
ceph/client/SyntheticClient.cc
Normal file
32
ceph/client/SyntheticClient.cc
Normal file
@ -0,0 +1,32 @@
|
||||
|
||||
#include "SyntheticClient.h"
|
||||
|
||||
#include "include/config.h"
|
||||
|
||||
|
||||
void *synthetic_client_thread_entry(void *ptr)
|
||||
{
|
||||
SyntheticClient *sc = (SyntheticClient*)ptr;
|
||||
sc->run();
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
int SyntheticClient::start_thread()
|
||||
{
|
||||
assert(!thread_id);
|
||||
|
||||
pthread_create(&thread_id, NULL, synthetic_client_thread_entry, this);
|
||||
}
|
||||
|
||||
int SyntheticClient::join_thread()
|
||||
{
|
||||
void *rv;
|
||||
pthread_join(thread_id, &rv);
|
||||
}
|
||||
|
||||
|
||||
int SyntheticClient::run()
|
||||
{
|
||||
|
||||
}
|
27
ceph/client/SyntheticClient.h
Normal file
27
ceph/client/SyntheticClient.h
Normal file
@ -0,0 +1,27 @@
|
||||
#ifndef __SYNTHETICCLIENT_H
|
||||
#define __SYNTHETICCLIENT_H
|
||||
|
||||
#include "Client.h"
|
||||
#include <pthread.h>
|
||||
|
||||
class SyntheticClient {
|
||||
Client *client;
|
||||
int num_req;
|
||||
|
||||
pthread_t thread_id;
|
||||
|
||||
public:
|
||||
SyntheticClient(Client *client,
|
||||
int num_req) {
|
||||
this->client = client;
|
||||
this->num_req = num_req;
|
||||
thread_id = 0;
|
||||
}
|
||||
|
||||
int start_thread();
|
||||
int join_thread();
|
||||
|
||||
int run();
|
||||
};
|
||||
|
||||
#endif
|
Loading…
Reference in New Issue
Block a user