Afternoon Managed to find my issue.. Variable name re-use :(
Defined 'qtrees' as an empty array on line 3, and then populated it with a whole load of device output on line 18 :( So have defined a 'qtree_instances' array on the outside to contain my output, with qtrees being used on the inside to hold the NetApp filer response... Latest code in Github<https://github.com/fatmcgav/fatmcgav-netapp/commit/1d51b1267466176db1a3d4e6ae32d9340a06fb56> . Cheers Gavin On Thursday, 28 March 2013 11:44:39 UTC, Gavin Williams wrote: > > Morning all > > Quick update... Looks like I managed to hack around the issue by adding > the following: > > ... > > ap qtree_info > > # Check if it is a NaElement > next unless qtree_info.respond_to?(:child_get_string) > > # Pull out the qtree name. > name = qtree_info.child_get_string("qtree") > ... > > > However this shows that I'm getting a total of 78 items processed, whereas > the original array only contains 53 items... > The additional items being processed are all like: '* > #<Puppet::Type::Netapp_qtree::ProviderNetapp_qtree:*'. > Have updated the gist with latest code and log file. > > Would like to understand where these are coming from, and if it's > something I'm doing incorrectly? > > In the mean-time, following fixing that bug, the provider now seems to > work as expected :) > > Cheers > Gavin > > > On Wednesday, 27 March 2013 17:32:23 UTC, Gavin Williams wrote: >> >> Afternoon all >> >> I've started working on converting a couple more of my NetApp network >> device providers to use a prefetch/flush model, as can see performance >> gains available, etc... >> >> Anyways, I'm having issues with my netapp_qtree provider. It would appear >> that somehow, an additional *Puppet::Type...* row is getting into an >> array and breaking things... >> >> Have created a gist here <https://gist.github.com/fatmcgav/5256240>with >> the details, as the log file is quite long. >> Also includes the *instances *and *prefetch* def's for my netapp_qtree >> provider... >> >> As you can see on Line 337 of the log, the array contains 40 items, >> however on line 734 *self.instances* is trying to process item 41?!?! >> What's also strange is that the item contents look like a Puppet Type (* >> #<Puppet::Type::Netapp_qtree*), whereas all the others in the array are >> NetApp specific items (*#<NaElement:*). >> >> So, any ideas??? >> >> Cheers >> Gavin >> > -- You received this message because you are subscribed to the Google Groups "Puppet Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/puppet-dev?hl=en. For more options, visit https://groups.google.com/groups/opt_out.
