[sheepdog] [PATCH] farm: clean up snap.c
Liu Yuan
namei.unix at gmail.com
Sat Aug 25 12:42:45 CEST 2012
From: Liu Yuan <tailai.ly at taobao.com>
Remove useless code for recovery handling.
Signed-off-by: Liu Yuan <tailai.ly at taobao.com>
---
sheep/farm/farm.c | 12 ++++++------
sheep/farm/farm.h | 8 ++++----
sheep/farm/snap.c | 40 +++++-----------------------------------
3 files changed, 15 insertions(+), 45 deletions(-)
diff --git a/sheep/farm/farm.c b/sheep/farm/farm.c
index 4ccd629..f5b26b1 100644
--- a/sheep/farm/farm.c
+++ b/sheep/farm/farm.c
@@ -112,14 +112,14 @@ int prealloc(int fd, uint32_t size)
return ret;
}
-static int get_trunk_sha1(uint32_t epoch, unsigned char *outsha1, int user)
+static int get_trunk_sha1(uint32_t epoch, unsigned char *outsha1)
{
int i, nr_logs = -1, ret = -1;
struct snap_log *log_buf, *log_free = NULL;
void *snap_buf = NULL;
struct sha1_file_hdr hdr;
- log_free = log_buf = snap_log_read(&nr_logs, user);
+ log_free = log_buf = snap_log_read(&nr_logs);
dprintf("%d\n", nr_logs);
if (nr_logs < 0)
goto out;
@@ -180,7 +180,7 @@ static int farm_snapshot(struct siocb *iocb)
void *buffer;
int log_nr, ret = SD_RES_EIO, epoch;
- buffer = snap_log_read(&log_nr, 1);
+ buffer = snap_log_read(&log_nr);
if (!buffer)
goto out;
@@ -198,7 +198,7 @@ static int farm_snapshot(struct siocb *iocb)
trunk_sha1, snap_sha1) < 0)
goto out;
- if (snap_log_write(epoch, snap_sha1, 1) < 0)
+ if (snap_log_write(epoch, snap_sha1) < 0)
goto out;
ret = SD_RES_SUCCESS;
@@ -240,7 +240,7 @@ static int restore_objects_from_snap(uint32_t epoch)
uint64_t nr_trunks, i;
int ret = SD_RES_EIO;
- if (get_trunk_sha1(epoch, trunk_sha1, 1) < 0)
+ if (get_trunk_sha1(epoch, trunk_sha1) < 0)
goto out;
trunk_free = trunk_buf = trunk_file_read(trunk_sha1, &hdr);
@@ -303,7 +303,7 @@ static int farm_get_snap_file(struct siocb *iocb)
int nr;
dprintf("try get snap file\n");
- buffer = snap_log_read(&nr, 1);
+ buffer = snap_log_read(&nr);
if (!buffer)
goto out;
size = nr * sizeof(struct snap_log);
diff --git a/sheep/farm/farm.h b/sheep/farm/farm.h
index af803b6..1a0081e 100644
--- a/sheep/farm/farm.h
+++ b/sheep/farm/farm.h
@@ -44,8 +44,8 @@ extern char farm_dir[PATH_MAX];
extern char farm_obj_dir[PATH_MAX];
/* sha1_file.c */
extern char *sha1_to_path(const unsigned char *sha1);
-extern int sha1_file_write(unsigned char *buf, unsigned len, unsigned char *outsha1);
-extern void *sha1_file_read(const unsigned char *sha1, struct sha1_file_hdr *hdr);
+extern int sha1_file_write(unsigned char *buf, unsigned len, unsigned char *);
+extern void *sha1_file_read(const unsigned char *sha1, struct sha1_file_hdr *);
extern char *sha1_to_hex(const unsigned char *sha1);
extern int get_sha1_hex(const char *hex, unsigned char *sha1);
extern int sha1_file_try_delete(const unsigned char *sha1);
@@ -61,7 +61,7 @@ extern void *snap_file_read(unsigned char *sha1, struct sha1_file_hdr *outhdr);
extern int snap_file_write(uint32_t epoch, struct sd_node *nodes, int nr_nodes,
unsigned char *trunksha1, unsigned char *outsha1);
extern int snap_log_truncate(void);
-extern void *snap_log_read(int *, int user);
-extern int snap_log_write(uint32_t epoch, unsigned char *sha1, int user);
+extern void *snap_log_read(int *);
+extern int snap_log_write(uint32_t epoch, unsigned char *sha1);
#endif
diff --git a/sheep/farm/snap.c b/sheep/farm/snap.c
index d819ebb..88294cc 100644
--- a/sheep/farm/snap.c
+++ b/sheep/farm/snap.c
@@ -28,19 +28,6 @@ int snap_init(void)
struct strbuf buf = STRBUF_INIT;
strbuf_addstr(&buf, farm_dir);
- strbuf_addf(&buf, "/%s", "sys_snap");
-
- fd = open(buf.buf, O_CREAT | O_EXCL, 0666);
- if (fd < 0) {
- if (errno != EEXIST) {
- ret = -1;
- goto out;
- }
- }
- close(fd);
-
- strbuf_reset(&buf);
- strbuf_addstr(&buf, farm_dir);
strbuf_addf(&buf, "/%s", "user_snap");
fd = open(buf.buf, O_CREAT | O_EXCL, 0666);
@@ -57,24 +44,7 @@ out:
return ret;
}
-int snap_log_truncate(void)
-{
- int ret = 0;
- struct strbuf buf = STRBUF_INIT;
-
- strbuf_addstr(&buf, farm_dir);
- strbuf_addf(&buf, "/%s", "sys_snap");
-
- if (truncate(buf.buf, 0) < 0) {
- dprintf("truncate snapshot log file fail:%m.\n");
- ret = -1;
- }
-
- strbuf_release(&buf);
- return ret;
-}
-
-int snap_log_write(uint32_t epoch, unsigned char *sha1, int user)
+int snap_log_write(uint32_t epoch, unsigned char *sha1)
{
int fd, ret = -1;
struct strbuf buf = STRBUF_INIT;
@@ -83,7 +53,7 @@ int snap_log_write(uint32_t epoch, unsigned char *sha1, int user)
memcpy(log.sha1, sha1, SHA1_LEN);
strbuf_addstr(&buf, farm_dir);
- strbuf_addf(&buf, "/%s", user ? "user_snap" : "sys_snap");
+ strbuf_addf(&buf, "/%s", "user_snap");
fd = open(buf.buf, O_WRONLY | O_APPEND);
if (fd < 0) {
@@ -103,7 +73,7 @@ out:
return ret;
}
-void *snap_log_read(int *out_nr, int user)
+void *snap_log_read(int *out_nr)
{
struct strbuf buf = STRBUF_INIT;
struct stat st;
@@ -111,7 +81,7 @@ void *snap_log_read(int *out_nr, int user)
int len, fd;
strbuf_addstr(&buf, farm_dir);
- strbuf_addf(&buf, "/%s", user ? "user_snap" : "sys_snap");
+ strbuf_addf(&buf, "/%s", "user_snap");
fd = open(buf.buf, O_RDONLY);
if (fd < 0) {
@@ -156,7 +126,7 @@ void *snap_file_read(unsigned char *sha1, struct sha1_file_hdr *outhdr)
}
int snap_file_write(uint32_t epoch, struct sd_node *nodes, int nr_nodes,
- unsigned char *trunksha1, unsigned char *outsha1)
+ unsigned char *trunksha1, unsigned char *outsha1)
{
int ret = 0;
struct strbuf buf = STRBUF_INIT;
--
1.7.1
More information about the sheepdog
mailing list