Commit b46d2ca1 authored by heikki@hundin.mysql.fi's avatar heikki@hundin.mysql.fi
Browse files

ha_innodb.cc, ha_innodb.h:

  Move to the right place the flag which bans use of HA_READ_PREFIX_LAST; add diagnostics and remove the assertion on line 2180 of ha_innodb.cc
parent 9aeb138a
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -2179,7 +2179,12 @@ convert_search_mode_to_innobase(
		case HA_READ_AFTER_KEY:		return(PAGE_CUR_G);
		case HA_READ_BEFORE_KEY:	return(PAGE_CUR_L);
		case HA_READ_PREFIX:		return(PAGE_CUR_GE);
		case HA_READ_PREFIX_LAST:	ut_a(0); return(PAGE_CUR_LE);
		case HA_READ_PREFIX_LAST:
		        ut_print_timestamp(stderr);
                        fprintf(stderr,
			  " InnoDB: Warning: Using HA_READ_PREFIX_LAST\n");
		        return(PAGE_CUR_LE);

		        /* InnoDB does not yet support ..PREFIX_LAST!
		        We have to add a new search flag
		        PAGE_CUR_LE_OR_PREFIX to InnoDB. */
+2 −1
Original line number Diff line number Diff line
@@ -82,6 +82,7 @@ class ha_innobase: public handler
			  HA_PRIMARY_KEY_IN_READ_INDEX |
			  HA_DROP_BEFORE_CREATE |
			  HA_NO_PREFIX_CHAR_KEYS |
			  HA_NOT_READ_PREFIX_LAST |
			  HA_TABLE_SCAN_ON_INDEX),
	  last_dup_key((uint) -1),
	  start_of_scan(0)
@@ -96,7 +97,7 @@ class ha_innobase: public handler
	ulong index_flags(uint idx) const
	{
	  return (HA_READ_NEXT | HA_READ_PREV | HA_READ_ORDER |
		  HA_KEY_READ_ONLY | HA_NOT_READ_PREFIX_LAST);
		  HA_KEY_READ_ONLY);
	}
  	uint max_record_length() const { return HA_MAX_REC_LENGTH; }
  	uint max_keys()          const { return MAX_KEY; }