Custom order for Mysql array

At first glance, I would think your query isn’t correct. Are you echoing out the variables to make sure they are correct? If you are setting

'post_per_page' => 4

and you are getting 5 posts, then something seems a bit off. Where it is a number, I believe you can leave off the quotes around it. If that doesn’t fix it, I would echo out $meta1 to make sure that is querying correctly, then I would even try

'order' => 'DESC'