Bug 859732 - 3/N: backend changes.
Bug 859732 - 4/4: fix test cases.