Getting mysql error on console after some hours
- You cannot open a new topic into this forum
- Guests cannot post into this forum
Cam_C
Posts: 20

Hi, I first thought this might be a problem associated with the use of php5.3 but I have now changed to php5.2 and still getting the same error.
Overnight the server is running with no activity, in the morning the MoneyServer console has gone red starting with these lines............
MySql.Data.MySqlClient.MySqlException: Fatal error encountered during command execution. ---> MySql.Data.MySqlClient.MySqlException: Fatal error encountered attempting to read the resultset. ---> MySql.Data.MySqlClient.MySqlException: Reading from the stream has failed. ---> System.IO.EndOfStreamException: Failed to read past end of stream.
....etc... for about 12 lines then ends with .....
at OpenSim.Grid.MoneyServer.MoneyDBService.TryAddUserInfo (OpenSim.Data.MySQL.MySQLMoneyDataWrapper.UserInfo user) [0x00000] in <filename unknown>:0
01:32:45 - [MONEY RPC]: handleClientLogin: Unable to refresh information for user "Lily Blossom" in DB
................
This error only seems to happen after extended periods of inactivity, I have already changed "global wait-timeout" and set it for about a week so thats not the problem.
Also buy land is still not working and I thought it would start working when I downgraded to php5.2 there is no error in log except on startup of apache (mcrypt.so not found, I dont know if thats related, have just spent hours researching problems loading mcrypt on newer linux with older pinned php versions, some say to remove references of mcrypt from .ini)
Any help is always appreciated
Thank you
Cam
Overnight the server is running with no activity, in the morning the MoneyServer console has gone red starting with these lines............
MySql.Data.MySqlClient.MySqlException: Fatal error encountered during command execution. ---> MySql.Data.MySqlClient.MySqlException: Fatal error encountered attempting to read the resultset. ---> MySql.Data.MySqlClient.MySqlException: Reading from the stream has failed. ---> System.IO.EndOfStreamException: Failed to read past end of stream.
....etc... for about 12 lines then ends with .....
at OpenSim.Grid.MoneyServer.MoneyDBService.TryAddUserInfo (OpenSim.Data.MySQL.MySQLMoneyDataWrapper.UserInfo user) [0x00000] in <filename unknown>:0
01:32:45 - [MONEY RPC]: handleClientLogin: Unable to refresh information for user "Lily Blossom" in DB
................
This error only seems to happen after extended periods of inactivity, I have already changed "global wait-timeout" and set it for about a week so thats not the problem.
Also buy land is still not working and I thought it would start working when I downgraded to php5.2 there is no error in log except on startup of apache (mcrypt.so not found, I dont know if thats related, have just spent hours researching problems loading mcrypt on newer linux with older pinned php versions, some say to remove references of mcrypt from .ini)
Any help is always appreciated
Thank you
Cam
Votes:289
Average:3.81
Cam_C
Posts: 20

Some more information to the above issues,
if it seems I am going thru this twice it is because the first time it was on a Windows system at home, and I got it working perfectly, now I am trying to set it up on my remote server which is my live grid, it runs on Linux, Ubuntu 10.4 and I have managed after 2 weeks to downgrade php from 5.3 to the required 5.2.
So this issue relates to Ubuntu 10.4 with php 5.2.9.
I have enabled error logging for landtool.php and the resultant error is here.....................
[error] [client 124.148.xxx.xxx] landtool.php: <?xml version="1.0"?><methodCall><methodName>preflightBuyLandPrep</methodName><params><param><value><struct><member><name>agentId</name><value><string>4403a973-a544-4ef1-8d1f-22d8421585c7</string></value></member><member><name>secureSessionId</name><value><string>9323fe6e-6d02-4557-aa61-e98dd139f871</string></value></member><member><name>billableArea</name><value><int>0</int></value></member><member><name>currencyBuy</name><value><int>0</int></value></member></struct></value></param></params></methodCall>.............................
This is the only error in the log.
I hope this helps in some way
Thanks for any help you may offer
Cam
if it seems I am going thru this twice it is because the first time it was on a Windows system at home, and I got it working perfectly, now I am trying to set it up on my remote server which is my live grid, it runs on Linux, Ubuntu 10.4 and I have managed after 2 weeks to downgrade php from 5.3 to the required 5.2.
So this issue relates to Ubuntu 10.4 with php 5.2.9.
I have enabled error logging for landtool.php and the resultant error is here.....................
[error] [client 124.148.xxx.xxx] landtool.php: <?xml version="1.0"?><methodCall><methodName>preflightBuyLandPrep</methodName><params><param><value><struct><member><name>agentId</name><value><string>4403a973-a544-4ef1-8d1f-22d8421585c7</string></value></member><member><name>secureSessionId</name><value><string>9323fe6e-6d02-4557-aa61-e98dd139f871</string></value></member><member><name>billableArea</name><value><int>0</int></value></member><member><name>currencyBuy</name><value><int>0</int></value></member></struct></value></param></params></methodCall>.............................
This is the only error in the log.
I hope this helps in some way
Thanks for any help you may offer
Cam
Votes:256
Average:1.91
iseki
Posts: 1581

Quote:
Ummm...
This is not error message, although error_log() function.
This message indicates that landtool.php is called by viewer with preflightBuyLandPrep method.
http://www.nsl.tuis.ac.jp/xoops/modules/xpwiki/?OpenSim%2FMoneyServer%2FDevel%2Ffunction_call&word=preflightBuyLandPrep#a847a4c9
http://www.nsl.tuis.ac.jp/xoops/modules/xpwiki/?OpenSim%2FMoneyServer%2FDevel%2Flandtool.php&word=preflightBuyLandPrep
[error] [client 124.148.xxx.xxx] landtool.php: <?xml version="1.0"?><methodCall><methodName>preflightBuyLandPrep</methodName><params><param><value><struct><member><name>agentId</name><value><string>4403a973-a544-4ef1-8d1f-22d8421585c7</string></value></member><member><name>secureSessionId</name><value><string>9323fe6e-6d02-4557-aa61-e98dd139f871</string></value></member><member><name>billableArea</name><value><int>0</int></value></member><member><name>currencyBuy</name><value><int>0</int></value></member></struct></value></param></params></methodCall>.............................
Ummm...
This is not error message, although error_log() function.
This message indicates that landtool.php is called by viewer with preflightBuyLandPrep method.
http://www.nsl.tuis.ac.jp/xoops/modules/xpwiki/?OpenSim%2FMoneyServer%2FDevel%2Ffunction_call&word=preflightBuyLandPrep#a847a4c9
http://www.nsl.tuis.ac.jp/xoops/modules/xpwiki/?OpenSim%2FMoneyServer%2FDevel%2Flandtool.php&word=preflightBuyLandPrep
Votes:111
Average:4.50
Cam_C
Posts: 20

Hello Iseki,
thank you for your reply, unfortunately it does not help me, this means I am not getting any error, although I receive an error inworld trying to buy land "cannot authenticate" can you think of any reason this may be happening please?
I have completely rebuilt the currency server and ran ./setup_scripts.sh.
Do you know if mcrypt is used at all for these functions? because this is the only apache error I recieve.
thank you for your reply, unfortunately it does not help me, this means I am not getting any error, although I receive an error inworld trying to buy land "cannot authenticate" can you think of any reason this may be happening please?
I have completely rebuilt the currency server and ran ./setup_scripts.sh.
Do you know if mcrypt is used at all for these functions? because this is the only apache error I recieve.
Votes:158
Average:4.49
SilverDay
Posts: 8

i am getting a similar error, and nobody tries to buy land, so it cannot be the landtool. here is the log:
20:26:58 - Error updating transation in DB: System.InvalidOperationException: Connection must be valid and open.
at MySql.Data.MySqlClient.MySqlCommand.CheckState () [0x00000] in <filename unknown>:0
at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader (CommandBehavior behavior) [0x00000] in <filename unknown>:0
at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader () [0x00000] in <filename unknown>:0
at MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQuery () [0x00000] in <filename unknown>:0
at OpenSim.Data.MySQL.MySQLMoneyDataWrapper.MySQLMoneyManager.SetTransExpired (Int32 deadTime) [0x00000] in <filename unknown>:0
Money #
Unhandled Exception: System.ArgumentOutOfRangeException: Value must be positive and below the buffer height.
Parameter name: top
at System.TermInfoDriver.SetCursorPosition (Int32 left, Int32 top) [0x00000] in <filename unknown>:0
at System.TermInfoDriver.set_CursorLeft (Int32 value) [0x00000] in <filename unknown>:0
at System.ConsoleDriver.set_CursorLeft (Int32 value) [0x00000] in <filename unknown>:0
at System.Console.set_CursorLeft (Int32 value) [0x00000] in <filename unknown>:0
at OpenSim.Framework.Console.LocalConsole.SetCursorLeft (Int32 left) [0x00000] in <filename unknown>:0
at OpenSim.Framework.Console.LocalConsole.ReadLine (System.String p, Boolean isCommand, Boolean e) [0x00000] in <filename unknown>:0
at OpenSim.Framework.Console.CommandConsole.Prompt () [0x00000] in <filename unknown>:0
at OpenSim.Grid.MoneyServer.MoneyServerBase.Work () [0x00000] in <filename unknown>:0
at OpenSim.Grid.MoneyServer.Program.Main (System.String[] args) [0x00000] in <filename unknown>:0
[screen is terminating]
20:26:58 - Error updating transation in DB: System.InvalidOperationException: Connection must be valid and open.
at MySql.Data.MySqlClient.MySqlCommand.CheckState () [0x00000] in <filename unknown>:0
at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader (CommandBehavior behavior) [0x00000] in <filename unknown>:0
at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader () [0x00000] in <filename unknown>:0
at MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQuery () [0x00000] in <filename unknown>:0
at OpenSim.Data.MySQL.MySQLMoneyDataWrapper.MySQLMoneyManager.SetTransExpired (Int32 deadTime) [0x00000] in <filename unknown>:0
Money #
Unhandled Exception: System.ArgumentOutOfRangeException: Value must be positive and below the buffer height.
Parameter name: top
at System.TermInfoDriver.SetCursorPosition (Int32 left, Int32 top) [0x00000] in <filename unknown>:0
at System.TermInfoDriver.set_CursorLeft (Int32 value) [0x00000] in <filename unknown>:0
at System.ConsoleDriver.set_CursorLeft (Int32 value) [0x00000] in <filename unknown>:0
at System.Console.set_CursorLeft (Int32 value) [0x00000] in <filename unknown>:0
at OpenSim.Framework.Console.LocalConsole.SetCursorLeft (Int32 left) [0x00000] in <filename unknown>:0
at OpenSim.Framework.Console.LocalConsole.ReadLine (System.String p, Boolean isCommand, Boolean e) [0x00000] in <filename unknown>:0
at OpenSim.Framework.Console.CommandConsole.Prompt () [0x00000] in <filename unknown>:0
at OpenSim.Grid.MoneyServer.MoneyServerBase.Work () [0x00000] in <filename unknown>:0
at OpenSim.Grid.MoneyServer.Program.Main (System.String[] args) [0x00000] in <filename unknown>:0
[screen is terminating]
Votes:138
Average:3.33
iseki
Posts: 1581

Hello
Please tell me version of OpenSim, PHP and MySQL.
What is OS (Windows or Linux) ?
Do you use Web Interface?
Can you buy the money from System?
Did you setup include/config.php ?
Does other helper scripts work well?
Please tell me version of OpenSim, PHP and MySQL.
What is OS (Windows or Linux) ?
Do you use Web Interface?
Can you buy the money from System?
Did you setup include/config.php ?
Does other helper scripts work well?
Votes:102
Average:4.12
SilverDay
Posts: 8

OpenSim 7.3.1 PostPatches
PHP 5.3.13
MySQL 5.1.62 (MariaDB) - happens with regular MySQL too though
Linux OpenSuSe 11.4
WebInterface Jopensim
include/config.ph has been setup
Yes buying land etc works fine.
Only problem is the above error after a few hours.
SilverDay
PHP 5.3.13
MySQL 5.1.62 (MariaDB) - happens with regular MySQL too though
Linux OpenSuSe 11.4
WebInterface Jopensim
include/config.ph has been setup
Yes buying land etc works fine.
Only problem is the above error after a few hours.
SilverDay
Votes:217
Average:1.98
SilverDay
Posts: 8

Forgot to add, my banker avatar can buy money without any problems
Votes:143
Average:6.92
SilverDay
Posts: 8

My suspicion is that the moneyserver allows the mysql connections to time out and does not check (and renew) the connections when they are accessed.
Regards
Silverday
Regards
Silverday
Votes:128
Average:6.25
iseki
Posts: 1581

Hi Silverday
I think that even if MySQL Server closes connection, Money Server does not re-connect to MySQL.
The code that controls MySQL of Money Server is still almost original (DTL Money Server).
I will check the code that controls MySQL. But it will require time.
However, why is a connection closed?
The money server continues working for several months in my system.
Thanks
I think that even if MySQL Server closes connection, Money Server does not re-connect to MySQL.
The code that controls MySQL of Money Server is still almost original (DTL Money Server).
I will check the code that controls MySQL. But it will require time.
However, why is a connection closed?
The money server continues working for several months in my system.
Thanks
Votes:116
Average:6.90
Previous post
-
Next post
|
Parent
-
No child
|
Posted on 2012/6/19 23:52
SilverDay
Posts: 8

It might be that persistent connections are disabled in the default cfg for MySQL (would have to check later today).
ATM I am restarting the Moneyserver manually about every 24h. The problem is not critical for me as our grid is a closed grid, where the currency is mainly a convenience and not critical for the economy (and it will stay that way as long as I have anything to say!)
Regards,
SilverDay
ATM I am restarting the Moneyserver manually about every 24h. The problem is not critical for me as our grid is a closed grid, where the currency is mainly a convenience and not critical for the economy (and it will stay that way as long as I have anything to say!)
Regards,
SilverDay
Votes:139
Average:3.38