Limit $\frac{x^2y}{x^4+y^2}$ is found using polar coordinates but it is not supposed to exist. Consider the following 2-variable function:

$$f(x,y) = \frac{x^2y}{x^4+y^2}$$

I would like to find the limit of this function as $(x,y) \rightarrow (0,0)$. 
I used polar coordinates instead of solving explicitly in $\mathbb R^2 $, and it went as the following:
$$ x = r \cos \theta, \qquad y = r\sin\theta $$ 
Hence,
$$\lim_{(x,y) \to (0,0)} \frac{x^2y}{x^4 + y^2} = \lim_{r \to 0}\frac{r^2\cos^2\theta(r\sin\theta)}{r^4\cos^4\theta + r^2\sin^2\theta}$$
This simplifies to,
$$ \lim_{r \to 0} \frac{r^3 \cos^2\theta\sin\theta}{r^2(r^2\cos^4\theta + \sin^2\theta)}$$
Simplifying $r^3/r^2$, we finally get;
$$\lim_{r \to 0} \frac{r (\cos^2\theta\sin\theta)}{r^2\cos^4\theta + \sin^2\theta}$$
Now from the above, we find that as $r \to 0$ the limit is $0$. 
I wanted to verify this answer so I checked on Wolfram Alpha. Explicitly without changing to polar coordinates, it said that the limit does not exist at $(0,0)$ and rightly so. Then how is it that with polar coordinates, the limit exists and is $0$? Am I doing something wrong in this method?
Also, what should I do in this situation, and when should I NOT use polar coordinates to find limits of multi-variable functions?

The limit is not defined because in order for the limit to exist, the value of the function for every possible path to $(0,0)$ must tend to the same finite value.  When $y = x^2$, you have not necessarily shown that the limit is in fact $0$.  When you transformed to polar coordinates and then took the limit as $r \to 0$, you are assuming that $\theta$ is a fixed constant.  Therefore, you are looking only at paths that follow a straight line to the origin.


Mathematica code:
F[x_, y_] := x^2 y/(x^4 + y^2)
op = ParametricPlot3D[{r Cos[t], r Sin[t], F[r Cos[t], r Sin[t]]},
     {r, 0, Sqrt[2.1]}, {t, -Pi, Pi}, PlotPoints -> 40, MaxRecursion -> 8,
     Mesh -> {10, 48}, PlotRange -> {{-1, 1}, {-1, 1}, {-1/2, 1/2}}, 
     SphericalRegion -> True, Axes -> False, Boxed -> False];
an = Show[op, ViewPoint -> {{Cos[2 Pi #], Sin[2 Pi #], 0}, {-Sin[2 Pi #], 
     Cos[2 Pi #], 0}, {0, 0, 1}}.{1.3, -2.4, 2}] & /@ (Range[40]/40);

