muxx
Enthusiast
Enthusiast

Bug/Error due to the daylight saving time

I am unable to trigger WFStubBuildingMachine workflow. Since Monday it always fails with error mentioned below. Date cannot be parsed as it does not exist due to daylight change. But what do I need to fix to skip this error?

vRA 6.2.0 with VCO.

2015-03-31 09:37:07.741+0200 [WorkflowExecutorPool-Thread-2] INFO  {Administrator@VSPHERE.LOCAL:WFStubBuildingMachine:ff8080814c6cd4b5014c6ec32a8e0031:3060d63b-bfc9-44d8-8806-70988c107787:[3060d63b-bfc9-44d8-8806-70988c107787]} [SCRIPTING_LOG] [WFStubBuildingMachine/Prepare Workflow run (3/31/15 09:37:06)] hosts: DynamicWrapper (Instance) : [vCACVcacHost]-[class com.vmware.o11n.plugin.dynamicops.model.VcacHost] -- VALUE : {Connection: beb22170-75d0-41e9-b3ce-6a3463d299db, Connection info: {Id: beb22170-75d0-41e9-b3ce-6a3463d299db,Name: IaaS host for vcac-va[edited],Host: https://vcac-iaas[edited],Authentication: {Type: NTLM,Username: Administrator,Workstation: ,Domain: vcac-iaas[edited],Session mode: Shared Session,Connection timeout: 30,Operation timeout: 60,Accept all certificates: false}, Factory: class com.vmware.o11n.plugin.dynamicops.VcacPluginFactory @93a45ce0-eacc-451c-b46f-b27c602f436e; Tue Mar 31 09:37:07 CEST 2015}

2015-03-31 09:37:10.749+0200 [WorkflowExecutorPool-Thread-2] WARN  {Administrator@VSPHERE.LOCAL:WFStubBuildingMachine:ff8080814c6cd4b5014c6ec32a8e0031:3060d63b-bfc9-44d8-8806-70988c107787:[3060d63b-bfc9-44d8-8806-70988c107787]} [ConfigurationServiceImpl] Unable to find items for connection beb22170-75d0-41e9-b3ce-6a3463d299db

java.lang.IllegalArgumentException: Cannot parse "2015-03-29T02:30:35": Illegal instant due to time zone offset transition (Europe/Prague)

  at org.joda.time.format.DateTimeParserBucket.computeMillis(DateTimeParserBucket.java:336)

  at org.joda.time.format.DateTimeFormatter.parseDateTime(DateTimeFormatter.java:662)

  at org.odata4j.internal.InternalUtil.parseDateTimeFromXml(InternalUtil.java:89)

  at org.odata4j.core.OSimpleObjects.parse(OSimpleObjects.java:110)

  at org.odata4j.core.OProperties.parseSimple(OProperties.java:116)

  at org.odata4j.format.xml.AtomFeedFormatParser.parseProperties(AtomFeedFormatParser.java:225)

  at org.odata4j.format.xml.AtomFeedFormatParser.parseDSAtomEntry(AtomFeedFormatParser.java:273)

  at org.odata4j.format.xml.AtomFeedFormatParser.parseEntry(AtomFeedFormatParser.java:383)

  at org.odata4j.format.xml.AtomFeedFormatParser.parseFeed(AtomFeedFormatParser.java:169)

  at org.odata4j.format.xml.AtomFeedFormatParser.parse(AtomFeedFormatParser.java:157)

  at org.odata4j.format.xml.AtomFeedFormatParser.parse(AtomFeedFormatParser.java:45)

  at org.odata4j.consumer.ConsumerQueryEntitiesRequest.doRequest(ConsumerQueryEntitiesRequest.java:67)

  at org.odata4j.consumer.ConsumerQueryEntitiesRequest.getEntries(ConsumerQueryEntitiesRequest.java:50)

  at org.odata4j.consumer.ConsumerQueryEntitiesRequest.execute(ConsumerQueryEntitiesRequest.java:40)

  at com.vmware.o11n.plugin.dynamicops.model.VcacHostConnection.findItemsFor(VcacHostConnection.java:168)

  at com.vmware.o11n.plugin.dynamicops.VcacPluginFactory.findAll(VcacPluginFactory.java:136)

  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

  at java.lang.reflect.Method.invoke(Method.java:606)

  at ch.dunes.vso.sdk.DirectInvoker.invoke(DirectInvoker.java:55)

  at ch.dunes.vso.sdk.SDKPluginFactoryInvoker.fetchAll(SDKPluginFactoryInvoker.java:106)

  at ch.dunes.vso.sdk.SDKFinder.fetchAll(SDKFinder.java:220)

  at ch.dunes.vso.sdk.SDKFinder.findAll(SDKFinder.java:191)

  at ch.dunes.vso.sdk.ModulesFactory.find(ModulesFactory.java:591)

  at com.vmware.o11n.sdk.EnhancedScriptingSDK.find(EnhancedScriptingSDK.java:118)

  at com.vmware.o11n.service.sdk.SdkModuleServiceImpl.find(SdkModuleServiceImpl.java:40)

  at com.vmware.o11n.service.factory.VcoFactoryFacade.find(VcoFactoryFacade.java:1621)

  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

  at java.lang.reflect.Method.invoke(Method.java:606)

  at com.vmware.o11n.service.security.AccessRightsInterceptor.invoke(AccessRightsInterceptor.java:97)

  at com.vmware.o11n.service.security.AccessRightsInterceptor.invoke(AccessRightsInterceptor.java:88)

  at com.vmware.o11n.service.factory.LocalVSOFactoryInvocationHandler.invokeOperation(LocalVSOFactoryInvocationHandler.java:214)

  at com.vmware.o11n.service.factory.LocalVSOFactoryInvocationHandler.doInvoke(LocalVSOFactoryInvocationHandler.java:265)

  at com.vmware.o11n.service.factory.LocalVSOFactoryInvocationHandler.invoke(LocalVSOFactoryInvocationHandler.java:143)

  at com.sun.proxy.$Proxy269.find(Unknown Source)

  at ch.dunes.model.client.VSOFactoryClient.find(VSOFactoryClient.java:1807)

  at ch.dunes.scripting.server.script.ServerObject.findAllForType(ServerObject.java:273)

  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

  at java.lang.reflect.Method.invoke(Method.java:606)

  at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:126)

  at org.mozilla.javascript.FunctionObject.call(FunctionObject.java:449)

  at org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:1473)

  at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:815)

  at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:109)

  at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:394)

  at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3091)

  at org.mozilla.javascript.InterpretedFunction.exec(InterpretedFunction.java:120)

  at ch.dunes.scripting.server.script.MainScriptingObject.executeScript(MainScriptingObject.java:237)

  at ch.dunes.scripting.server.script.MainScriptingObject.executeScript(MainScriptingObject.java:223)

  at ch.dunes.workflow.engine.mbean.WorkflowScriptRunner.execute(WorkflowScriptRunner.java:191)

  at ch.dunes.workflow.engine.mbean.runner.WorkflowItemTaskRunner.execute(WorkflowItemTaskRunner.java:43)

  at ch.dunes.workflow.engine.mbean.runner.WorkflowItemTaskRunner.execute(WorkflowItemTaskRunner.java:24)

  at ch.dunes.workflow.engine.mbean.helper.WorkflowHandler.executeItem(WorkflowHandler.java:955)

  at ch.dunes.workflow.engine.mbean.helper.WorkflowHandler.requestElementExecution(WorkflowHandler.java:919)

  at ch.dunes.workflow.engine.mbean.helper.WorkflowHandler.handleWorkflowTokenNextStep(WorkflowHandler.java:627)

  at ch.dunes.workflow.engine.mbean.helper.WorkflowHandler.executeToken(WorkflowHandler.java:517)

  at ch.dunes.workflow.engine.mbean.helper.WorkflowHandler.handleTokenExecution(WorkflowHandler.java:453)

  at ch.dunes.workflow.engine.mbean.helper.WorkflowHandler.access$100(WorkflowHandler.java:104)

  at ch.dunes.workflow.engine.mbean.helper.WorkflowHandler$1.execute(WorkflowHandler.java:360)

  at ch.dunes.model.ar.AccessRightsTemplate.executeWithAccessRights(AccessRightsTemplate.java:16)

  at ch.dunes.workflow.engine.mbean.helper.WorkflowHandler.doExecute(WorkflowHandler.java:356)

  at ch.dunes.workflow.engine.mbean.helper.WorkflowHandler.run(WorkflowHandler.java:239)

  at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)

  at java.util.concurrent.FutureTask.run(FutureTask.java:262)

  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)

  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)

  at java.lang.Thread.run(Thread.java:745)

Tags (3)
0 Kudos
2 Replies
muxx
Enthusiast
Enthusiast

So we have this sleepless developer who needs to work during the weekend where daylight saving occurs and he decided to start few VMs at half past two. (Time was changed from 2AM to 3AM that day, so "half past two" time does not exist)

vcenter 5.5.0 1623101

esxi 5.5.0 2403361

I can see on IAAS server that when data collection runs vSphereAgent.log contains following machine.

  <obj id="5037651b-d982-399e-6d3f-775b9f2b4fb2" type="VirtualMachine">

    <attr name="BiosUuid" value="a3883742-6c0c-6674-59a1-d6de83024174" />

    <attr name="Name" value="Sleepless developer" />

    <attr name="HostName" value="vmczbrno cluster" />

    <attr name="ExternalReferenceId" value="vm-32075" />

    <attr name="GuestFamily" value="windows7Server64Guest" />

    <attr name="OSName" value="Microsoft Windows Server 2008 R2 (64-bit)" />

    <attr name="CPUs" value="2" />

    <attr name="State" value="Running" />

    <attr name="Memory" value="3072" />

    <attr name="IsTemplate" value="False" />

    <attr name="UsedSpaceInGB" value="" />

    <attr name="DNSName" value="Sleepless" />

    <attr name="PowerOnDate" value="3/29/2015 2:30:35 AM" />

    <attr name="PowerOffDate" value="3/25/2015 3:46:32 PM" />

    <attr name="VMStoragePath" value="RNDQA-Speed-01" />

    <obj id="dvportgroup-13035" type="Network">

      <attr name="Name" value="RNDQA110" />

      <attr name="MacAddress" value="00:50:56:b7:3d:43" />

      <attr name="portID" value="640" />

      <ChildCollection />

So when the VRO 6.0 (vcac 6.2, embedded vco) connects to IAAS server to list all VMs, VCO raises an exception:

java.lang.IllegalArgumentException: Cannot parse "2015-03-29T02:30:35": Illegal instant due to time zone offset transition (Europe/Prague)


0 Kudos
cmbwml1
Enthusiast
Enthusiast

We had the same issue.  A user booted a VM at 2:22am on the morning of DST.  Some how the boot time was recorded as 2:22am but Java errors out saying that is an illegal time stamp because time went from 2am directly to 3am on DST.  I manually went in to database and set to 5am and java error immediately went away.  I then restarted the affected VM which updated the boot time in the database.  That took us a few days to find!

0 Kudos