Definer does not exist

Installing and configuring Tera-WURFL on your server.

Definer does not exist

Postby rythmik1 » Fri Jan 14, 2011 11:50 am

One of my viewers sent me the attached error. I'm unable to reproduce this error myself and am wondering if there is something obvious that I need to change, and why it might work for most people but produce this error for a random user.

We are running mysql 5.1.37, and the wurfl user has all privileges.

Thanks in advance!
Attachments
error message.JPG
error message.JPG (89.15 KiB) Viewed 5313 times
rythmik1
 
Posts: 6
Joined: Fri Oct 22, 2010 11:31 am

Re: Definer does not exist

Postby kamermans » Fri Jan 14, 2011 12:13 pm

The way I understand it is that you are hosting a site using Tera-WURFL, and you do not see this error, but one of the people using your site does, correct? If so, then obviously the proc definer (scholar_wurfl) exists in MySQL, otherwise you would get this error all the time. The error itself is passed through from MySQL, so you might try login to MySQL as that user and run that query just to verify that MySQL is not sending a misleading error message. Also, you might want to take a look at your php error log and see when and how often this exception is thrown. Perhaps MySQL is in a weird state (like restarting) at a certain time and the user was unlucky enough to have hit it exactly then.
Thanks,

Steve Kamerman
Tera-WURFL Author
COO of ScientiaMobile

IMPORTANT ANNOUNCEMENT! Tera-WURFL and WURFL have joined forces! We have launched ScientiaMobile to provide commercial support for our device detection solutions.

Tera-WURFL.com | Device Explorer
kamermans
Site Admin
 
Posts: 323
Joined: Wed Mar 10, 2010 12:06 pm
Location: Fort Worth, TX

Re: Definer does not exist

Postby rythmik1 » Tue Jan 18, 2011 11:22 am

I re-enabled it, tested it working well, and another user posted this error:

Catchable fatal error: Argument 1 passed to TeraWurfl::addTopLevelSettings() must be an array, null given, called in /home/scholar/public_html/default/Tera-WURFL/TeraWurfl.php on line 333 and defined in /home/scholar/public_html/default/Tera-WURFL/TeraWurfl.php on line 469

Is there any reason why random users would get errors and others would not?
rythmik1
 
Posts: 6
Joined: Fri Oct 22, 2010 11:31 am

Re: Definer does not exist

Postby rythmik1 » Tue Jan 18, 2011 11:32 am

Also, another user sent in another instance of the first error I mentioned above, so it doesn't seem that the database would be the culprit here. Perhaps it is some error with the install, but it wouldn't make sense that it would work for some and not others. I read somewhere else that possibly we should switch from mysql5 to mysql4 in the configuration. We are running version 5 though so I don't want to blindly adjust that without some advice here.
rythmik1
 
Posts: 6
Joined: Fri Oct 22, 2010 11:31 am

Re: Definer does not exist

Postby kamermans » Tue Jan 18, 2011 2:38 pm

I used to see these errors in my log files but I don't remember what caused them. I'll get to the bottom of it and let you know when it's resolved.
Thanks,

Steve Kamerman
Tera-WURFL Author
COO of ScientiaMobile

IMPORTANT ANNOUNCEMENT! Tera-WURFL and WURFL have joined forces! We have launched ScientiaMobile to provide commercial support for our device detection solutions.

Tera-WURFL.com | Device Explorer
kamermans
Site Admin
 
Posts: 323
Joined: Wed Mar 10, 2010 12:06 pm
Location: Fort Worth, TX

Re: Definer does not exist

Postby kamermans » Tue Jan 18, 2011 3:02 pm

Fixed. I'm still not quite sure why this is happening - I've had nearly 200,000 visits on my site in the last year and I only have a handful of occurrences. It is likely due to a WURFL entry that is missing a required attribute. The update just ignores this since top-level settings are not device capabilities anyway and there is now practical alternative.

You can download Tera-WURFL with the update here:
https://github.com/kamermans/Tera-WURFL

The specific commit is here:
https://github.com/kamermans/Tera-WURFL ... 1a88c4d223
Thanks,

Steve Kamerman
Tera-WURFL Author
COO of ScientiaMobile

IMPORTANT ANNOUNCEMENT! Tera-WURFL and WURFL have joined forces! We have launched ScientiaMobile to provide commercial support for our device detection solutions.

Tera-WURFL.com | Device Explorer
kamermans
Site Admin
 
Posts: 323
Joined: Wed Mar 10, 2010 12:06 pm
Location: Fort Worth, TX

Re: Definer does not exist

Postby rythmik1 » Tue Jan 18, 2011 5:36 pm

So, this is interesting:

If I use FF, I get no error.
If I use IE, I get the short error above (The Catchable Fatal Error)
If I use Chrome, I get the first, longer error at the top.

All using the same computer, same user login, etc.

Per your advice on other posts, I switched from Mysql5 to Mysql4 in the config file, refreshed all browsers and they all worked fine.

I will move on. Please update this post if you think there is any problem with this modification.
rythmik1
 
Posts: 6
Joined: Fri Oct 22, 2010 11:31 am

Re: Definer does not exist

Postby kamermans » Tue Jan 18, 2011 5:42 pm

Very strange indeed. Using the MySQL4 adapter is perfectly fine on MySQL5 - all it really does is keep from using the stored procedures. Thanks for your troubleshooting!
Thanks,

Steve Kamerman
Tera-WURFL Author
COO of ScientiaMobile

IMPORTANT ANNOUNCEMENT! Tera-WURFL and WURFL have joined forces! We have launched ScientiaMobile to provide commercial support for our device detection solutions.

Tera-WURFL.com | Device Explorer
kamermans
Site Admin
 
Posts: 323
Joined: Wed Mar 10, 2010 12:06 pm
Location: Fort Worth, TX


Return to Installation / Configuration

Who is online

Users browsing this forum: No registered users and 4 guests

cron