Commit 781f2f18 authored by unknown's avatar unknown
Browse files

Merge mikael@orca:/home/mikael/bug18198

into  mikael-ronstr-ms-dator.local:/Users/mikron/bug18198

parents d9935084 32591e69
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -744,6 +744,11 @@ class Item {
  virtual bool find_item_in_field_list_processor(byte *arg) { return 0; }
  virtual bool change_context_processor(byte *context) { return 0; }
  virtual bool reset_query_id_processor(byte *query_id) { return 0; }
  virtual bool check_partition_func_processor(byte *bool_arg)
  {
    *(bool *)bool_arg= FALSE;
    return 0;
  }

  virtual Item *equal_fields_propagator(byte * arg) { return this; }
  virtual Item *set_no_const_sub(byte *arg) { return this; }
@@ -1202,6 +1207,7 @@ class Item_field :public Item_ident
      result_field->query_id= field->query_id;
    return 0;
  }
  bool check_partition_func_processor(byte *bool_arg) { return 0; }
  void cleanup();
  Item_equal *find_item_equal(COND_EQUAL *cond_equal);
  Item *equal_fields_propagator(byte *arg);
+12 −0
Original line number Diff line number Diff line
@@ -655,8 +655,20 @@ bool partition_info::check_partition_info(handlerton **eng_type,
  uint i, tot_partitions;
  bool result= TRUE;
  char *same_name;
  bool part_expression_ok= TRUE;
  DBUG_ENTER("partition_info::check_partition_info");

  if (part_type != HASH_PARTITION || !list_of_part_fields)
    part_expr->walk(Item::check_partition_func_processor,
                    (byte*)&part_expression_ok);
  if (is_sub_partitioned() && !list_of_subpart_fields)
    subpart_expr->walk(Item::check_partition_func_processor,
                       (byte*)&part_expression_ok);
  if (!part_expression_ok)
  {
    my_error(ER_PARTITION_FUNC_NOT_ALLOWED, MYF(0));
    goto end;
  }
  if (unlikely(!is_sub_partitioned() && 
               !(use_default_subpartitions && use_default_no_subpartitions)))
  {
+3 −0
Original line number Diff line number Diff line
@@ -5826,3 +5826,6 @@ ER_NDB_CANT_SWITCH_BINLOG_FORMAT
	eng "The NDB cluster engine does not support changing the binlog format on the fly yet"
ER_PARTITION_NO_TEMPORARY
	eng "Cannot create temporary table with partitions"
ER_PARTITION_FUNCTION_NOT_ALLOWED
        eng "This partition function is not allowed"
        swe "Denna partitioneringsfunktion r inte tillten"