~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/table.cc

  • Committer: Brian Aker
  • Date: 2009-05-05 00:22:46 UTC
  • mfrom: (1003.1.6 merge)
  • Revision ID: brian@gaz-20090505002246-m4ol528i6me7vikf
Merge Brian

Show diffs side-by-side

added added

removed removed

Lines of Context:
556
556
 
557
557
  share->fields= table.field_size();
558
558
  share->vfields= 0;
559
 
  share->stored_fields= share->fields;
560
559
 
561
560
  share->field= (Field**) alloc_root(&share->mem_root,
562
561
                                     ((share->fields+1) * sizeof(Field*)));
856
855
    }
857
856
 
858
857
    enum_field_types field_type;
859
 
    bool field_is_stored= true;
860
 
 
861
858
 
862
859
    field_type= proto_field_type_to_drizzle_type(pfield.type());
863
860
 
966
963
 
967
964
    f->field_index= fieldnr;
968
965
    f->comment= comment;
969
 
    f->is_stored= field_is_stored;
970
966
    if(!default_value
971
967
       && !(f->unireg_check==Field::NEXT_NUMBER)
972
968
       && (f->flags & NOT_NULL_FLAG)
982
978
    if (use_hash) /* supposedly this never fails... but comments lie */
983
979
      (void) my_hash_insert(&share->name_hash,
984
980
                            (unsigned char*)&(share->field[fieldnr]));
985
 
 
986
 
    if(!f->is_stored)
987
 
    {
988
 
      share->stored_fields--;
989
 
    }
990
981
  }
991
982
 
992
983
  keyinfo= share->key_info;
1537
1528
  memset(bitmaps, 0, bitmap_size*3);
1538
1529
#endif
1539
1530
 
1540
 
  outparam->no_replicate= outparam->file;
1541
1531
  session->status_var.opened_tables++;
1542
1532
 
1543
1533
  return (0);
2639
2629
 
2640
2630
void Table::prepare_for_position()
2641
2631
{
2642
 
 
2643
2632
  if ((file->ha_table_flags() & HA_PRIMARY_KEY_IN_READ_INDEX) &&
2644
2633
      s->primary_key < MAX_KEY)
2645
2634
  {
2646
2635
    mark_columns_used_by_index_no_reset(s->primary_key, read_set);
2647
 
    /* signal change */
2648
 
    file->column_bitmaps_signal();
2649
2636
  }
2650
2637
  return;
2651
2638
}
2690
2677
  key_read= 0;
2691
2678
  (void) file->extra(HA_EXTRA_NO_KEYREAD);
2692
2679
  default_column_bitmaps();
2693
 
  file->column_bitmaps_signal();
2694
 
  return;
2695
2680
}
2696
2681
 
2697
2682
 
2729
2714
  write_set->set(found_next_number_field->field_index);
2730
2715
  if (s->next_number_keypart)
2731
2716
    mark_columns_used_by_index_no_reset(s->next_number_index, read_set);
2732
 
  file->column_bitmaps_signal();
2733
2717
}
2734
2718
 
2735
2719
 
2761
2745
      if ((*reg_field)->flags & PART_KEY_FLAG)
2762
2746
        read_set->set((*reg_field)->field_index);
2763
2747
    }
2764
 
    file->column_bitmaps_signal();
2765
2748
  }
2766
2749
 
2767
2750
  {
2774
2757
    if (s->primary_key == MAX_KEY)
2775
2758
      file->use_hidden_primary_key();
2776
2759
    else
2777
 
    {
2778
2760
      mark_columns_used_by_index_no_reset(s->primary_key, read_set);
2779
 
      file->column_bitmaps_signal();
2780
 
    }
2781
2761
  }
2782
2762
}
2783
2763
 
2812
2792
      if (is_overlapping(merge_keys, (*reg_field)->part_of_key))
2813
2793
        read_set->set((*reg_field)->field_index);
2814
2794
    }
2815
 
    file->column_bitmaps_signal();
2816
2795
  }
2817
2796
 
2818
2797
  {
2825
2804
    if (s->primary_key == MAX_KEY)
2826
2805
      file->use_hidden_primary_key();
2827
2806
    else
2828
 
    {
2829
2807
      mark_columns_used_by_index_no_reset(s->primary_key, read_set);
2830
 
      file->column_bitmaps_signal();
2831
 
    }
2832
2808
  }
2833
2809
  return;
2834
2810
}