you should use the columnident to represent the key for a partition value for, i don't understand why you use strings all over the place for this, this makes it hard to compare and is inefficient.