Issue 1:
Using the example from the docs here: http://pandas.pydata.org/pandas-docs/dev/io.html#storing-multi-index-dataframes but specifying the 'columns' in [1219] keyword when selecting:

store.select('df_mi', columns=['A', 'B'])

leads to the failure below. The original example works, as does selecting columns with a standard index. I'm on a fairly recent master (~1 week) and Python 3.3. Hope this is not expected and I did not miss an issue, I did search for a bit.

KeyError Traceback (most recent call last)
<ipython-input-67-678a9c77d998> in <module>()
----> 1 store.select('df_mi', columns=['A', 'B'])

/home/xxx/anaconda/envs/py33/lib/python3.3/site-packages/pandas-0.12.0.dev_2bd1cf8-py3.3-linux-x86_64.egg/pandas/io/pytables.py in select(self, key, where, start, stop, columns, iterator, chunksize, **kwargs)
413 return TableIterator(func, nrows=s.nrows, start=start, stop=stop, chunksize=chunksize)
414
--> 415 return TableIterator(func, nrows=s.nrows, start=start, stop=stop).get_values()
416
417 def select_as_coordinates(self, key, where=None, start=None, stop=None, **kwargs):

/home/xxx/anaconda/envs/py33/lib/python3.3/site-packages/pandas-0.12.0.dev_2bd1cf8-py3.3-linux-x86_64.egg/pandas/io/pytables.py in get_values(self)
931
932 def get_values(self):
--> 933 return self.func(self.start, self.stop)
934
935

/home/xxx/anaconda/envs/py33/lib/python3.3/site-packages/pandas-0.12.0.dev_2bd1cf8-py3.3-linux-x86_64.egg/pandas/io/pytables.py in func(_start, _stop)
408 # what we are actually going to do for a chunk
409 def func(_start, _stop):
--> 410 return s.read(where=where, start=_start, stop=_stop, columns=columns, **kwargs)
411
412 if iterator or chunksize is not None:

/home/xxx/anaconda/envs/py33/lib/python3.3/site-packages/pandas-0.12.0.dev_2bd1cf8-py3.3-linux-x86_64.egg/pandas/io/pytables.py in read(self, *args, **kwargs)
3142 def read(self, *args, **kwargs):
3143 df = super(AppendableMultiFrameTable, self).read(*args, **kwargs)
-> 3144 df.set_index(self.levels, inplace=True)
3145 return df
3146

/home/xxx/anaconda/envs/py33/lib/python3.3/site-packages/pandas-0.12.0.dev_2bd1cf8-py3.3-linux-x86_64.egg/pandas/core/frame.py in set_index(self, keys, drop, append, inplace, verify_integrity)
2795 names.append(None)
2796 else:
-> 2797 level = frame[col].values
2798 names.append(col)
2799 if drop:

/home/xxx/anaconda/envs/py33/lib/python3.3/site-packages/pandas-0.12.0.dev_2bd1cf8-py3.3-linux-x86_64.egg/pandas/core/frame.py in __getitem__(self, key)
1992 else:
1993 # get column
-> 1994 return self._get_item_cache(key)
1995
1996 def _getitem_slice(self, key):

/home/xxx/anaconda/envs/py33/lib/python3.3/site-packages/pandas-0.12.0.dev_2bd1cf8-py3.3-linux-x86_64.egg/pandas/core/generic.py in _get_item_cache(self, item)
572 return cache[item]
573 except Exception:
--> 574 values = self._data.get(item)
575 res = self._box_item_values(item, values)
576 cache[item] = res

/home/xxx/anaconda/envs/py33/lib/python3.3/site-packages/pandas-0.12.0.dev_2bd1cf8-py3.3-linux-x86_64.egg/pandas/core/internals.py in get(self, item)
1646
1647 def get(self, item):
-> 1648 _, block = self._find_block(item)
1649 return block.get(item)
1650

/home/xxx/anaconda/envs/py33/lib/python3.3/site-packages/pandas-0.12.0.dev_2bd1cf8-py3.3-linux-x86_64.egg/pandas/core/internals.py in _find_block(self, item)
1773
1774 def _find_block(self, item):
-> 1775 self._check_have(item)
1776 for i, block in enumerate(self.blocks):
1777 if item in block:

/home/xxx/anaconda/envs/py33/lib/python3.3/site-packages/pandas-0.12.0.dev_2bd1cf8-py3.3-linux-x86_64.egg/pandas/core/internals.py in _check_have(self, item)
1780 def _check_have(self, item):
1781 if item not in self.items:
-> 1782 raise KeyError('no item named %s' % com.pprint_thing(item))
1783
1784 def reindex_axis(self, new_axis, method=None, axis=0, copy=True):

KeyError: 'no item named foo'

Issue 2:
I'm using pandas 0.12.0 and having issue with accessing hierarchically indexed data frame elements using the ix. As a note, the issue is coming only when I have datetime objects in level 0 of hierarchical index.

arrays = [date_range('2013-11-15', periods=4).repeat(2),

['one', 'two', 'one', 'two', 'one', 'two', 'one', 'two']]

tuples = list(zip(*arrays))

index = MultiIndex.from_tuples(tuples, names=['first', 'second'])

df = DataFrame(randn(8, 3), index=index, columns=['A', 'B', 'C'])

df.ix['2013-11-15', 'one']

KeyError Traceback (most recent call last)

in ()

----> 1 df.ix['2013-11-15', 'one']

~/env/lib/python2.6/site-packages/pandas/core/indexing.pyc in getitem(self, key)

45 pass

46

---> 47 return self._getitem_tuple(key)

48 else:

49 return self._getitem_axis(key, axis=0)

~/env/lib/python2.6/site-packages/pandas/core/indexing.pyc in _getitem_tuple(self, tup)

251 def _getitem_tuple(self, tup):

252 try:

--> 253 return self._getitem_lowerdim(tup)

254 except IndexingError:

255 pass

~/env/lib/python2.6/site-packages/pandas/core/indexing.pyc in _getitem_lowerdim(self, tup)

384 new_key, = new_key

385

--> 386 return getattr(section,self.name)[new_key]

387

388 raise IndexingError('not applicable')

~/env/lib/python2.6/site-packages/pandas/core/indexing.pyc in getitem(self, key)

45 pass

46

---> 47 return self._getitem_tuple(key)

48 else:

49 return self._getitem_axis(key, axis=0)

~/env/lib/python2.6/site-packages/pandas/core/indexing.pyc in _getitem_tuple(self, tup)

251 def _getitem_tuple(self, tup):

252 try:

--> 253 return self._getitem_lowerdim(tup)

254 except IndexingError:

255 pass

~/env/lib/python2.6/site-packages/pandas/core/indexing.pyc in _getitem_lowerdim(self, tup)

361 for i, key in enumerate(tup):

362 if _is_label_like(key) or isinstance(key, tuple):

--> 363 section = self._getitem_axis(key, axis=i)

364

365 # we have yielded a scalar ?

~/env/lib/python2.6/site-packages/pandas/core/indexing.pyc in _getitem_axis(self, key, axis)

411 return self._get_loc(key, axis=axis)

412

--> 413 return self._get_label(key, axis=axis)

414

415 def _getitem_iterable(self, key, axis=0):

~/env/lib/python2.6/site-packages/pandas/core/indexing.pyc in _get_label(self, label, axis)

59 return self.obj._xs(label, axis=axis, copy=False)

60 except Exception:

---> 61 return self.obj._xs(label, axis=axis, copy=True)

62

63 def _get_loc(self, key, axis=0):

~/env/lib/python2.6/site-packages/pandas/core/frame.pyc in xs(self, key, axis, level, copy)

2358

2359 if axis == 1:

-> 2360 data = self[key]

2361 if copy:

2362 data = data.copy()

/u/pullurur/dig/quantinvest/env/lib/python2.6/site-packages/pandas/core/frame.pyc in getitem(self, key)

2001 # get column

2002 if self.columns.is_unique:

-> 2003 return self._get_item_cache(key)

2004

2005 # duplicate columns

~/env/lib/python2.6/site-packages/pandas/core/generic.pyc in _get_item_cache(self, item)

665 return cache[item]

666 except Exception:

--> 667 values = self._data.get(item)

668 res = self._box_item_values(item, values)

669 cache[item] = res

~/env/lib/python2.6/site-packages/pandas/core/internals.pyc in get(self, item)

1653 def get(self, item):

1654 if self.items.is_unique:

-> 1655 _, block = self._find_block(item)

1656 return block.get(item)

1657 else:

~/env/lib/python2.6/site-packages/pandas/core/internals.pyc in _find_block(self, item)

1933

1934 def _find_block(self, item):

-> 1935 self._check_have(item)

1936 for i, block in enumerate(self.blocks):

1937 if item in block:

~/env/lib/python2.6/site-packages/pandas/core/internals.pyc in _check_have(self, item)

1940 def _check_have(self, item):

1941 if item not in self.items:

-> 1942 raise KeyError('no item named %s' % com.pprint_thing(item))

1943

1944 def reindex_axis(self, new_axis, method=None, axis=0, copy=True):

KeyError: u'no item named one'