I do have for Antonio Fornie antonio.for...@gmail.com
2014-03-14 11:02 GMT+01:00 Daan Hoogland <daan.hoogl...@gmail.com>: > If you have an account on the wiki, I can add some rights to it (or > any pmc member could) > > On Fri, Mar 14, 2014 at 10:47 AM, Antonio Fornié Casarrubios > <antonio.for...@gmail.com> wrote: > > The params are converted to lowercase, the problem is the processed > params > > are available only inside the dispatch chain, so later when the rest of > the > > method ApiDispatcher#dispatch tries to get the param, in the map where it > > was looking up it was still with Camel Case name. I think the proper way > to > > do this is to include the rest of the ApiDispatcher#dispatch method in > the > > chain: another worker the receives the modified params (lowercase). > > > > > > Actually this worker should call a Cmd method that would do one thing or > > another depending on the Cmd type. This way we avoid having all this: > > > > if (cmd instanceof BaseAsyncCmd) { > > ....// 30 lines to be moved to BaseAsyncCmd > > } > > > > if (cmd instanceof BaseAsyncCustomIdCmd) { > > ((BaseAsyncCustomIdCmd)cmd).checkUuid(); > > } else if (cmd instanceof BaseCustomIdCmd) { > > ((BaseCustomIdCmd)cmd).checkUuid(); > > } > > > > > > And one last thing. At some point in these 30 lines, it returns if two > ifs > > are satisfied. I understand the return if meant to avoid calling > > cmd.execute(); in the last line. Is that right? My concern is that the > > return is also avoiding the code that calls ...cmd).checkUuid() . Is > this > > correct? Shouldn't we checkUuid even if we are not going to execute? > > > > > > > > Sorry for the problems and thanks for fixing it so fast. > > > > > > > > By the way, how can I get rights to add this information to the > Cloudstack > > wiki? Just to explain the dispatching info and how the Dispatch Chain > works. > > I would also include some info about format of incoming parameters (like > > Maps) > > > > Thanks. Cheers > > Antonio > > > > > > > > 2014-03-14 9:50 GMT+01:00 Antonio Fornié Casarrubios > > <antonio.for...@gmail.com>: > > > >> Sorry, I see what the problem is. I've been looking for other possible > >> side effects. But this should only affect anything in ApiDispatcher > after > >> standardDispatchChain.dispatch(new DispatchTask(cmd, params)); > >> because the params used are not the same object processed in the > >> dispatchChain. I'm going to change this properly, test it and upload it. > >> > >> Sorry again and thanks for the change. > >> > >> Antonio > >> > >> > >> 2014-03-14 0:55 GMT+01:00 Min Chen <min.c...@citrix.com>: > >> > >>> Fixed with commit d3fd66e9f555616530e483d1eacf2525556bf14e on master. > >>> > >>> Thanks > >>> -min > >>> > >>> On 3/13/14 4:34 PM, "Min Chen" <min.c...@citrix.com> wrote: > >>> > >>> >Yes, that is problem. Parameter name is changed to lowercase, which > will > >>> >not be able to retrieve parameters from API job. > >>> > > >>> >Thanks > >>> >-min > >>> > > >>> >On 3/13/14 4:31 PM, "Daan Hoogland" <daan.hoogl...@gmail.com> wrote: > >>> > > >>> >>It's half passed midnight here so you won't get an answer soon from > >>> >>this side of the ocean. > >>> >> > >>> >>The line > >>> >>at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:89) > >>> >> is from juli last year. So I doubt if Antonio knows about it. How > >>> >>does it involve the dispatcher refactoring? > >>> >> > >>> >>I noticed that the parameter name that is fetched is lowercase where > >>> >>it used to be camelcase. Does this matter? > >>> >> > >>> >>On Fri, Mar 14, 2014 at 12:14 AM, Alena Prokharchyk > >>> >><alena.prokharc...@citrix.com> wrote: > >>> >>> Min is about to submit a change as a part of her checkin. Antonio, > >>> >>> its > >>> >>>due > >>> >>> to Long/long auto boxing caused by your api validation stuff. Can > you > >>> >>> please check other places that could get potentially affected? > >>> >>> > >>> >>> Thanks, > >>> >>> Alena. > >>> >>> > >>> >>> On 3/13/14, 4:10 PM, "Kelven Yang" <kelven.y...@citrix.com> wrote: > >>> >>> > >>> >>>>Anyone encounter this problem on master? > >>> >>>> > >>> >>>>WARN [c.c.a.d.ParamGenericValidationWorker] > >>> >>>>(163545706@qtp-538020828-6:ctx-afe77737 ctx-06c20804) Received > >>> >>>> unknown > >>> >>>>parameters for command listRegions. Unknown parameters : listall > >>> >>>>WARN [c.c.a.d.ParamGenericValidationWorker] > >>> >>>>(1770041501@qtp-538020828-3:ctx-1342c426 ctx-07426dab) Received > >>> >>>> unknown > >>> >>>>parameters for command listZones. Unknown parameters : listall > >>> >>>>WARN [c.c.a.d.ParamGenericValidationWorker] > >>> >>>>(1770041501@qtp-538020828-3:ctx-372e085d ctx-b4145c82) Received > >>> >>>> unknown > >>> >>>>parameters for command listPods. Unknown parameters : listall > >>> >>>>WARN [c.c.a.d.ParamGenericValidationWorker] > >>> >>>>(1770041501@qtp-538020828-3:ctx-4debfd84 ctx-2bc17638) Received > >>> >>>> unknown > >>> >>>>parameters for command listClusters. Unknown parameters : listall > >>> >>>>WARN [c.c.a.d.ParamGenericValidationWorker] > >>> >>>>(1770041501@qtp-538020828-3:ctx-d859137c ctx-796427ce) Received > >>> >>>> unknown > >>> >>>>parameters for command listHosts. Unknown parameters : listall > >>> >>>>WARN [c.c.a.d.ParamGenericValidationWorker] > >>> >>>>(1770041501@qtp-538020828-3:ctx-28a609f4 ctx-928c994c) Received > >>> >>>> unknown > >>> >>>>parameters for command listStoragePools. Unknown parameters : > listall > >>> >>>>WARN [c.c.a.d.ParamGenericValidationWorker] > >>> >>>>(1770041501@qtp-538020828-3:ctx-2b402632 ctx-e9d04c3c) Received > >>> >>>> unknown > >>> >>>>parameters for command listImageStores. Unknown parameters : > listall > >>> >>>>type > >>> >>>>WARN [c.c.a.d.ParamGenericValidationWorker] > >>> >>>>(1770041501@qtp-538020828-3:ctx-b5b48d9b ctx-3fea144f) Received > >>> >>>> unknown > >>> >>>>parameters for command listSystemVms. Unknown parameters : listall > >>> >>>>WARN [c.c.a.d.ParamGenericValidationWorker] > >>> >>>>(1770041501@qtp-538020828-3:ctx-77ae4d94 ctx-c39b828f) Received > >>> >>>> unknown > >>> >>>>parameters for command listHypervisors. Unknown parameters : > listall > >>> >>>>WARN [c.c.a.d.ParamGenericValidationWorker] > >>> >>>>(1770041501@qtp-538020828-3:ctx-8eb4acce ctx-f63fefa4) Received > >>> >>>> unknown > >>> >>>>parameters for command listDomains. Unknown parameters : viewall > >>> >>>>INFO [o.a.c.f.j.i.AsyncJobMonitor] (API-Job-Executor-1:Job-3) Add > >>> >>>>job-3 > >>> >>>>into job monitoring > >>> >>>>ERROR [c.c.a.ApiAsyncJobDispatcher] (API-Job-Executor-1:Job-3) > >>> >>>>Unexpected > >>> >>>>exception while executing > >>> > >>> >>>> > >>>>org.apache.cloudstack.api.command.admin.network.CreatePhysicalNetworkCm > >>> >>>>d > >>> >>>>java.lang.NumberFormatException: null > >>> >>>>at java.lang.Long.parseLong(Long.java:404) > >>> >>>>at java.lang.Long.valueOf(Long.java:540) > >>> >>>>at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:89) > >>> >>>>at > >>> > >>> >>>> > >>>>com.cloud.api.ApiAsyncJobDispatcher.runJob(ApiAsyncJobDispatcher.java:1 > >>> >>>>0 > >>> >>>>0) > >>> >>>>at > >>> > >>> >>>> > >>>>org.apache.cloudstack.framework.jobs.impl.AsyncJobManagerImpl$5.runInCo > >>> >>>>n > >>> >>>>te > >>> >>>>xt(AsyncJobManagerImpl.java:491) > >>> >>>>at > >>> > >>> >>>> > >>>>org.apache.cloudstack.managed.context.ManagedContextRunnable$1.run(Mana > >>> >>>>g > >>> >>>>ed > >>> >>>>ContextRunnable.java:49) > >>> >>>>at > >>> > >>> >>>> > >>>>org.apache.cloudstack.managed.context.impl.DefaultManagedContext$1.call > >>> >>>>( > >>> >>>>De > >>> >>>>faultManagedContext.java:56) > >>> >>>>at > >>> > >>> >>>> > >>>>org.apache.cloudstack.managed.context.impl.DefaultManagedContext.callWi > >>> >>>>t > >>> >>>>hC > >>> >>>>ontext(DefaultManagedContext.java:103) > >>> >>>>at > >>> > >>> >>>> > >>>>org.apache.cloudstack.managed.context.impl.DefaultManagedContext.runWit > >>> >>>>h > >>> >>>>Co > >>> >>>>ntext(DefaultManagedContext.java:53) > >>> >>>>at > >>> > >>> >>>> > >>>>org.apache.cloudstack.managed.context.ManagedContextRunnable.run(Manage > >>> >>>>d > >>> >>>>Co > >>> >>>>ntextRunnable.java:46) > >>> >>>>at > >>> > >>> >>>> > >>>>org.apache.cloudstack.framework.jobs.impl.AsyncJobManagerImpl$5.run(Asy > >>> >>>>n > >>> >>>>cJ > >>> >>>>obManagerImpl.java:448) > >>> >>>>at > >>> > >>> >>>> > >>>>java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) > >>> >>>>at > java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) > >>> >>>>at java.util.concurrent.FutureTask.run(FutureTask.java:166) > >>> >>>>at > >>> > >>> >>>> > >>>>java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.ja > >>> >>>>v > >>> >>>>a: > >>> >>>>1145) > >>> >>>>at > >>> > >>> >>>> > >>>>java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.j > >>> >>>>a > >>> >>>>va > >>> >>>>:615) > >>> >>>>at java.lang.Thread.run(Thread.java:724) > >>> >>>>INFO [o.a.c.f.j.i.AsyncJobMonitor] (API-Job-Executor-1:Job-3) > Remove > >>> >>>>job-3 from job monitoring > >>> >>>> > >>> >>>>Kelven > >>> >>> > >>> >> > >>> >> > >>> >> > >>> >>-- > >>> >>Daan > >>> > > >>> > >> > > > > > > -- > Daan >