Openfire 3.9.1 with monitoring service 1.4 stack overflow 1824

I’m new to Openfire and have installed 3.9.1 with the Montoring Service plugin 1.4. Whenever I go to the Archiving tab and either do a search or even just click to a different tab I get a “Stack overflow at line: 1824” message. Everything seems to work correctly after clicking “OK” on the messgae. I tried doing a search and found other people with the same message but did not find a solution. If the solution is already posted and I didn’t find it I apologize. So please, if anyone can help me get this resolved I would appreciate it.

Bruce Peterson

I am having the same error. But archiving is not working for me.

I have asked for help as well.

please post the error log.

Hi…I uploaded my zipped up error log with same desctiption. Can you get to it?

Thanks
error.log.zip (19299 Bytes)

yes, next time try to attach the file here in the thread (click the “undefined” button in the top right corner), or just paste part of it in the thread, easier than looking for it

Here’s part of the error log for others to see.

2014.02.12 12:27:53 org.jivesoftware.openfire.reporting.stats.RrdSqlBackend - Error while accessing information in database: java.sql.SQLException: Invalid object name ‘ofRRDs’.

2014.02.12 12:27:53 org.jivesoftware.openfire.reporting.stats.StatsEngine - Error sampling for statistic server_bytes_in

java.io.FileNotFoundException: Could not open server_bytes [non existent]

at org.jrobin.core.RrdDb.(Unknown Source)

at org.jrobin.core.RrdDb.(Unknown Source)

at org.jivesoftware.openfire.reporting.stats.StatsEngine$SampleTask.run(StatsEngin e.java:362)

at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)

at java.util.concurrent.FutureTask.run(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

2014.02.12 12:27:53 org.jivesoftware.openfire.reporting.stats.RrdSqlBackend - Error while accessing information in database: java.sql.SQLException: Invalid object name ‘ofRRDs’.

2014.02.12 12:27:53 org.jivesoftware.openfire.reporting.stats.StatsEngine - Error sampling for statistic sessions

java.io.FileNotFoundException: Could not open sessions [non existent]

at org.jrobin.core.RrdDb.(Unknown Source)

at org.jrobin.core.RrdDb.(Unknown Source)

at org.jivesoftware.openfire.reporting.stats.StatsEngine$SampleTask.run(StatsEngin e.java:362)

at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)

at java.util.concurrent.FutureTask.run(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

2014.02.12 12:27:53 org.jivesoftware.openfire.reporting.stats.RrdSqlBackend - Error while accessing information in database: java.sql.SQLException: Invalid object name ‘ofRRDs’.

2014.02.12 12:27:53 org.jivesoftware.openfire.reporting.stats.StatsEngine - Error sampling for statistic packet_count

java.io.FileNotFoundException: Could not open packet_count [non existent]

at org.jrobin.core.RrdDb.(Unknown Source)

at org.jrobin.core.RrdDb.(Unknown Source)

at org.jivesoftware.openfire.reporting.stats.StatsEngine$SampleTask.run(StatsEngin e.java:362)

at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)

at java.util.concurrent.FutureTask.run(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

Looks to me like you have a database table problem. I’m not sure what makes the ofRRDs table, if it’s a standard table or from the monitoring plugin, or something else. But, there’s a problem with it.

I’ve attached Jill’s logs to a post and deleted the document.

RRD probably stays for Round Robin Database. This comes with the Monitoring Service and stores archives and i think statistics in such way, that it stays of the same size, but statistics accumulate further.

I had suspected it was a Round Robin thing…

Are you using the embedded database or did you attach OF to an external database like MySQL or MSSQL, etc?

If you used an external database, make certain you did the database setup guide during your openfire install (it’s in the documentation directory).

I would try uninstalling the Monitoring plugin via the OF UI Plugins page, restart OF just to be certain, then reinstall the plugin and see what happens. From a quick look at the plugin’s source, it does create this table (and several others) when it’s installed.

CREATE TABLE ofRRDs (

id VARCHAR(100) NOT NULL,

updatedDate BIGINT NOT NULL,

bytes MEDIUMBLOB NULL,

PRIMARY KEY (id)

);

I hesitate to make this suggestion, but at last resort you could *try *dropping (if exists) and re-creating that table in your database. But, I’d say try reinstalling the plugin first before we do anything else.

thank you for your assistance.

We are using MSSQL on a clustered instance.

I asked our DBA and the table did not exist.

I had tried reloading that plugin yesterday.

Well I did a reload…I didnt delete it and re-add it.

so let me see we have since she added the table.

EDIT: here’s the SQL Server schema if she needs it (it’s available in the plugin’s source)

Message was edited by: Jason
monitoring_sqlserver.sql.zip (687 Bytes)

Well things are better.

Our DBA ran the script that was in the monitoring folder and now we have DB’s and it seems to be archiving.

However, the index is still at 0 and searching brings no results.

when I tell the index to rebuid, I get an object error.

thank you for the zip file. i will get it to her.

thanks for the zip…it is the same that she ran already.

OHHH SNAP !

even though I get the object error …it looks like the number has changed for the index.

However, I started up a convo with my co-worker, put in some cool words like Barbados, St Thomas, frickin…and they are not coming up in the search results.

i will keep an eye on things.

any idea how often the index gets updated?

Should search results be pretty quick?

yes, the schema in the attached zip above does setup several indexes as well as several tables. that schema assumes the tables and index’s don’t already exist, so your DBA may need to blow them out and rebuild them.

let us know how it goes.

well, pasting the page didn’t work, here’s a screenshot

what does your Archive Settings look like? Here’s mine from a OF 3.8.2 install:

I am unauthorized to insert my capture

can you authorize me to add my screenshot?

hmm, well your settings look correct to me. perhaps the conversation was “still in progress” and hadn’t reached the 10 minute idle-timeout setting yet? I’m not 100%, but I don’t think a convo will show until it’s “ended” as far as the plugin in concerned.

Stack overflow error still persists.

However, archiving and searching are good to go.

Thanks for your help

try flushing out your openfire error log, restart openfire, then post here the new contents of your error log (so we can get a clean error log without anything else confusing things)

Good Morning,

I have done as you asked. i cleard the log and then recreated the overstack error.

here is the new log.

Thanks
error.log.zip (3224 Bytes)

hmm, you are still getting a LOT of database errors… it’s looking like the database schema was not imported or not imported correctly during OF initial setup.

java.sql.SQLException: The ntext data type cannot be selected as DISTINCT because it is not comparable.

java.sql.SQLException: Invalid object name ‘ofBookmark’.

etc… etc…

perhaps the user account which was used during OF setup did not have all the correct privledges to set everythign up automatically.

If you are not attached to your OF install at this point, I would probably suggest it easier to blow it all out completely and start fresh (ie. drop the database completely, kill your OF install, and start over from extracting the zip)

Make sure to do the database documentation (in the documentation folder) and make sure the user you set things up with has the correct permissions.