That is not the way that HTML or CSS work. There is no relationship between the two div's that represent the two different columns, thus neither is aware how long the other is. I've seen code that uses absolute positioning and percentages as a way to accomplish this, but those solutions seem to have side effects in some circumstances thus I don't use them.
In the old days tables were used for this purpose as a table knows the max height of all its columns and sizes the whole thing accordingly - there is a relationship between the columns. Not so with two divs.
There is another technique for doing what you want I forgot to mention before, called faux columns. It uses a background image that has the right side the same background as the sidebar column. It makes it look like the two columns are equal height even though they are not.