Dave indexes on metadata tables follow a different path. Their definition is bootstrapped. Check how objects_uniq_idx is created on OBJECTS metadata table. Code is in sqlcomp/CmpSeabaseDDL* files. anoop
-----Original Message----- From: Dave Birdsall [mailto:[email protected]] Sent: Tuesday, April 19, 2016 10:53 AM To: [email protected] Subject: Playing with metadata tables Hi, I’ve been playing with adding an index to one of the metadata tables in Trafodion. One obstacle I’m running into is that at ‘initialize trafodion’ time, I get an internal error from the binder. It is executing an INSERT against the table that I added an index to. The assert is from LeafInsert::bindNode; the list of target columns in index maintenance is of a different length than the baseRefCols list. They should be the same. The problem seems to be in the construction of the index descriptor for the index I’ve added. So, I’m looking for the logic that creates these index descriptors in the compiler. I’m guessing it is somewhere in optimizer/NATable.cpp, in special case logic for bootstrapping metadata tables. Can anyone save me a bit of time and point me to that logic? Thanks, Dave
