On 4/18/2011 12:38 AM, Mohamed Lrhazi wrote:
This was driving me nuts... I did an rm -rf /var/lib/puppet, on a
client machine, and after a rerun of puppet agent, the buggy facts
appear again.
when I run the agent against the test master, no buggy facts... and
then it hit me that I am using stored configs, and the facts are in
mysql db, but why would that effect the facts as generated on the
clients?
I dropped the puppet db and restarted the master, and viola! buggy
facts gone... almost, they still reappear as I must have one or two
nodes who are still generating them, but will fix soon.

anyone understand what I am talking about? :) What exactly is
happening? what I call buggy fact ar the once with extra whitespace in
them:

mysql>  select concat('[',name,']')  from fact_names where name like '%gu_%';
+------------------------+
| concat('[',name,']')   |
+------------------------+

(Is baner vs banner part of the issue here?)

| [gu_app_baner        ] |
| [gu_app_banner]        |

It looks like you're getting hit by the... let's call it a quirk that mysql doesn't consider trailing whitespace in equality tests. This means that when the database is checked to see if fact name 'gu_app_baner' exists, the entry for 'gu_app_baner ' causes the query to return true. Here's a demonstration:

mysql> create table names (`name` varchar(255) NOT NULL);
Query OK, 0 rows affected (0.07 sec)

mysql> insert into names values ("foo    ");
Query OK, 1 row affected (0.00 sec)

mysql> select concat('[',name,']') from names where name = "foo";
+----------------------+
| concat('[',name,']') |
+----------------------+
| [foo    ]            |
+----------------------+
1 row in set (0.02 sec)

Beyond that, I have no idea what other impacts the trailing space would cause within puppet.

For what it's worth, postgresql doesn't display this behavior.

--
Frank Sweetser fs at wpi.edu  |  For every problem, there is a solution that
WPI Senior Network Engineer   |  is simple, elegant, and wrong. - HL Mencken
    GPG fingerprint = 6174 1257 129E 0D21 D8D4  E8A3 8E39 29E3 E2E8 8CEC

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

Reply via email to