DPM 2007: Tapes are labeled as “Unrecognized” after just previously writing to them and removing them from the library - The Official System Center Data Protection Manager Team Blog - Site Home - TechNet Blogs

DPM 2007: Tapes are labeled as “Unrecognized” after just previously writing to them and removing them from the library

DPM 2007: Tapes are labeled as “Unrecognized” after just previously writing to them and removing them from the library

  • Comments 3
  • Likes

image Here's an interesting issue I worked on the other day and since I didn't see it documented anywhere I thought it would be worth a mention here just in case someone else runs across it:

=====

The issue we were running into was one where tapes are labeled as “Unrecognized” after just previously writing to them and removing them from the library in System Center Data Protection Manager 2007.

To figure out why this was happening we gathered a trace of the problem and found that we were failing on the following code:

arrLabelTokens[6].GetLong((LONG*)&m_tapeHeaderInfo.m_mediaLabel.m_usSide)

The returned error code was 0x80070057 which means “ERROR_INVALID_PARAMETER” or “The parameter is incorrect.”

In this section of the code we are parsing the tape header and in this example the tape header was the following:

[MTF Media Label|1.0|Microsoft|2.0.8861.0|2010/03/19.21:04:11|Files Servers| Domain Controllers-LT-1Weeks-Copy0-00000125|0|{c5dd3d54-d495-4139-9212-e9fb72e2cf27}|{42bb9f73-f162-429b-93d3-e4a1fd257c7a}|]

Let’s break it down so it is easier to read:

Element 0 = MTF Media Label

Element 1 = 1.0

Element 2 = Microsoft

Element 3 = 2.0.8861.0

Element 4 = 2010/03/19.21:04:11

Element 5 = File Servers

Element 6 = Domain Controllers-LT-1Weeks-Copy0-00000125

Element 7 = 0

Element 8 = {c5dd3d54-d495-4139-9212-e9fb72e2cf27}

Element 9 = {42bb9f73-f162-429b-93d3-e4a1fd257c7a}

To break the code down a little further, we see that arrLabelTokens is grabbing the 6th element of the header (arrLabelTokens[6]). It is expecting it to be a number (GetLong((LONG*)).

The 6th element of the header, which is delimited by the “|” character would have been:

Domain Controllers-LT-1Weeks-Copy0-00000125

That isn’t a number so this is why we are getting “invalid parameter” as a returned error. If you look closely, you also notice that there is a space at the beginning of the 6th element.

It was discovered that the name of the protection group that had this particular data source within it contained a “|” character. If the particular tape we are using doesn’t contain a header, then we use the protection group name in a portion of the header when we create it for the first time. In our example above it is actually element 5 that contains the protection group name. Since we are using the “|” character as the delimiter to parse the header, we will fail every single time if the protection group name contains a “|” character as well. Had the protection group not contained the “|” character we would have parsed it as follows:

Element 0 = MTF Media Label

Element 1 = 1.0

Element 2 = Microsoft

Element 3 = 2.0.8861.0

Element 4 = 2010/03/19.21:04:11

Element 5 = File Servers Domain Controllers-LT-1Weeks-Copy0-00000125

Element 6 = 0

Element 7 = {c5dd3d54-d495-4139-9212-e9fb72e2cf27}

Element 8 = {42bb9f73-f162-429b-93d3-e4a1fd257c7a}

Element 6 is a number!

Final Thoughts

So the bottom line here is that if you see this issue, check the name of the protection group and make sure it doesn't contain any special characters.  To go even further, as a general rule of thumb it isn’t a good idea to ever use any special characters in your protection group names. This would include special characters such as the ampersand (&), percent (%), greater than (>), less than (<), and the period (.), comma (,) and the semicolon (;).

Note: This can issue can occur on long term as well as short term protection to tape.

Chuck Whitson | Support Escalation Engineer

clip_image001 clip_image002

Bookmark and Share
Your comment has been posted.   Close
Thank you, your comment requires moderation so it may take a while to appear.   Close
Leave a Comment
  • I have this problem for a long time and have been searching for a solution. I have 2 protection groups and there's no special character on them.

    1. Critical Servers

    2. Medium Servers

    Unless a "space" between Critical and Servers is a special character.

    Any other ideas how to resolve the problem?

    Thanks.

    Demy

  • The "|" in naming the protection groups wasted many hours of my lifetime trying to let our tape-library work with DPM 2010.

    Even renaming the protection group did not help, because the tapes used in this protection groups keep the old naming. New protection groups had to be set up.

    It would be great if Microsoft will create a patch for the DPM that will prevent the user to create protection group names with this and other complicating special characters.

    Mr. Hornbeck, I thank you for this blog!

  • I've been searching for a couple of weeks, trying to determine the cause of this exact behavior. Why aren't the PG name fields validated if special characters cause errors? Pipes are nice for keeping things separated.

    All thanks to this blog and to sharing this discovery.