diff -Narup ./008_mariadb-10.0.15-partition_direct_update/sql/field.cc ./009_mariadb-10.0.15-dbg/sql/field.cc
--- ./008_mariadb-10.0.15-partition_direct_update/sql/field.cc	2014-11-22 06:02:53.000000000 +0900
+++ ./009_mariadb-10.0.15-dbg/sql/field.cc	2014-11-29 17:02:32.052795457 +0900
@@ -70,8 +70,8 @@ const char field_separator=',';
 #define BLOB_PACK_LENGTH_TO_MAX_LENGH(arg) \
                         ((ulong) ((1LL << MY_MIN(arg, 4) * 8) - 1))
 
-#define ASSERT_COLUMN_MARKED_FOR_READ DBUG_ASSERT(!table || (!table->read_set || bitmap_is_set(table->read_set, field_index)))
-#define ASSERT_COLUMN_MARKED_FOR_WRITE_OR_COMPUTED DBUG_ASSERT(is_stat_field || !table || (!table->write_set || bitmap_is_set(table->write_set, field_index) || bitmap_is_set(table->vcol_set, field_index)))
+#define ASSERT_COLUMN_MARKED_FOR_READ
+#define ASSERT_COLUMN_MARKED_FOR_WRITE_OR_COMPUTED
 
 #define FLAGSTR(S,F) ((S) & (F) ? #F " " : "")
 
@@ -3810,7 +3810,9 @@ longlong Field_long::val_int(void)
   ASSERT_COLUMN_MARKED_FOR_READ;
   int32 j;
   /* See the comment in Field_long::store(long long) */
+/*
   DBUG_ASSERT(!table || table->in_use == current_thd);
+*/
   j=sint4korr(ptr);
   return unsigned_flag ? (longlong) (uint32) j : (longlong) j;
 }
@@ -6366,7 +6368,9 @@ int Field_string::store(const char *from
   const char *from_end_pos;
 
   /* See the comment for Field_long::store(long long) */
+/*
   DBUG_ASSERT(!table || table->in_use == current_thd);
+*/
 
   copy_length= well_formed_copy_nchars(field_charset,
                                        (char*) ptr, field_length,
@@ -6515,7 +6519,9 @@ String *Field_string::val_str(String *va
 {
   ASSERT_COLUMN_MARKED_FOR_READ;
   /* See the comment for Field_long::store(long long) */
+/*
   DBUG_ASSERT(!table || table->in_use == current_thd);
+*/
   uint length;
   if (get_thd()->variables.sql_mode &
       MODE_PAD_CHAR_TO_FULL_LENGTH)
diff -Narup ./008_mariadb-10.0.15-partition_direct_update/sql/handler.cc ./009_mariadb-10.0.15-dbg/sql/handler.cc
--- ./008_mariadb-10.0.15-partition_direct_update/sql/handler.cc	2014-11-29 17:02:06.101796936 +0900
+++ ./009_mariadb-10.0.15-dbg/sql/handler.cc	2014-11-29 17:02:32.053795367 +0900
@@ -2419,7 +2419,9 @@ void **handler::ha_data(THD *thd) const
 
 THD *handler::ha_thd(void) const
 {
+/*
   DBUG_ASSERT(!table || !table->in_use || table->in_use == current_thd);
+*/
   return (table && table->in_use) ? table->in_use : current_thd;
 }
 
diff -Narup ./008_mariadb-10.0.15-partition_direct_update/sql/item_sum.h ./009_mariadb-10.0.15-dbg/sql/item_sum.h
--- ./008_mariadb-10.0.15-partition_direct_update/sql/item_sum.h	2014-11-22 06:02:54.000000000 +0900
+++ ./009_mariadb-10.0.15-dbg/sql/item_sum.h	2014-11-29 17:02:32.059795158 +0900
@@ -1193,6 +1193,7 @@ public:
   enum Sumfunctype sum_func () const { return UDF_SUM_FUNC; }
   virtual bool have_field_update(void) const { return 0; }
 
+  virtual void no_rows_in_result() { clear(); }
   void clear();
   bool add();
   void reset_field() {};
diff -Narup ./008_mariadb-10.0.15-partition_direct_update/sql/protocol.cc ./009_mariadb-10.0.15-dbg/sql/protocol.cc
--- ./008_mariadb-10.0.15-partition_direct_update/sql/protocol.cc	2014-11-22 06:02:56.000000000 +0900
+++ ./009_mariadb-10.0.15-dbg/sql/protocol.cc	2014-11-29 17:02:32.086759994 +0900
@@ -519,7 +519,9 @@ void Protocol::end_statement()
     break;
   case Diagnostics_area::DA_EMPTY:
   default:
+/*
     DBUG_ASSERT(0);
+*/
     error= send_ok(thd->server_status, 0, 0, 0, NULL);
     break;
   }
diff -Narup ./008_mariadb-10.0.15-partition_direct_update/sql/sql_error.cc ./009_mariadb-10.0.15-dbg/sql/sql_error.cc
--- ./008_mariadb-10.0.15-partition_direct_update/sql/sql_error.cc	2014-11-22 06:02:56.000000000 +0900
+++ ./009_mariadb-10.0.15-dbg/sql/sql_error.cc	2014-11-29 17:02:32.087796123 +0900
@@ -375,13 +375,15 @@ Diagnostics_area::set_ok_status(ulonglon
                                 const char *message)
 {
   DBUG_ENTER("set_ok_status");
+/*
   DBUG_ASSERT(! is_set());
+*/
   /*
     In production, refuse to overwrite an error or a custom response
     with an OK packet.
   */
   if (is_error() || is_disabled())
-    return;
+    DBUG_VOID_RETURN;
 
   m_statement_warn_count= current_statement_warn_count();
   m_affected_rows= affected_rows;
@@ -410,7 +412,7 @@ Diagnostics_area::set_eof_status(THD *th
     with an EOF packet.
   */
   if (is_error() || is_disabled())
-    return;
+    DBUG_VOID_RETURN;
 
   /*
     If inside a stored procedure, do not return the total
@@ -471,7 +473,9 @@ Diagnostics_area::set_error_status(uint 
     The only exception is when we flush the message to the client,
     an error can happen during the flush.
   */
+/*
   DBUG_ASSERT(! is_set() || m_can_overwrite_status);
+*/
 
   // message must be set properly by the caller.
   DBUG_ASSERT(message);
