• Quick perfmon check to detect potential memory leak in Windows

    The below counters are just to be taken as indicators if you suspect a memory leak on your machine; there are other Tools that are designed for detecting precisely memory leaks, but you can start with understanding what Working Set – Private, Private Bytes and Working Set indicate and watching the below perfmon counters …

    - If Windows 2008 or later:

    \\Server\Process(*)\Working Set - Private

    The above counter will tell you how much memory each process is using – it counts the memory allocated just for that specific process, excluding the memory used by the process that can be shared by other processes. So it’s the most accurate process memory counter that can tell us if we have a memory leak.

    - If Windows 2003 or earlier :

    \\Server\Process(*)\Private Bytes

    This one reports bytes allocated exclusively for a specific process; its value tends to rise for a leaking process.

    \\Server\Process(*)\Working Set

    The above one reports the shared and private bytes allocated to a process; its value tends to rise for a leaking process. (WS Shared bytes correspond to physical memory area that the process shares with other processes while WS private bytes shows memory area only taken by the process itself)

    - All versions:

    \\Server\Memory\Available Bytes (for Windows 2003 or earlier)

    or

    \\Server\Memory\Available MBytes  (For windows 2008 or later – easier to read without having to convert from Bytes to MB)

    References:

    - Investigating User-Mode Memory Leaks

    http://technet.microsoft.com/en-us/library/cc938582.aspx

    - What is private bytes, virtual bytes, working set?

    http://stackoverflow.com/questions/1984186/what-is-private-bytes-virtual-bytes-working-set

  • Outlook Shared calendars quick note – cache mode and online mode for Shared folders

    Q: What’s the impact of a user having lots of Shared calendars opened or just configured in his Outlook profile ? Is the calendar connection opened “on access” or is the connection made everytime the user opens Outlook ? What if the Outlook (2010, 2013) user has checked the “download Shared folders” to cache all Shared folders locally ? Are all calendars downloaded as the user opens Outlook ? Or is the download in the OST of Shared Calendars done on access basis only?

    Screenshot 1: this is the place where you activate cached mode for Shared Folders as well (Outlook 2010, 2013)

    image

    Below are a few elements of answers, based on tests and real life expériences:

    1- If the user didn’t have cached mode enabled for Shared Folders, but already had 10 calendars configured on their profile, and then if later on we enable cached mode for Shared Folders, these 10 calendars will be “downloaded” onto the OST file when users access these only – not all at once.

    2- If the user has already cached mode enabled for Shared Folders, it’s when they will add each calendar that Outlook will download a copy of the calendar the first time. But if they uncheck the box beneath the shared calendar name, and don’t access it for a while, and then after 1 month they check the box beneath this shared calendar because they need to access it, Outlook will update the data with the data from the last month since last time they accessed it. Updates download of calendars is on access only when “Download Shared folders” is checked on Outlook (2010, 2013)

    As a summary, if the user has cached mode enabled, calendars will be updated when they will access the calendar, if users doesn’t have cached mode enabled, calendar connection will be on access only as well.

    So in conclusion, the calendar update (for cached mode) or calendar access (for online mode) occurs only when the user clicks on the calendar or switches from the “Mail” view to the “Calendars” view.

    Quick illustrations below:

    Screenshot 2: the bar where you switch from Mail-only view to Calendar-only view => changing this, if in the “Calendar” view you checked a few calendar, connection (online mode) or update (cached mode for Shared Folders) will be triggered for the checked calendars only

    clip_image001

    Screenshot 3: the calendar view with the list of calendars: only the checked ones will be accessed (online mode) or updated (cached mode for Shared Folders)

    image

  • Exchange 2007 and Exchange 2010 on Windows 2008 or Windows 2008 R2 – Updated TCP Chimney and RSS settings experience

    See info below, and let me know what you think:

    http://blogs.technet.com/b/samdrey/archive/2013/12/02/exchange-2007-2010-2013-on-windows-2008-2008-r2-check-tcp-chimney-windows-settings-and-status.aspx 

    Cheers,

    Sam.

  • Exchange 2013 Tip – Limitation on receive connector’s IP address list

    Exchange 2013 has a 1300-ish limit on the number of allowed IPs we can set in the list (the limit is on the corresponding AD attribute actually). Here are a few tips to workaround this limitation:

    • create another receive connector with remaining IP addresses with the same set of permissions.

    You get another 1300 ~ IPs that can be added.

    • consider consolidating those IPs into supernet ranges. There are some good calculators you can use online that will do that for you.

    For example instead of

    192.168.1.1

    192.168.1.2

    192.168.1.3

    Use 192.168.1.1/30

    => One entry – 3 IPs

    Thanks to Akshay Katti (PFE India) and Richard Timmering (PFE US) for these !

    Cheers,

    Sam.

  • Powershell – exporting multivalued properties (Draft)

    This one is just for me to remember; more explanations later on

    get-service | `
    select name,@{Name='ServicesDependedOn';Expression={[string]::join(";",($_.ServicesDEpendedOn.name))}} | export-csv $env:userprofile\desktop\testExport.csv