Active IQ Unified Manager Discussions

Odd error from vCenter acquisition

bachman
12,888 Views

I've recently begun getting an odd error with each attempt to acquire my vCenter. I'm happy to go log-diving for the reasons, I'm just not sure where to go look. Here's the error I'm seeing.

Cannot convert value "á" to type "System.Byte". Error: "Value was either too large or too small for an unsigned byte."

Looking for suggestions for chasing this down.

Phil

19 REPLIES 19

sinhaa
12,833 Views

This is interesting Phil. This is coming due to this á  which is a Unicode Character. Do you have any VM with names using this character or Non English OS version?

Can you help by answering the following questions.

1. Its looks like the same VC acquisition was working fine before and then started to fail with this error. Is this Correct?

2. Your WFA version and VC version?

3. Is the language for the VC en-US ( default )?

  • 1.  On your WFA server just run the acquisition once. Let it fail with the same error.
  • 2.  On your WFA server, Go to the location WFA\jboss\standalone\tmp\wfa and send me the following files.
  • 3.  Host.csv
  • 4.  Data_Store.csv
  • 5.  Lun.csv
  • 6.  Virtual_Machine.csv
  • 7.  Virtual_Disk.csv
  • 8.  Nas_Share.csv

Send the Autosupport file and the above files to me at: sinhaa at netapp dot com

I'll look at them and get back to you.

sinhaa

If this post resolved your issue, help others by selecting ACCEPT AS SOLUTION or adding a KUDO.

bachman
12,835 Views

sinhaa,

I had some virtual machines with "βeta" as part of the display name shown in vCenter - not the actual machine name. I have changed those to "beta" and it made no difference. I will get you the files.

Phil

bachman
12,835 Views

Log files sent April 8th.

bachman
12,183 Views

Responded to Abhishek with the information offline, reposting here for general information.

As mentioned above, I had a VM where the name of the VM - actual name in the file system - included "βeta" as part of the file name. This was causing the datasource to fail to acquire.

My fix was to 1) power down and unregister the VM, 2) rename the files using "beta" in place of "βeta", 3) edit and update the VM config files to point to the corrected file names, 4) import the VM back into vCenter.

I should point out that as soon as I unregistered the VM, acquisition began running successfully.

Phil


francoisbnc
12,833 Views

I hit same error during vCenter 5.5 acquisition.

Version 2.2.0.2.4RC1

Some details here.

Caused by: CommandExecutionException{Message: Cannot convert value "-" to type "System.Byte". Error: "Value was either too large or too small for an unsigned byte.", Cause: null}

at com.netapp.wfa.command.execution.impl.executors.ScriptBasedCommandExecutor.executeScriptCommand(ScriptBasedCommandExecutor.java:184) [command-0.5.jar:]

at com.netapp.wfa.command.execution.impl.executors.ScriptBasedCommandExecutor.executeScriptCommand(ScriptBasedCommandExecutor.java:67) [command-0.5.jar:]

at com.netapp.wfa.command.execution.impl.executors.ScriptBasedCommandExecutor.execute(ScriptBasedCommandExecutor.java:46) [command-0.5.jar:]

at com.netapp.wfa.cache.execution.ScriptBasedExtractor.preProcess(ScriptBasedExtractor.java:42) [cache-0.5.jar:]

... 147 more

2014-04-10 14:37:47,990 ERROR [com.netapp.wfa.cache.job.CacheJobExecutorImpl] (Thread-11503 (HornetQ-client-global-threads-1859749646)) Failed running cache job - databases were dumped to C:\Program Files\NetApp\WFA\jboss\standalone\tmp\wfa\localhost-wfa_staging#vc-7645653829289131888.dump: com.netapp.wfa.cache.execution.CacheException: Error running data acquisition script: Cannot convert value "-" to type "System.Byte". Error: "Value was either too large or too small for an unsigned byte."

at com.netapp.wfa.cache.execution.ScriptBasedExtractor.preProcess(ScriptBasedExtractor.java:45) [cache-0.5.jar:]

at com.netapp.wfa.cache.execution.ETLRunner.extractToFiles(ETLRunner.java:103) [cache-0.5.jar:]

at com.netapp.wfa.cache.job.CacheJobWorkerImpl.extractToFiles(CacheJobWorkerImpl.java:31) [cache-0.5.jar:]

at sun.reflect.GeneratedMethodAccessor431.invoke(Unknown Source) [:1.7.0_25]

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_25]

at java.lang.reflect.Method.invoke(Method.java:606) [rt.jar:1.7.0_25]

at org.jboss.as.ee.component.ManagedReferenceMethodInterceptorFactory$ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptorFactory.java:72) [jboss-as-ee-7.1.1.Final.jar:7.1.1.Final]

sinhaa
12,833 Views

Phil, Francois,

     A bug has been filed for it, ID: 816207, You can raise a case with NetApp to track its progress.

Francois, Can you send the autosupport to : sinhaa at netapp dot com

If this post resolved your issue, help others by selecting ACCEPT AS SOLUTION or adding a KUDO.

sinhaa
12,833 Views

Francois/Phil,

     Please find the attached posh script, save it in your WFA server. Open powershell ISE or any editor and at the beginning of the script, modify the the VC_ip, username, password fields according to your setup.

Execute it. Kindly send entire error message to me at : sinhaa at netapp dot com.

Also mention your Poweshell and .NET version

warm regards,

sinhaa

If this post resolved your issue, help others by selecting ACCEPT AS SOLUTION or adding a KUDO.

bachman
12,835 Views

Abhishek, I sent the data to you today.  Phil

francoisbnc
12,833 Views

Hi Sinhaa,

I experience similar error with ps script, with machines and disks.

Here a sketch of messages, we don't have information of the fault in csv files.

Writing to ./Virtual_Machine.csv

Cannot convert value "-" to type "System.Byte". Error: "Value was either too large or too small for an unsigned byte."

At C:\Users\itsfe\Documents\vcentergrap.ps1:140 char:39

+         Add-Content $vmsFile ([Byte[]] <<<< [Char[]] "$hashedVmInstanceUuid`t$vmDatastoreId`t$vmHostId`t$vmInstanceUu

id`t$vmName`t$vmDnsName`t$ipAddress`t$wfaVmPowerState`t$vmBootTime`t$vmGuestState`t$vmGuestOs`t$vmNumCpu`t$vmMemoryMb`t

$vmIsTemplate`n") -Encoding Byte

    + CategoryInfo          : NotSpecified: (:) [], RuntimeException

    + FullyQualifiedErrorId : RuntimeException

Writing to ./Virtual_Disk.csv

Cannot convert value "-" to type "System.Byte". Error: "Value was either too large or too small for an unsigned byte."

At C:\Users\itsfe\Documents\vcentergrap.ps1:201 char:47

+         Add-Content $virtualDiskFile ([Byte[]] <<<< [Char[]] "\N`t$datastoreId`t$hashedVmInstanceUuid`t$lunId`t$diskF

ileName`t$capacityMB`t$sizeOnDatastoreMB`n") -Encoding Byte

    + CategoryInfo          : NotSpecified: (:) [], RuntimeException

    + FullyQualifiedErrorId : RuntimeException

Regards,

sinhaa
12,834 Views

Francois,

     I'm working on this problem and I think this problem comes when your VC has one or more objects ( VMs, Vdisks etc.) with names in non-english alphabets. The error message may not be able to display this exactly.

I think I have a solution for it, but its still under test. It worked fine in my environment, so can you too try to see if it's working okay for you too. It will be of big help to me in fixing this.

1. Clone the Datasource Type VMWare vCenter and name it like VMWare vCenter 2

2. Select Scheme : vc

3. In the Powershell code block, enter the code which is there in the attached file. No modifications needed.

4. Add a Datasource of the Type: VMWare vCenter 2  and provide the credentials etc.

5. Acquire it as you normally would do.

Let me know if this worked for you.

sinhaa

If this post resolved your issue, help others by selecting ACCEPT AS SOLUTION or adding a KUDO.

francoisbnc
12,184 Views

Hi sinhaa,

Script failed with the error:

Caused by: java.sql.SQLException: Incorrect integer value: '7647167' for column 'id' at row 1

  at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055) [mysql-connector-java-5.1.10.jar:]

  at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956) [mysql-connector-java-5.1.10.jar:]

In attachment the wfa acquisition log.

François

sinhaa
12,184 Views

Francois, I sent you a PM.

If this post resolved your issue, help others by selecting ACCEPT AS SOLUTION or adding a KUDO.

blando
11,590 Views

Very Very old post... 🙂

But I just run into the same problem. 

I run the fix you suggested, And it works!!

 

thanks,

Itay

 

ChadPruden
11,257 Views

I attempted Sinhaa's VC fix.   The discovery definately ran longer, but resulted in a different error message.    

 

WFA-VC error.png

 

@sinhaa is there newer code for the vCenter discovery?  Let me know if you want any log files / etc.

sinhaa
11,229 Views

@ChadPruden

 

Clone the VC data source type and replace the code with the one in this attachment.

 

Let me know if this worked for you.

 

sinhaa

 

If this post resolved your issue, help others by selecting ACCEPT AS SOLUTION or adding a KUDO.

ChadPruden
9,512 Views

@sinhaa

 

I'm now encountering this error "Cannot convert value "?" to type "System.Byte". Error: "Value was either too large or too small for an unsigned byte."   See Image upload.

 

 

ChadPruden
9,512 Views

I also tested this against other CMODE clusters that result in a different error message:   "The file named virtual_disk_tgt.csv required to populate tablevc.virtual_disk_tgt was not found."

 

See attached Image upload.   Thanks!

niels
9,474 Views

In my experience the process is very sensitive to non-ASCII characters and any non-English character and numbering format.

So please check if the vCenter and/or WFA server are configured with a non-English locale, where the decimal seperator is anything other than "." (dot).

 

regards, Niels

 

--------

If this post resolved your issue, please help others by selecting ACCEPT AS SOLUTION or adding a KUDO or both.

ChadPruden
9,449 Views

I was able to sprinkle in some Log messages to help identify the VM.  Thanks everyone

Public