Outlook 2010 beta and E.164 number format updater

Well hello again; it’s been a while.
Normal service should now infrequently resume.

I thought I’d update the instructions of a previous post, after I was showing someone how to use my old “Contacts updater” application to make all their Outlook contact phone numbers be E.164 compliant.

(see blogs passim. eg here, here, or here.)

Now the little app I reference is an Outlook custom form, meaning it gets installed into the Exchange mailbox folder, rather than some client-side Add-in to Outlook. Custom Forms have been available since the days of the Exchange 4.0 client and later Outlook, as the installed forms show up an item on the “Action” menu within the view of the folder.

image

Now that Outlook 2010 has adopted the Fluent UI (aka the “Ribbon”), things have moved somewhat…

Just like the early days of Office 2007, the initial response from some users might be to get annoyed that things are in a different place, but in most cases, it’s a great improvement.

Since custom forms in Outlook have largely faded into the sunset, this particular one gets a bit more obscure… it’s a question of going to “New Items” within the folder, then selecting the “Custom Forms” pop-out (only available when you actually have some custom forms installed in that folder), and any forms installed will be presented there.

The instructions for the install of the custom form above are pretty much the same on Outlook 2010, except that instead of going to Tools | Options | Other | Advanced to get to the custom forms management, go to “Office button” | Options | Advanced.

 

Office 2007 SP2 now available

I’ve been beta testing Office 2007 SP2 since the beginning of the year, and it’s been great – the single biggest reason to use it is the myriad improvements made to Outlook, in terms of stability & performance (particularly relating to search and to startup & closedown).

Download Office 2007 SP2 here

From the summary of what’s new, check out:

Microsoft Office Outlook

  • Performance improvements that apply to the following general responsiveness areas:
    • Startup
      Removes lengthy operations from initial startup.
    • Shutdown
      Makes Outlook exit predictably despite pending activities.
    • Folder View and Switch
      Improves view rendering and folder switching.
  • Calendar improvements
    Improves underlying data structures and the general reliability of calendar updates.
  • Data file checks
    Greatly reduces the number of scenarios in which you receive the following error message when you start Outlook:

    The data file ‘file name‘ was not closed properly. This file is being checked for problems.

  • Search reliability
    Improves search reliability when you use SP2 with Windows Desktop Search 4
  • Improvements to Really Simple Syndication (RSS)
    There are now fewer duplicated items.
  • Object Model improvements
    Now contains many customer-driven fixes.

For more information about these improvements and details about other Outlook fixes, click the following article number to view the article in the Microsoft Knowledge Base:

968774 Outlook 2007 improvements in the 2007 Microsoft Office suite Service Pack 2

Exchange 2010 beta & high availability strategies

Today, the Exchange team released details of Exchange 14, now to be known as Exchange Server 2010. [download here]. There’s plenty of new stuff in the box, but I’m just going to look at one: high availability & data replication.


[My previous missives on Exchange 2007 HA are here, here and here]


There are some interesting differences between 2007 and 2010, particularly in the way databases are handled and what that means for clustering.


THERE IS NO SINGLE COPY CLUSTER ANY MORE.


Single Copy Clusters, or the traditional way of deploying Exchange onto a Windows Cluster with several nodes sharing a copy of the data held in a central SAN, have quite a few downsides … like there being that Single Copy, or the fact that the storage hardware is typically complex and expensive.


There are other pretty major changes, like storage groups going away (it’s just a database now, a move that Exchange 2007 previewed by the advice that you should only have a single DB per SG), or the fact that databases are now the unit of failover (rather than the whole server…), or the ability now to install multiple roles on servers providing high availability – so you could deploy highly available, clustered/replicated environment to a small number of users, without having lots of boxes or VMs.


Oh, Local Continuous Replication goes away too…


Well, reading the documentation explains a bit more about how Exchange 2010 will change the way that high availability can be achieved – no more the need for a MSCS cluster to be set up first should make it simpler, for one. From that site:



Changes to High Availability from Previous Versions of Exchange



Exchange 2010 includes many changes to its core architecture. Two prominent features from Exchange 2007, namely CCR and SCR, have been combined and evolved into a single framework called a database availability group (DAG). The DAG handles both on-site data replication and off-site data replication, and forms a platform that makes operating a highly available Exchange environment easier than ever before. Other new high availability concepts are introduced in Exchange 2010, such as database mobility, and incremental deployment. The concepts of a backup-less and RAID-less organization are also being introduced in Exchange 2010.


In a nutshell, the key aspects to data and service availability for the Mailbox server role and mailbox databases are:



  • Exchange 2010 uses an enhanced version of the same continuous replication technology introduced in Exchange 2007. See the section below entitled “Changes to Continuous Replication from Exchange Server 2007” for more information.

  • Storage groups no longer exist in Exchange 2010. Instead, there are simply mailbox databases and mailbox database copies, and public folder databases. The primary management interfaces for Exchange databases has moved within the Exchange Management Console from the Mailbox node under Server Configuration to the Mailbox node under Organization Configuration.

  • Some Windows Failover Clustering technology is used by Exchange 2010, but it is now completely managed under-the-hood by Exchange. Administrators do not need to install, build or configure any aspects of failover clustering when deploying highly available Mailbox servers.

  • Each Mailbox server can host as many as 100 databases. In this Beta release of Exchange 2010, each Mailbox server can host a maximum of 50 databases. The total number of databases equals the combined number of active and passive databases on a server.

  • Each mailbox database can have as many as 16 copies.

  • In addition to the transport dumpster feature, a new Hub Transport server feature named shadow redundancy has been added. Shadow redundancy provides redundancy for messages for the entire time they are in transit. The solution involves a technique similar to the transport dumpster. With shadow redundancy, the deletion of a message from the transport database is delayed until the transport server verifies that all of the next hops for that message have completed delivery. If any of the next hops fail before reporting back successful delivery, the message is resubmitted for delivery to that next hop. For more information about shadow redundancy, see Understanding Shadow Redundancy.

Outlook Thread Compressor download now available

Nearly a year ago, I wrote about Thread Compressor on here – it’s an add-in to Outlook which removes unnecessary emails, on the assumption that most people reply to mail and leave the original intact, so you could keep the last mail in each branch of a thread, and remove all the others.


TC[1]


Way back when I was still developing TC, I tried to get it included on the Office Downloads section of Microsoft.com, but our legal department was (with some justification) very nervous about us offering a download which would go through the end user’s mailbox like a dose of salts, deleting stuff. So it stayed (more or less) an internal tool: I even started developing a “version 5” with a much groovier UI and some extra features.



Included in the v5 beta (which is a real pain to install nowadays – the previous v4.2.030 version has nearly the same feature set and is a lot more self contained), was a piece of logic which captured stats on TC usage and emailed them back to me.


Since many people at MS are still running that beta (it’s a long story, but the source code went south so it’ll never get out of “beta” state), I still get maybe 20-30 statistics mails a day…


Since August 2003 when the first statistics email arrived – from me, kind-of naturally – until 24th April 2007 (when I last did an analysis of the stats), TC v5 beta had scanned over 400m email messsages and had compressed over 30m, worth nearly half a terabyte of email data.


To the reader, the spoils


Well, I finally decided – in an “ask forgiveness rather than permission” move – to make the last complete and stable version available for download.


TC4[1]


It’s not particularly elegant looking by modern standards (given that most of it was written 7 years ago in VB6) but it does work, even on Windows 7 (x86 and x64) and Office 2007. Basically, anything post-Office 2000/Windows 2000 should be OK.


A reader called Mark Ruggles emailed me the other day and said:



“It is fantastic and it works like a champ in Outlook 2007. I turned it loose on my Inbox and my archive and I deleted 103Mb of redundant data. I sent it out to some of my colleagues and my manager used it cutting his archives down by 2Gb.

This is the coolest utility I’ve found in a long time.”


So, thanks to Mark’s comment, I’ve now registered www.threadcompressor.co.uk and posted install instructions and a download file up there.

SMSE – a System Center light hidden under a bushel

SMSE – pronounced (in the UK at least) as ‘Smuzzy’, short for Server Management Suite Enterprise – is a licensing package from Microsoft, which can be an amazingly effective way to buy systems management software for your Windows server estate.

Home

If you’re planning to virtualise your Windows server world, then SMSE is something of a no-brainer, since buying a single SMSE license for the host machine allows you to use System Center to manage not just the host but any number of guest (or child) VMs running on it.

Combine that with the license for Windows Server 2008 Datacenter Edition, which allows unlimited licensing for Windows Server running as guests, and you’ve got a platform for running & managing as many Windows-based applications servers as you can squeeze onto the box, running on any virtualisation platform.

System Center is the umbrella name given to systems management technologies, broadly encompassing:

  • Configuration Manager (as-was SMS, though totally re-engineered), which can be used for software distribution and “desired configuration state” management … so in a server example, you might want to know if someone has “tweaked” the configuration of a server, and either be alerted to the fact or maybe even reverse the change.
  • Operations Manager (or MOM, as it was known before this version), performs systems monitoring and reporting, so can monitor the health and performance of a whole array of systems, combined with “management packs” (or "knowledge modules” as some would think of them) which tell Ops Mgr how a given application should behave. Ops Mgr can tell an administrator of an impending problem with their server application, before it becomes a problem.
  • Data Protection Manager – a new application, now in 2nd release, which can be used either on its own or in conjunction with some other enterprise backup solution, to perform point in time snap shots of running applications and keep the data available. DPM lets the administrator deliver a nearer RTO and more up to date RPO, at very low cost.
  • Virtual Machine Manager – a new server, also in 2nd release, which manages the nuts & bolts of a virtual infrastructure, either based on Microsoft’s Hyper-V or VMWare’s ESX with Virtual Center. If you have a mixture of Hyper-V and VMWare, using VMM lets you manage the whole thing from a single console.

It’s easy to overlook managing of guests in a virtualised environment – the effort in doing such a project typically goes into moving the physical machines into the virtual world, but it’s equally important to make sure that you’re managing the operations of what happens inside the guest VMs, as much as you’re managing the mechanics of the virtual environment.

I’ve used a line which I think sums up the proposition nicely, and I’ve seen others quote the same logic:

If you have a mess of physical servers and you virtualise them, all you’re left with is a virtual mess.

Applying the idea of SMSE to a virtual environment, for one cost (at US estimated retail price, $1500), you get management licenses for Ops Manager, Config Manager, VMM and DPM, for the host machine and all of its guests.

Think of a virtualised Exchange environment, for example – that $1500 would cover Ops Manager telling you that Exchange was working well, Config Manager keeping the servers up to date and patched properly (even offline VMs), VMM managing the operation of the virtual infrastructure, and DPM keeping backups of the data within the Exchange servers (and maybe even the running VMs).

Isn’t that a bargain?

See the FAQ for SMSE for more information.

Look what I found in my loft: a 9-year old netbook

I splashed out a week or two ago, and bought a Samsung NC10 netbook – a bargain at under £300, and it runs Windows 7 really well.

Impressed with the size and utility of the thing, I recalled a forerunner of the netbook, so went rooting around in my “box of old technology that it pretty much useless but cost money so I can’t ever throw it away”, in the loft.

I came across an old laptop that in its time was known as a “sub-notebook”: we got two of these machines courtesy of Sony, to demonstrate Exchange 2000, specifically the Conferencing Server version, at a big partner event in Birmingham. It was, to date, the biggest audience I’ve ever stood in front of, at about 1,400 people. I had a few minutes to demo the still-in-beta Exchange 2000, and would be doing it jointly with the host for the conference, Jonathan Ross (gulp).

Exchange 2000 Conferencing Server – aka “Jasper”

I’m now struggling to remember when this was, but since Exchange 2000 released in November 2000 (as discovered by the very useful Microsoft Support Lifecycle page), I reckon it must have been early/mid-2000, which would mean the little Vaio has to be at least 8 or 9 years old.

Sony Vaio PCG-C1XN

The two Vaios we had were great – well, great for the time anyway, although even then they were very functionally compromised even when new. The one thing you could say about the machine was it was small, and cool.

vaioCertainly not fast – a 266MHz Celeron CPU (a cut down Pentium II, in essence, for our younger readers), 64Mb of RAM and a 6.4Gb hard disk.

The machines originally came with Windows 98, but we decided to put Windows 2000 on them for the demo; subsequently, I upgraded it to Windows XP and it’s probably a bit too much for the little mite. Suffice to say, it won’t be getting any further along the Windows evolutionary scale.

Other features of note were the webcam (one of – if not the – first laptops to come with one built in, which was the reason we wanted them for the Conferencing demo). A single USB port, FireWire (or iLink as Sony insisted on calling it), a PCMCIA slot, infra-red (you don’t get that any more now, do you?) and a dongle which had composite-video and VGA, complete the mix.

So for our demo we had to install an early Wifi network (it might have been the very first 802.11b from Compaq, costing hundreds of pounds for the router and at least £100 per PCMCIA card). All of this for 8 minutes of Woss-y glory, swept away in the sands of time.

Sony never did ask for it back – I hung onto one, and Steve kept the other. I bet he’s still got it somewhere too.

Dust the old girl off

Enough of this misty eyed nonsense. Amazingly, on plugging the machine in and powering up (apart from my going into the BIOS and setting the clock), it started to resume from hibernate – and dropped me back into the logon prompt for WinXP. I had some head scratching to do, to remember the password – but when I logged in, it was the first time for 6 years and 3 months.

P1010112

 P1010113

Surprisingly, the Vaio is about the same thickness as my Samsung, so it doesn’t look quite as archaic as you might expect a 9-year old laptop to.

It could even be called a “Netbook”, except there’s no networking on the thing – certainly no wireless, and even dial-up would have required an old modem like the Xircom PCMCIA card I literally just found in my office drawer.

Probably the biggest difference is the price when new. Adjusting for inflation and taking into account what the Vaio would have originally cost, it’s probably nearer £3,000 than the £300 for my NC10.

That’s Moore’s law for ya.

The biggest file I’ve ever seen – 3Tb PUB.EDB

Well I haven’t seen this for myself, but I was sent a screenshot of it. Actually, it was 3 different Exchange public folder servers, each of which had ~3Tb of public folder data…

image

That’s scary and impressive in equal measure.

Reminds me of some of the stories people posted in response to my How does your Exchange garden grow? post nearly 3 years ago, on the Exchange Team blog…

Tip for finding when an appointment was created

Here’s a tip for when you suspect someone has magicked up an appointment to coincidentally collide with an Outlook meeting request you sent them…

In your own calendar (and other people’s), you can see when a meeting was scheduled (ie request was sent or created), as well as other facts (like when you accepted it) – eg:

image

If a blocked out time in the calendar is just an appointment (ie something that was just put there by the owner of the calendar), you don’t see the date it was added…

image

Remember, they’re all just forms in the end 

Way back when Exchange was young (it started at 4.0), the design was that emails/meeting requests etc, were just an "item" (which is a collection of fields, different depending on the type of item it is), and a "form" which was associated with a particular kind of item using the Message Class to denote it.

In other words, an email message would have fields like Sender, date, recipients, subject, etc. And when you went to open a message, the Exchange client (later, Outlook) would look at the class on the item (IPM.Note, for a message) and would find the appropriate form to open that item. Clear? If you really want examples of lots of different Outlook items, see MSDN.

Anyway. If I’m looking at an appointment which wasn’t a "meeting" (ie it was just put into my or someone else’s calendar, not via a meeting request/acceptance), I might not be able to see the date it was created, but the underlying item definitely does have that property. Displaying it in Outlook is pretty straightforward, if a little contrived. Here’s one quick & dirty method of doing so (I may post a more elegant solution if there’s interest)…

image1. Get to "Design this form"

Older versions of Outlook had a Developer item on the menu structure which allowed you to select (via several pop-outs if I recall) to design the current form. Outlook 2007 simplified the menus (now using the Ribbon) and no longer shows that Developer menu. One quick way of putting it back is to add that specific command to the "Quick Access Toolbar"…

Click on little down-arrow just to the right of the Quick Access Toolbar on the top left of a form (eg the form of the appointment you’re looking at), then choose "More Commands"…

On the resulting dialogue, select Developer tab in the "Choose commands from:" drop-down list box, then scroll down to find "Design This Form" (note "This Form", not "a Form…". Select that command, click on Add, then OK out of the customize dialogue.

image

Now you have a little icon supposed to represent designing actions (pencil, ruler, set square) in your toolbar:

image

Click on the icon and you get into the form designer, with the current item being loaded. You’ll see a bunch of tabs – these correspond to "pages" within the form, and any in brackets are hidden. Select the "All fields" tab, choose Date/Time fields from the drop-down (or try "All Appointment fields").

image

You should now see just the date fields, including the original creation date…

image

This might seem a real palaver, but once you have the icon on the QAT, it’s a 5 second action to show the dates… and can be very handy 🙂

Exchange 2007 clustering advice

I appreciate it’s been a while since I blogged last – a combination of "not much to talk about, really" with even more "no time to talk about it"… 🙁

Anyway, a few questions came in the other day from a reader:

SCR and CCR seems to work with SAN and DAS. When DAS (direct attached or local storage) is used, and it most probably it’s attached to the Active node, how does the Passive node function if it hasn’t got connection to the DAS/Local storage of the Active node?

In CCR, it’s important to realise that the passive node has its *own* set of disks, which contain its *own* copy of the data – doesn’t really matter if they are DAS or SAN disks (at least not conceptually). So, in a CCR failover scenario, the (as was) passive node switches to being the active node and uses its own copy of the database (which by now becomes the main one). SCR is different in the way failover happens, but in principle it’s similar – the secondary copy of the data is brought online and takes over servicing the clients, but using its own copy of their database.

-Some clients are indicating that having CCR or SCR one wouldn’t have a need for Backup of mailbox servers. Do you have any comments?

Absolutely not. That’s like saying, because my car has an airbag, I don’t need to wear a seatbelt. Check out the High Availability Strategies section of the Exchange documentation for more detail on the options.

Having CCR gives you the ability to fail over in effectively real time, for the purposes of planned maintenance or after an unexpected failure. SCR adds the possibility of having another replica of the data, potentially in a different location, which can be brought online through a manual recovery process (whereas CCR will bring the data back automatically, since it’s part of a cluster).

Backup is still important (What happens if you lose all servers? What about long-term archival of data?) There’s always the possibility that databases could be corrupted or infected in some way, and if that happened, the replica(s) of the databases would also likely suffer the same fate … so taking regular backups would give you the ability to roll back to earlier versions of the database.

There’s always the scenario where users delete some information that needs to be brought back sometime in the future – there are various options around item recovery with Exchange 2007, but if it was deleted (say) a year ago, then you’d be looking at a backup as the means of recovery.

Data Protection Manager would be worth looking into, to help with backup requirements – it allows you to take regular snapshots of a running server, which can later be spooled out to offline storage.

– In SCR, is there a bandwidth utilization estimate used for replicating the Active and Standby/passive node? I understand that in CCR and SCR the log sizes are reduced to 1MB from standard 5MB though.

The log files in Exchange 2007 are reduced from 5Mb to 1Mb anyway – partly because of CCR and LCR (and later SCR), but even if you don’t configure any of the replication technology, you’ll still be on 1Mb logs.

As far as how much bandwidth you’re going to need between nodes for the purposes of replication, well that depends – if your servers are very busy, then they’ll obviously need to shift more data, and latency will come into play.

There is a detailed section in the Exchange TechCenter online documentation which covers planning for replication at a hardware, software configuration and network level.