Monthly Archives: September 2008

Blogging pause

Well, sort of…ok, here”s the deal: I”ve been having problems on my leg for several months now. After spending some time siting, I have lots of problems getting up…It”s as if the muscle won”t stretch….Initially, fibrosis was the most viable option, but it seems like that is not the problem…

It seems like it may be caused by some sort of back problem, so I was advised to avoid being sited at all costs (at least, until I get my next appointment with a specialist, which should only happen in a month or so). What this means is that until I have a definitive answer on what”s wrong with my leg (or should I say back?), I”ll have to take the advice and that means that this blog will suffer a bit. I will still be writing, but with much less frequency. I do want to finish my MVC series, bu,,t I guess it”ll take a little more time than I had though. Sorry about that :(

Enable Password Changing through OWA in Exchange 2003

Enable Password Changing through OWA in Exchange 2003

Unblock Attachments | HowTo-Outlook

Unblock Attachments | HowTo-Outlook

JQuery shipping with VS

I”ve just read on Scott”s blog that JQuery is going to be shipped with VS. This is simply fantastic! I”ve been a fan of JQuery for some time now. It”s impossible not like its amazing flexibility and simplicity…and now we”ll have intellisense on VS and it looks like the future client side controls of ASP.NET AJAX (including the AJAX toolkit) will be written over it.

This is just great and I think that it”s a good move by MS (reusing instead of trying to build something when there”s a great product out there) that should also be followed with other similar projects…

Silverlight 2 RC is out

I was keen on Silverlight more than a year ago, but unfortunately I”ve stopped studying it since I just had to work in other areas. It seems like now is the time to pick up where I left since Scott has announced the release of SL 2.0 R.

SharePoint Mirroring

There are number of posts and documents about how to setup mirroring of SharePoint content DB, but when I started my mirroring I stumbled over number issues, which I probably missed in documentation and which took some of my time to find out what was wrong. So in this post I’d like summarize all important parts of setting SharePoint mirroring.

Refer to detailed description in the end of this post to get the initial understanding.

  1. Prepare all you SharePoint Content databases for recovery. Use “ALTER Database <databasename> SET RECOVERY FULL;“ SQL command against all databases which will participate in backup and mirroring.
  2. (Optionally) Prepare content databases to be detached from web application, because in future you could rename it. To do this run “stsadm -o preparetomove -contentdb SQLSERVER:DBNAME –site <url>”.
  3. Make the SharePoint farm backup, and restore it on your Disaster Recovery (DR) box. Use OOTB backup/restore – Central Admin –> Operations –> Backup. The reason to restore SharePoint on DR box instead of straight mirroring is to have everything set and configured absolutely the same as on production box, to have minimum restoration time.
  4. After you restore your instance on DR box close SharePoint Central Admin. You don’t need it anymore :,,)
  5. Make SQL backup of your SharePoint DBs and their LOGs from production box, which will be mirrored. Usually only content databases are mirrored – search and other stuff can be missed, because it’s not so vital as content DB. I had number issues with making SQL backups and restore DBs on DR box, after you restored your new instance, so, I found more convenient to provide new copy of all DBs specially for mirroring. Make this backup with SQL commands “BACKUP DATABASE/LOG” and copy those files to DR box.
  6. Go to SQL Management Studio and delete all SharePoint DB which you want to mirror.
  7. Restore your databases with “NORECOVERY” attribute. UI doesn’t help you, so we are using SQL command “RESTORE DATABASE … NORECOVERY …” for this.
  8. After restoration completed you will see your DB with new icon and having “(recovering…)” status. Now time to apply the logs with the same “NORECOVERY” attribute and the similar command “RESTORE LOG … NORECOVERY…
  9. Wait a couple of minutes, allowing SQL server to restore some stuff.
  10. Now connect to Production SQL instance from DR box, select the database you just restored in DR, and right-mouse clicking, selecting tools->mirroring. Mirroring Wizards will start. Go through all steps. Ignore mirroring endpoints name difference. But pay attention on “encryption” settings on principal and on mirror boxes – they must be the same. Use next command to change these settings “ALTER ENDPOINT Mirroring FOR DATA_MIRRORING (ROLE = PARTNER, ENCRYPTION = SUPPORTED)” to be the same among principal and mirror boxes.
  11. Activate mirroring in the end of Mirroring Wizard, and you DB status will changed to “principal”/”mirroring”.
  12. You might have security error, saying that your DR box can’t connect to partner (production box). Go to SQL again and run the following “alter database myDatabase set partner = ”TCP://”;
  13. Repeat everything from step 6 to 11 for all SharePoint databases.
  14. To switch to DR box and start using mirrored databases, you need to go to mirroring window again and press “FAILOVER” button. This will switch your databases and DR boxes will be active. Without failover you site on DR box won’t be accessible.



1) User SQL Management Studio, right mouse click on DB, Tasks->Launch Database Mirroring Monitor to check the status of your mirroring databases.

2) You can have the following error “Cannot open database "<…>" requested by the login. The login failed. Login failed for user ”….”.” when you try to use “stsadm –o addcontentdb …”. This happens when you DB not in failover status. You need to make your DR failovered (active) and only then add content DB


That’s all. I hope this post will save some of your time when you start your SharePoint mirroring.


More reading:


Mirror: SharePoint Mirroring

Starting SharePoint solution and planning your documentation

When a new SharePoint project is about to start I use the following steps to design and plan solution

  1. Creating Vision/Scope
  2. Site structure and Navigation
  3. Use Case Scenarios
  4. Data Flow scenario (create the infomation “map”  - where it locates and how it”s used. Usually you either consume or produce information from/to 3rd party sources – network folders, sharepoint lists, incoming emails, BDC connections  and etc. To plan you taxonomy and build good information structure you need to visualize all information on the single page, with direction where it flows. It helps you understand what happens with existing system)
  5. Content location (this is very close to the previous point, but you concentraces on actual location – where information stored, and the way to access it – file or network paths, IP and credentials to access external information)
  6. Site Collection Boundaries
  7. List of required features and site definitions
  8. Security: Roles and Permissions
  9. Page Wireframes: layouts and content types
  10. Targeting (how all content will be targeted  - metadata information, filtering. I usually use Personas to create several scenarios for content targetting)
  11. Search strategy (define search scopes,  define all external sourced,  defile “best bets” for the targetted content)
  12. Infrastructure Plan 
  13. Disaster Recovery
  14. Deployment plan

    Take into account that SharePoint SDLC differs from standard development, and not all projects require those steps.

    PS: consider building SharePoint Roadmap before starting the development phase.

    MS officially supports SharePoint virtualized environment

    Today @jthake posted info about the recent announcement from Microsoft that they finally started to support “Virtualized SharePoint environment” for

    • Virtual PC
    • vmWare
    • Win2k8 hyper-v

    What does it mean for end-users, developers or IT guys?! Nothing.

    It mostly the question of taking the official decision for managers, what and where will be deployed. Because in case of any problems Microsoft will help you in troubleshooting, but not for SharePoint under one of virtualized environment. You must had a installation on physical boxes.

    Now it’s now an issue. They announced support of virtualized SharePoint environments


    Mirror: MS officially supports SharePoint virtualized environment

    On 18 months

    Back in March 2007, I put up a couple of posts about the missing audible alarm in the Dell PERC RAID controller. There was a flurry of activity following those posts, and that”s been the most read pair of posts from this blog. Well, 18 months has passed, and I haven”t posted much else about the situation, mostly because nothing much has changed. One of the last conversations I had with someone within Dell engineering was that they were looking into adding the alarm back in the PERC 6 controller, but no revisions were planned for the PERC 5. I”m OK with the latter part of that, as it would be difficult to go back and re-engineer the existing card, so long as the next card would get it back.

    But last week I put in two new servers, the first ones I”ve rolled out with the PERC 6 controller, and guess what – no audible alarm on the controller. Either version. (One of the servers I rolled has both the PERC 6/i and the 6/E, neither has the alarm.)

    I had reason to contact Dell yesterday for another set of issues and,as luck would have it,I spoke with the same engineer who worked with me the first time I called in about the missing alarm. While he helped me resolve the other issues, we talked more about the missing alarm and how I was really disappointed to find out that the latest card still doesn”t have it. Once again, I asked about how best to provide feedback to Dell regarding this issue, and once again he pointed me to the Dell IdeaStorm site. While talking, we both went to the site and searched on "audible alarm" and guess whose post was the first one returned in the search – yep, the one I put up in April of 2007. Surprisingly, unlike other posts with lower scores on that page, this item has not been marked as "reviewed" which means that Dell has not been keen enough to even look at this issue.

    Well, it”s time to get back in the saddle on this issue, because I think that Dell has made a significant mistake in removing the alarm from the controller. Sure, I understand that they received a number of calls from customers who didn”t like hearing the alarm when something went wrong with the controller, but the correct response is not to remove the alarm altogether. Ship the controller with the alarm disabled by default, and let those of us who rely on the alarm as a warning sign enable it if we choose.

    So, for those of you who work with Dell servers who still see this as a huge shortcoming, please take as many of the following actions as you are comfortable with.

    1. Locate my post on IdeaStorm and comment/promote it.
    2. Contact Dell Support for one of your servers in production and ask them how to enable the audible alarm on the PERC controller. When they tell you it can”t be done, escalate the call.
    3. Contact your sales agent at Dell and explain to them how you”re considering switching to a different hardware vendor that does offer RAID controllers with audible alarms.

    This is one of those cases where I think the community absolutely can make a difference.

    Silverlight 2 RC Disponible


    Leo en el blog de ScottGu, que esta madrugada se ha liberado la primera RC pública de Silverlight 2.

    Se han corregiso algunos bugs, se ha actualizado el API desde la versión anterior y han aparecido algunos elementos nuevos en el núcleo, como los controles ComboBox, ProgressBar, y PasswordBox (dejando el tamaño igualmente en 4.6MB).


    También me ha llamado la atención la incorporación del MessageBox.Show(), que permite mostrar cuadros de mensaje como en una aplicación de escritorio:


    Nuevos skins de controles, que han cambiado respecto a la Beta 1 y 2:


    Una de las capacidades más potentes de Silverlight es la posibilidad para los diseñadores y desarrolladores de personalizar completamente el aspecto de cualquier control. Esto permite ir más allá de estilos simples de colores y fuentes. De hecho, literalmente podemos cambiar el interfaz de usuario visual de este control, así como personalizar su comportamiento (por ejemplo agregando animaciones) sin agregar ninguna línead de código.

    Cuando estamos editando la plantilla de un control, podemos manipular cualquier sub-elemento del control (por ejemplo, el contenido interno de un CheckBox), ásí cómo personalizar sus ‘estados’ (observar el panel de estados señalados en rojo). Esto permite a los diseñadores personalizar el aspecto del control en cada estado (seleccionado, no seleccionado, al pasar el mouse por encima, etc.).


    En fin, esto se anima ya que el lanzamiento final de Silverlight está cada vez más cerca!!!
    A disfrutarlo,

    ** crossposting desde el blog de Lluís Franco en **

    Recent Comments