Question

Shipsheep on Fri, 14 Jul 2017 11:03:51


I am testing the preview with a basic (50 units) instance. Initially, I had the issue with connections not being released (same as other users described in https://social.msdn.microsoft.com/Forums/en-US/74bb38b4-9dc7-4029-977e-514917a74feb/idle-connections-are-not-released). This seems to have been fixed a few days ago, so I removed the temporary workaround I had implemented on the client side. I am now using a pool of up to 5 + 1 connections and these seem to get properly released.

I am seeing a constant increase of compute unit percentage and memory usage graph. It looks like a memory leak on the server. There should be no increased usage by my app, and definitely not one that is linear (I would expect to see spikes during times when I was running test loads, and very low usage during other times). In addition, DB requests seem to be incredibly slow in general, even though the web app and the DB are in the same region. This is an existing app that runs perfectly smooth with a dedicated 1 Core / 2 GB PostgreSQL server.


Sponsored



Replies

Sunil Kamath on Sat, 15 Jul 2017 16:47:39


Hi,

Initially as you point out, we had a bug where we were not releasing the connection and this was fixed several weeks ago. The compute unit percentage is max (cpu percent and memory percent). When the workload is running, the pages are cached and kept in cache. Therefore when you stop the workload, the memory consumption will still show as utilized as the pages are still cached in memory. But if you observe that when no load is running on the server and the memory is still increasing, then we need to investigate this further.

As for the performance, Basic tier is not suitable if your workload is IO intensive and need lower IO latency. Standard tier is best for that purpose. Have you tried with Basic 100 compute units, as that seems to be more appropriate given you are currently running on 1 core. Basic 100 equates to 1 core.

can you send me your server name and details to sunil.kamath@microsoft.com, if you observe memory usage increasing when no workload is running, so we can investigate ?

Thanks

Shipsheep on Thu, 07 Sep 2017 11:54:26


Just a few updates:

  • Switching to Basic with 100 compute units did nothing for performance or increasing compute unit %.
  • The issue with constantly increasing compute unit % had gotten much better since August 21, there was still a slight increase, but nowhere near the earlier increase.
  • I asked to be whitelisted for Standar tier. This happened between Sept 5 and 6.
  • Around that time, the DB "restarted" and came back up with 38% compute units (was around 25% before, and never more than 10% after a "restart"). And the bug that caused idle connections not being released reappeared (see https://social.msdn.microsoft.com/Forums/azure/en-US/74bb38b4-9dc7-4029-977e-514917a74feb).
  • Since we now have a subscription that's whitelisted for Standard tier, I have also created a new instance with Standard tier. Performance does seem noticeably better than Basic tier, but I can't really tell for sure, as this instance also has the bug that connections are not being released.