Commit f9b94301 authored by unknown's avatar unknown
Browse files

ndb - rbr blobs: remove obsolete problem-causing temporary fix


sql/ha_ndbcluster_binlog.cc:
  remove fix_blob_events
storage/ndb/include/ndbapi/NdbDictionary.hpp:
  remove fix_blob_events
storage/ndb/src/ndbapi/NdbDictionary.cpp:
  remove fix_blob_events
storage/ndb/src/ndbapi/NdbDictionaryImpl.cpp:
  remove fix_blob_events
storage/ndb/src/ndbapi/NdbDictionaryImpl.hpp:
  remove fix_blob_events
parent 4e5c55e5
Loading
Loading
Loading
Loading
+0 −17
Original line number Diff line number Diff line
@@ -2082,23 +2082,6 @@ ndbcluster_create_event_ops(NDB_SHARE *share, const NDBTAB *ndbtab,
    if (share->flags & NSF_BLOB_FLAG)
      op->mergeEvents(true); // currently not inherited from event

    if (share->flags & NSF_BLOB_FLAG)
    {
      /*
       * Given servers S1 S2, following results in out-of-date
       * event->m_tableImpl and column->m_blobTable.
       *
       * S1: create table t1(a int primary key);
       * S2: drop table t1;
       * S1: create table t2(a int primary key, b blob);
       * S1: alter table t2 add x int;
       * S1: alter table t2 drop x;
       *
       * TODO fix at right place before we get here
       */
      ndb->getDictionary()->fix_blob_events(ndbtab, event_name);
    }

    int n_columns= ndbtab->getNoOfColumns();
    int n_fields= table ? table->s->fields : 0; // XXX ???
    for (int j= 0; j < n_columns; j++)
+0 −1
Original line number Diff line number Diff line
@@ -1783,7 +1783,6 @@ public:
#ifndef DOXYGEN_SHOULD_SKIP_INTERNAL
    const Table * getTable(const char * name, void **data) const;
    void set_local_table_data_size(unsigned sz);
    void fix_blob_events(const Table* table, const char* ev_name);
#endif
  };
};
+0 −6
Original line number Diff line number Diff line
@@ -1502,12 +1502,6 @@ NdbDictionary::Dictionary::getNdbError() const {
  return m_impl.getNdbError();
}

void
NdbDictionary::Dictionary::fix_blob_events(const Table* table, const char* ev_name)
{
  m_impl.fix_blob_events(table, ev_name);
}

// printers

NdbOut&
+0 −24
Original line number Diff line number Diff line
@@ -4709,30 +4709,6 @@ NdbDictInterface::parseFileInfo(NdbFileImpl &dst,
  return 0;
}

// XXX temp
void
NdbDictionaryImpl::fix_blob_events(const NdbDictionary::Table* table, const char* ev_name)
{
  const NdbTableImpl& t = table->m_impl;
  const NdbEventImpl* ev = getEvent(ev_name);
  assert(ev != NULL);
  Uint32 i;
  for (i = 0; i < t.m_columns.size(); i++) {
    assert(t.m_columns[i] != NULL);
    const NdbColumnImpl& c = *t.m_columns[i];
    if (! c.getBlobType() || c.getPartSize() == 0)
      continue;
    char bename[200];
    NdbBlob::getBlobEventName(bename, ev, &c);
    // following fixes dict cache blob table
    NdbEventImpl* bev = getEvent(bename);
    if (c.m_blobTable != bev->m_tableImpl) {
      // XXX const violation
      ((NdbColumnImpl*)&c)->m_blobTable = bev->m_tableImpl;
    }
  }
}

template class Vector<int>;
template class Vector<Uint16>;
template class Vector<Uint32>;
+0 −2
Original line number Diff line number Diff line
@@ -604,8 +604,6 @@ public:
  NdbDictInterface m_receiver;
  Ndb & m_ndb;

  // XXX temp
  void fix_blob_events(const NdbDictionary::Table* table, const char* ev_name);
private:
  NdbIndexImpl * getIndexImpl(const char * name,
                              const BaseString& internalName);