Commit 389e22c2 authored by unknown's avatar unknown
Browse files

Merge mysql.com:/home/mydev/mysql-4.1-bug17877

into  mysql.com:/home/mydev/mysql-5.0-bug11824


myisam/mi_key.c:
  Auto merged
mysql-test/r/func_sapdb.result:
  Auto merged
mysql-test/r/gis-rtree.result:
  Auto merged
mysql-test/r/symlink.result:
  Auto merged
mysql-test/t/func_sapdb.test:
  Auto merged
mysql-test/t/gis-rtree.test:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
myisam/mi_check.c:
  Manual merge
mysql-test/r/func_time.result:
  Manual merge
mysql-test/t/func_time.test:
  Manual merge
parents a24a4516 0b235009
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -1158,13 +1158,14 @@ int chk_data_link(MI_CHECK *param, MI_INFO *info,int extend)
#ifdef HAVE_RTREE_KEYS
                (keyinfo->flag & HA_SPATIAL) ?
                rtree_find_first(info, key, info->lastkey, key_length,
                                 SEARCH_SAME) : 
                                 MBR_EQUAL | MBR_DATA) : 
#endif
                _mi_search(info,keyinfo,info->lastkey,key_length,
                           SEARCH_SAME, info->s->state.key_root[key]);
              if (search_result)
              {
                mi_check_print_error(param,"Record at: %10s  Can't find key for index: %2d",
                mi_check_print_error(param,"Record at: %10s  "
                                     "Can't find key for index: %2d",
                                     llstr(start_recpos,llbuff),key+1);
                if (error++ > MAXERR || !(param->testflag & T_VERBOSE))
                  goto err2;
+1 −1
Original line number Diff line number Diff line
@@ -64,7 +64,7 @@ uint _mi_make_key(register MI_INFO *info, uint keynr, uchar *key,
      TODO: nulls processing
    */
#ifdef HAVE_SPATIAL
    return sp_make_key(info,keynr,key,record,filepos);
    DBUG_RETURN(sp_make_key(info,keynr,key,record,filepos));
#else
    DBUG_ASSERT(0); /* mi_open should check that this never happens*/
#endif
+5 −3
Original line number Diff line number Diff line
@@ -183,9 +183,11 @@ int rtree_find_first(MI_INFO *info, uint keynr, uchar *key, uint key_length,
    return -1;
  }

  /* Save searched key */
  memcpy(info->first_mbr_key, key, keyinfo->keylength -
	 info->s->base.rec_reflength);
  /*
    Save searched key, include data pointer.
    The data pointer is required if the search_flag contains MBR_DATA.
  */
  memcpy(info->first_mbr_key, key, keyinfo->keylength);
  info->last_rkey_length = key_length;

  info->rtree_recursion_depth = -1;
+5 −1
Original line number Diff line number Diff line
@@ -52,10 +52,14 @@
    if (EQUAL_CMP(amin, amax, bmin, bmax)) \
      return 1; \
  } \
  else /* if (nextflag & MBR_DISJOINT) */ \
  else if (nextflag & MBR_DISJOINT) \
  { \
    if (DISJOINT_CMP(amin, amax, bmin, bmax)) \
      return 1; \
  }\
  else /* if unknown comparison operator */ \
  { \
    DBUG_ASSERT(0); \
  }

#define RT_CMP_KORR(type, korr_func, len, nextflag) \
+6 −0
Original line number Diff line number Diff line
@@ -81,6 +81,12 @@ makedate(1997,1)
select makedate(1997,0);
makedate(1997,0)
NULL
select makedate(9999,365);
makedate(9999,365)
9999-12-31
select makedate(9999,366);
makedate(9999,366)
NULL
select addtime("1997-12-31 23:59:59.999999", "1 1:1:1.000002");
addtime("1997-12-31 23:59:59.999999", "1 1:1:1.000002")
1998-01-02 01:01:01.000001
Loading