summaryrefslogtreecommitdiffstats
path: root/libglusterfs/src/gfdb/gfdb_data_store_types.h
diff options
context:
space:
mode:
authorJoseph Fernandes <josferna@redhat.com>2015-06-20 14:38:12 +0530
committerDan Lambright <dlambrig@redhat.com>2015-06-26 16:05:20 -0700
commit26ef697318a7fec5ed82b000e3be4e30cfb16b50 (patch)
treea83e0c745e12016482bffb883361e507dd04275f /libglusterfs/src/gfdb/gfdb_data_store_types.h
parent254218fa39d9317f759b4bfb4433478586eda0e3 (diff)
tier/ctr: Ignore creation of T file and Ctr Lookup heal improvememnts
1) Ignore creation of T file in ctr_mknod 2) Ignore lookup for T file in ctr_lookup 3) Ctr_lookup: a. If the gfid and pgfid in empty dont record b. Decreased log level for multiple heal attempts c. Inode/File heal happens after an expiry period, which is configurable. d. Hardlink heal happens after an expiry period, which is configurable. Change-Id: Id8eb5092e78beaec22d05f5283645081619e2452 BUG: 1235269 Signed-off-by: Joseph Fernandes <josferna@redhat.com> Reviewed-on: http://review.gluster.org/11334 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Dan Lambright <dlambrig@redhat.com> Tested-by: Dan Lambright <dlambrig@redhat.com>
Diffstat (limited to 'libglusterfs/src/gfdb/gfdb_data_store_types.h')
-rw-r--r--libglusterfs/src/gfdb/gfdb_data_store_types.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/libglusterfs/src/gfdb/gfdb_data_store_types.h b/libglusterfs/src/gfdb/gfdb_data_store_types.h
index b0511637ddc..f70a43a20fc 100644
--- a/libglusterfs/src/gfdb/gfdb_data_store_types.h
+++ b/libglusterfs/src/gfdb/gfdb_data_store_types.h
@@ -21,6 +21,16 @@
#include "dict.h"
#include "libglusterfs-messages.h"
+/*
+ * Helps in dynamically choosing log level
+ * */
+static inline gf_loglevel_t
+_gfdb_log_level (gf_loglevel_t given_level,
+ gf_boolean_t ignore_level)
+{
+ return (ignore_level) ? GF_LOG_DEBUG : given_level;
+}
+
typedef enum gf_db_operation {
GFDB_INVALID_DB_OP = -1,
/* Query DB OPS : All the Query DB_OP should be added */
@@ -66,8 +76,6 @@ typedef enum gf_db_operation {
#define GF_COL_LINK_UPDATE "LINK_UPDATE"
-
-
/***********************Time related********************************/
/*1 sec = 1000000 microsec*/
#define GFDB_MICROSEC 1000000
@@ -300,6 +308,9 @@ typedef struct gfdb_db_record {
/* Global flag to Record/Not Record wind or wind time.
* This flag will overrule do_record_uwind_time*/
gf_boolean_t do_record_times;
+ /* Ignoring errors while inserting.
+ * */
+ gf_boolean_t ignore_errors;
} gfdb_db_record_t;