With the release of Gurobi 9.0, you can now solve models with non-convex quadratic constraints and objectives. However, you may encounter one of the following errors when solving a non-convex quadratic problem:
Error 10020: Objective Q not PSD
Error 10021: Quadratic equality constraints
By default, Gurobi 9 only solves a non-convex quadratic problem if the non-convex quadratic constructs can be removed or linearized during presolve.
To resolve this issue, set the NonConvex parameter to 2.
With this parameter setting, Gurobi solves non-convex quadratic problems by translating them into bilinear form, then applying spatial branching. Enforcing this parameter change should make you aware of the added complexity of the model.