Things I Learnt Today

June 24, 2008

Versioning in Outlook 2003

Filed under: Client, Windows — Ding @ 1:27 pm

I spotted a weird thing today. Installing a bunch of patches for Outlook 2003, and magically without actually installing Office 2003 SP 3, I ended up with Outlook reporting it was SP 3…..

First of all I checked what everything is about on the following link :

http://support.microsoft.com/kb/821549

When I started out, Outlook reported 11.0.6568.6568. This is Outlook 2003 SP 2. All is good.

There is then a bunch of different Office fixes that I wanted to install :

949044
943985
943983
945432
947355
943973
943649
946254
945185

It seems that the following happens :

Then Outlook 2003 Service Pack 2 – version info says 11.0.6568.6568 – SP 2
Installed 945432 – version info says 11.0.8206.6568 – SP 2
Installed 949044 – no change
Installed 943985 – no change
Installed 943983 – no change
Installed 947355 – version info says11.0.8206.8202 – SP 3

How very odd.

http://www.microsoft.com/technet/security/bulletin/ms08-015.mspx is 945432, and changes the version in Help -> About to 11.0.8206.6568. http://www.microsoft.com/technet/security/bulletin/ms08-016.mspx is 947355, and change sthe version in Help -> About to 11.0.8206.8202 … and it then says Service Pack 3.

With Enterprise Vault, Outlook 2003 SP 3 currently isn’t supported on the server, and the EV Deployment Scanner will complain if it detects it.

Terracopy

Filed under: Windows — Ding @ 8:26 am

I have seen this dotted around on blogs on the internet over the last few months. I had tried it out home briefly, but after a machine reinstall I had forgotten to go back and reinstall it.

Well I’ve corrected that little mistake, and I’ve installed it on all my machines at work as well. It’s just so cool. If nothing else, it gives you the ability to PAUSE your file copy operations.

Definitely go ahead and install it … http://www.codesector.com/teracopy.php

June 23, 2008

Installing SQL 2000 and 2005 on the SAME machine

Filed under: Uncategorized — Ding @ 7:26 am

June 16, 2008

Dropping in SQL

Filed under: SQL — Ding @ 1:48 pm

After a little sojourn in to the world of creating new indices, I then had to clear up a little bit. Here is how to delete an index :

Drop Index

You can delete an existing index in a table with the DROP INDEX statement.

Syntax for Microsoft SQLJet (and Microsoft Access):

DROP INDEX index_name ON table_name

Syntax for MS SQL Server:

DROP INDEX table_name.index_name

Syntax for IBM DB2 and Oracle:

DROP INDEX index_name

Syntax for MySQL:

ALTER TABLE table_name DROP INDEX index_name

Seems that various methods work at least on Microsoft SQL 2005, for example this worked for me :

drop INDEX [IX_Vault_Items] on vault

Note: idea taken from http://www.w3schools.com/SQL/sql_drop.asp

Marvels of SQL Tuning

Filed under: SQL — Ding @ 9:46 am

Okay so I am a TOTAL novice at doing this. Well, even worse than that. I know even less than a novice that has only just arrived at the first class to discover that he’s actually in a lecture about quantum physics.

But, I never give up with trying to learn stuff, and this is very interesting!

First of all there is a MOUNTAIN of stuff on the internet, some of it useful, some of it lacks context, some of it is repetitive (and I’m adding to that last category here I suppose). My experience though is worth sharing, because it’s from the novices perspective.

I have a bit of SQL that runs slowly. It seems all a-okay when there is only a handful of records in the table, but when ths size of the table grows, the performance falls through the floor.

This is the query :

SELECT
COUNT(*) as VaultCount,
SUM(ArchivedItems) as ArchivedItems,
SUM(CAST(ArchivedItemsSize as decimal(20, 0))) as ArchivedItemsSize
From VAULT

When this runs on a Vault table with millions of rows, then it takes a LONG time to run. What I did was take the query, and run it a number of times — 5 times in fact — then work out the average run time. If you run the query with the option to show the execution plan, you can see which bits of the query take the longest time… I didn’t really understand the output though to be fair, so I won’t go in to the details. The bit I did understand was the the index being used wasn’t efficient it seems.

The SQL 2005 SP 2 tuning wizard suggested the following index to add :

CREATE NONCLUSTERED INDEX
[_dta_index_Vault_6_165575628__K4_5] ON [dbo].[Vault]
(
[ArchivedItems] ASC
)
INCLUDE ( [ArchivedItemsSize]) WITH (SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY =
OFF, DROP_EXISTING = OFF, ONLINE = OFF) ON [PRIMARY]

After adding that index, I run the same query a number of times — 5 times in fact — this time the average run time is 20 seconds.

Result !

June 12, 2008

Altering text output in SQL Select Statements

Filed under: SQL — Ding @ 12:23 pm

Something I learnt today, which surprised me… When you do a select statement and it includes a wide text column SQL Query Analyzer truncates that by default to 256 characters.

To get around this go in to SQL Query Analyzer, then go to Tools -> Option, and click on the Results tab. You will see an entry saying :

Maximum characters per column: 256

Change that value, and hey presto it will show you a much wider column.

Installing Exchange 2003 into an Exchange 2007 Forest

Filed under: Uncategorized — Ding @ 11:45 am

So the short answer is that you can’t do this, but I thought I would try :

If you have a Windows 2003 domain (which has to be in Native Windows 2000 mode as a minimum) has Exchange 2007 installed in it. You can’t then install Exchange 2003.

When installing it, the Exchange 2003 setup doesn’t actually STOP me installing it.. but part way through the install, we get a nice failure message :

Setup failed whilst installing sub-component Microsoft Exchange Server-Level objects with error code 0×80072030 (please consult the installation logs for a detailed description). You may cancel the installation or try the failed setup again.

0×80072030 = No such Object.

The log file shows :

[14:57:55] Using cached result for domain “/dc=com/dc=strangedom”
[14:57:55] The required permissions have not already been set
[14:57:55] Leaving ScDetermineIfLocalDomainServerGroupHasAlreadyBeenACLedOnExchangeCT
[14:57:55] Entering CAtomServer::ScSetOrgLevelPermissions
[14:57:55] Opening /dc=com/dc=strangedom/cn=Configuration/cn=Services/cn=Microsoft Exchange/cn=Active Directory Connections CAtomServer::ScSetOrgLevelPermissions (f:\titanium\admin\src\udog\exsetdata\components\server\a_server.cxx:1871)
Error code 0X80072030 (8240): There is no such object on the server.
[14:57:55] CAtomServer::ScSetOrgLevelPermissions (f:\titanium\admin\src\udog\exsetdata\components\server\a_server.cxx:1896)
Error code 0X80072030 (8240): There is no such object on the server.
[14:57:55] Leaving CAtomServer::ScSetOrgLevelPermissions
[14:57:55] CAtomServer::ScSetDSPermissions (f:\titanium\admin\src\udog\exsetdata\components\server\a_server.cxx:632)
Error code 0X80072030 (8240): There is no such object on the server.
[14:57:55] Leaving CAtomServer::ScSetDSPermissions
[14:57:55] CAtomServer::ScAddOrRefreshDSObjects (f:\titanium\admin\src\udog\exsetdata\components\server\a_server.cxx:366)
Error code 0X80072030 (8240): There is no such object on the server.
[14:57:55] CAtomServer::ScAddDSObjects (f:\titanium\admin\src\udog\exsetdata\components\server\a_server.cxx:409)
Error code 0X80072030 (8240): There is no such object on the server.
[14:57:55] CBaseAtom::ScAdd (f:\titanium\admin\src\udog\setupbase\basecomp\baseatom.cxx:939)
Error code 0X80072030 (8240): There is no such object on the server.
[14:57:55] Service = ” CBaseServiceAtom::ScAdd (f:\titanium\admin\src\udog\setupbase\basecomp\basesvcatom.cxx:210)
Error code 0X80072030 (8240): There is no such object on the server.
[14:57:55] Leaving CBaseServiceAtom(Microsoft Exchange Server-Level Objects)::ScAdd
[14:57:55] CAtomServer::ScAdd (f:\titanium\admin\src\udog\exsetdata\components\server\a_server.cxx:141)
Error code 0X80072030 (8240): There is no such object on the server.
[14:57:55] Leaving CAtomServer::ScAdd
[14:57:55] mode = ‘Install’ (61953) CBaseAtom::ScSetup (f:\titanium\admin\src\udog\setupbase\basecomp\baseatom.cxx:842)
Error code 0X80072030 (8240): There is no such object on the server.

That in English means you’ve just entered a world of pain.

This was also confirmed by two different Exchange gurus… but it’s something I couldn’t find out a definite answer on initially.

Blog at WordPress.com.