Concat::Fragment collection broken in 2.7.5

72 views
Skip to first unread message

Bruno Leon

unread,
Oct 4, 2011, 5:36:40 PM10/4/11
to puppet...@googlegroups.com
I don't if anybody is using the concat modules from ripienaar,
but since an upgrade to 2.7.5 I keep getting an error on fragment
collection.

The code is like below:

@@concat::fragment{ "${name}" :
target => "/etc/bind/named.conf.keys",
content => template("dns/named.conf.keys.erb"),
order => 10,
tag => 'dnskey'
}

Concat::Fragment <<| tag == 'dnskey' |>>

err: Could not retrieve catalog from remote server: Error 400 on SERVER:
Could not find type Concat::Fragment on node

Is anybody facing the same kind of issue ?

--
Bruno


Dan Bode

unread,
Oct 4, 2011, 5:46:25 PM10/4/11
to puppet...@googlegroups.com
what version did you upgrade from? could you also recreate with --trace.

thanks,

Dan



--
You received this message because you are subscribed to the Google Groups "Puppet Users" group.
To post to this group, send email to puppet...@googlegroups.com.
To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.


Bruno Leon

unread,
Oct 4, 2011, 6:30:56 PM10/4/11
to puppet...@googlegroups.com
I was on 2.7.3 previously.

thanks
--
Bruno


On 11-10-04 05:46 PM, Dan Bode wrote:
what version did you upgrade from? could you also recreate with --trace.

thanks,

Dan

On Tue, Oct 4, 2011 at 2:36 PM, Bruno Leon <nonol...@gmail.com> wrote:
I don't if anybody is using the concat modules from ripienaar,
but since an upgrade to 2.7.5 I keep getting an error on fragment collection.

The code is like below:

@@concat::fragment{ "${name}" :
 target  => "/etc/bind/named.conf.keys",
 content => template("dns/named.conf.keys.erb"),
 order   => 10,
 tag     => 'dnskey'
}

Concat::Fragment <<| tag == 'dnskey' |>>

err: Could not retrieve catalog from remote server: Error 400 on SERVER: Could not find type Concat::Fragment on node

Is anybody facing the same kind of issue ?

--
Bruno


--
You received this message because you are subscribed to the Google Groups "Puppet Users" group.
To post to this group, send email to puppet...@googlegroups.com.
To unsubscribe from this group, send email to puppet-users...@googlegroups.com.

For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.

--
You received this message because you are subscribed to the Google Groups "Puppet Users" group.
To post to this group, send email to puppet...@googlegroups.com.
To unsubscribe from this group, send email to puppet-users...@googlegroups.com.

Nigel Kersten

unread,
Oct 4, 2011, 6:32:02 PM10/4/11
to puppet...@googlegroups.com
Are you exporting resources with a postgresql backend Bruno?

On Tue, Oct 4, 2011 at 2:36 PM, Bruno Leon <nonol...@gmail.com> wrote:
--
You received this message because you are subscribed to the Google Groups "Puppet Users" group.
To post to this group, send email to puppet...@googlegroups.com.
To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com.

For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.




--
Nigel Kersten
Product Manager, Puppet Labs


Daniel Pittman

unread,
Oct 4, 2011, 6:33:43 PM10/4/11
to puppet...@googlegroups.com
That looks like a custom type that isn't being loaded on the client,
rather than a StoreConfig error to me. The effect of the PostgreSQL
bug should only have been to miss resources when collecting, not to
generate a catalog that didn't do the right thing.

Daniel

On Tue, Oct 4, 2011 at 15:32, Nigel Kersten <ni...@puppetlabs.com> wrote:
> Are you exporting resources with a postgresql backend Bruno?
>
> On Tue, Oct 4, 2011 at 2:36 PM, Bruno Leon <nonol...@gmail.com> wrote:
>>
>> I don't if anybody is using the concat modules from ripienaar,
>> but since an upgrade to 2.7.5 I keep getting an error on fragment
>> collection.
>>
>> The code is like below:
>>
>> @@concat::fragment{ "${name}" :
>>  target  => "/etc/bind/named.conf.keys",
>>  content => template("dns/named.conf.keys.erb"),
>>  order   => 10,
>>  tag     => 'dnskey'
>> }
>>
>> Concat::Fragment <<| tag == 'dnskey' |>>
>>
>> err: Could not retrieve catalog from remote server: Error 400 on SERVER:
>> Could not find type Concat::Fragment on node
>>
>> Is anybody facing the same kind of issue ?
>>
>> --
>> Bruno
>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Puppet Users" group.
>> To post to this group, send email to puppet...@googlegroups.com.
>> To unsubscribe from this group, send email to

>> puppet-users...@googlegroups.com.


>> For more options, visit this group at
>> http://groups.google.com/group/puppet-users?hl=en.
>>
>
>
>
> --
> Nigel Kersten
> Product Manager, Puppet Labs
>
>

> --
> You received this message because you are subscribed to the Google Groups
> "Puppet Users" group.
> To post to this group, send email to puppet...@googlegroups.com.
> To unsubscribe from this group, send email to

> puppet-users...@googlegroups.com.


> For more options, visit this group at
> http://groups.google.com/group/puppet-users?hl=en.
>

--
⎋ Puppet Labs Developer – http://puppetlabs.com
♲ Made with 100 percent post-consumer electrons

Bruno Leon

unread,
Oct 4, 2011, 7:55:13 PM10/4/11
to puppet...@googlegroups.com
This is not a custom type, but a define.
I guess you know it already but it is here
https://github.com/ripienaar/puppet-concat/manifest/fragment.pp

The declaration of concat::fragment works fine,
only the collection breaks, which means the define is available to puppet.

To be more generic it seems to me that the collection of an exported
define does not work properly in 2.7.5 ( did not test other case though).

--
Bruno

Daniel Pittman

unread,
Oct 4, 2011, 10:41:55 PM10/4/11
to puppet...@googlegroups.com
On Tue, Oct 4, 2011 at 16:55, Bruno Leon <nonol...@gmail.com> wrote:
> This is not a custom type, but a define.
> I guess you know it already but it is here
> https://github.com/ripienaar/puppet-concat/manifest/fragment.pp
>
> The declaration of concat::fragment works fine,
> only the collection breaks, which means the define is available to  puppet.
>
> To be more generic it seems to me that the  collection of an exported
> define does not work properly in 2.7.5 ( did not test other case though).

Hrm. I have a suspicion about this; is Nigel right? Do you have
PostgreSQL for StoreConfigs?

If so, can you turn on query logging (in the database, most easily),
and check if we are searching for a resource with type
`Concat::fragment`, but storing with type `Concat::Fragment`?

Daniel

Bruno Leon

unread,
Oct 4, 2011, 10:53:59 PM10/4/11
to puppet...@googlegroups.com
I'm using MySQL not PostgreSQL.
I'll have a look at the queries tomorrow though and post results
here.

Bruno

Greg Sutcliffe

unread,
Oct 5, 2011, 11:21:50 AM10/5/11
to puppet...@googlegroups.com
Almost a "me-too" post, I should try to avoid that...

This sounds like the mail I sent on Monday - I can certainly confirm Bruno's findings for collecting exported custom defines. I get the same error message, and I'm also using a remote MySQL database (no queueing agent, just direct access). 

I'd love to help with the debugging but I'm on a training course this week, and the connection is waaay too slow for database debugging. If you've not solved it by Monday, I'll dive in and provide some debug logs and db traces.

Watching this thread with interest :)

Greg

Bruno Leon

unread,
Oct 7, 2011, 10:12:08 AM10/7/11
to puppet...@googlegroups.com
Hello,

sorry for the delay, I did a few tests and found out that the puppet
master does not even go as far a querying the database.
Starting from a clean query log (mysql), there is no sign of
Concat::Fragment (tried small case as well).

I guess this info also applies to the post "Problems with exported
resources after upgrade to 2.7.5".

--
Bruno


Greg Sutcliffe

unread,
Oct 12, 2011, 6:04:07 AM10/12/11
to puppet...@googlegroups.com
On Friday, 7 October 2011 15:12:08 UTC+1, Bruno Leon wrote:

sorry for the delay, I did a few tests and found out that the puppet
master does not even go as far a querying the database.
Starting from a clean query log (mysql), there is no sign of
Concat::Fragment (tried small case as well).


I concur - I'm using Foreman, which complicates the mysql trace, but as best I can see, 
it's not querying the databse for the exported resources at all.

Since Dan asked for traces, here they are, master and node:


Here's hoping the regression fixes in 2.7.6 fix this too :)

Cheers,
Greg 

Michael Stahnke

unread,
Oct 12, 2011, 12:41:37 PM10/12/11
to puppet...@googlegroups.com
2.7.6 rc2 has this fix. Please let us know if that's not working for you.

> --
> You received this message because you are subscribed to the Google Groups
> "Puppet Users" group.

> To view this discussion on the web visit
> https://groups.google.com/d/msg/puppet-users/-/OAiJdI2v2eoJ.

Reply all
Reply to author
Forward
0 new messages