It is entirely possible for one or more variables in a GP to have zero values. An assumption is made that x_i\gt0 when converting the problem to solvable form via the substitution y_i = \log x_i. However, if the convex solver finds a very large, negative value for y_i, then the conversion back to GP form x_i = e^{y_i} is likely to return a very small or zero value.

You will have to add artificial constraints to your problem, or normalize the problem in some way, if you want to force x_i to be positive. Remember, strict inequalities are treated as non-strict in CVX, so you will have to do something like x_i \ge 10^{-6}.

Still, if you find yourself having to force certain variables to be non-zero, it may suggest a larger, conceptual problem with your model, or an opportunity to simplify it.