Go Back   EQEmulator Home > EQEmulator Forums > Support > Support::Windows Servers

Support::Windows Servers Support forum for Windows EQEMu users.

Reply
 
Thread Tools Display Modes
  #1  
Old 12-18-2012, 11:38 PM
sorvani
Dragon
 
Join Date: May 2010
Posts: 966
Default UCS Error

okay can someone tell me WTF i messed up or missed.

I dumped everything (dropped schema and deleted server folder) for my test server and started over with the new DB.

Everything works fine except UCS (chatserver). The console is getting spammed with:
Code:
[Debug] [UCS__ERROR] Error in GetAccountStatus
and I have no clue why.
not that i need channels for a simple test server. just the point of it.
Reply With Quote
  #2  
Old 12-18-2012, 11:46 PM
lerxst2112
Demi-God
 
Join Date: Aug 2010
Posts: 1,743
Default

Code:
void Database::GetAccountStatus(Client *c) {
...
	if (!RunQuery(query,MakeAnyLenString(&query, "select `status`, `hideme`, `karma`, `revoked` from `account` where `id`='%i' limit 1",
					   c->GetAccountID()),errbuf,&result)){

...
	if(mysql_num_rows(result) != 1)
	{
		_log(UCS__ERROR, "Error in GetAccountStatus");
		mysql_free_result(result);
		return;
	}
So, looking at that I'd guess you're getting 0 rows for that query. *shrug*
Reply With Quote
  #3  
Old 12-19-2012, 12:43 AM
sorvani
Dragon
 
Join Date: May 2010
Posts: 966
Default

Quote:
Originally Posted by lerxst2112 View Post
So, looking at that I'd guess you're getting 0 rows for that query. *shrug*
That's what i said. no f'n clue.
Reply With Quote
  #4  
Old 12-19-2012, 11:28 AM
bad_captain
Developer
 
Join Date: Feb 2009
Location: Cincinnati, OH
Posts: 512
Default

Or more than 1...
Reply With Quote
  #5  
Old 12-19-2012, 11:38 AM
Derision
Developer
 
Join Date: Feb 2004
Location: UK
Posts: 1,540
Default

There can't be more than one, since the query is bounded with 'LIMIT 1'.

I would enable UCS__TRACE logging and see if there is anything prior in the log, as it seems to me that the code that is associating an account ID with the character name is failing for some reason.
Reply With Quote
  #6  
Old 12-19-2012, 01:44 PM
sorvani
Dragon
 
Join Date: May 2010
Posts: 966
Default

nothign more than the obvious that it is picking up id = 0
Only character logged in is my GM.
Code:
---------------------------------------------
[12.19. - 11:39:24] Starting Log: logs/eqemu_debug_chatchannels_1612.log
[12.19. - 11:39:24] [UCS__INIT] Starting EQEmu Universal Chat Server.
[12.19. - 11:39:24] [UCS__INIT] Log settings loaded from log.ini
[12.19. - 11:39:24] [UCS__INIT] Connecting to MySQL...
[12.19. - 11:39:24] [UCS__INIT] Loaded default rule set 'default'
[12.19. - 11:39:24] [UCS__INIT] Expiring mail...
[12.19. - 11:39:24] [UCS__INIT] There are 0 messages in the database.
[12.19. - 11:39:24] [UCS__INIT] Expired 0 trash messages.
[12.19. - 11:39:24] [UCS__INIT] Expired 0 read messages.
[12.19. - 11:39:24] [UCS__INIT] Expired 0 unread messages.
[12.19. - 11:39:24] [UCS__INIT] Client (UDP) Chat listener started on port 7778.
[12.19. - 11:39:24] [UCS__INIT] Loading chat channels from the database.
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Antonica], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Bard], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Beastlord], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Berserker], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Brokenskull], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Cleric], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Druid], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Enchanter], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Faydwer], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [General], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Kunark], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Kuua], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Luclin], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Magician], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Monk], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Necromancer], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Newplayers], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Odus], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Paladin], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Planes], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Ranger], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Rogue], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Shadowknight], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Shaman], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Taelosia], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Velious], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Warrior], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__TRACE] New ChatChannel created: Name: [Wizard], Owner: [*System*], Password: [], MinStatus: 0
[12.19. - 11:39:24] [UCS__INIT] Connected to World.
[12.19. - 11:39:24] [NET__WORLD] Connected to World: localhost:9000
[12.19. - 11:41:11] [UCS__TRACE] GetAccountStatus Query: select `status`, `hideme`, `karma`, `revoked` from `account` where `id`='0' limit 1
[12.19. - 11:41:11] [UCS__ERROR] Error in GetAccountStatus
[12.19. - 11:41:16] [UCS__TRACE] GetAccountStatus Query: select `status`, `hideme`, `karma`, `revoked` from `account` where `id`='0' limit 1
[12.19. - 11:41:16] [UCS__ERROR] Error in GetAccountStatus
[12.19. - 11:41:23] [UCS__TRACE] GetAccountStatus Query: select `status`, `hideme`, `karma`, `revoked` from `account` where `id`='0' limit 1
[12.19. - 11:41:23] [UCS__ERROR] Error in GetAccountStatus
[12.19. - 11:41:28] [UCS__TRACE] GetAccountStatus Query: select `status`, `hideme`, `karma`, `revoked` from `account` where `id`='0' limit 1
[12.19. - 11:41:28] [UCS__ERROR] Error in GetAccountStatus
[12.19. - 11:41:33] [UCS__TRACE] GetAccountStatus Query: select `status`, `hideme`, `karma`, `revoked` from `account` where `id`='0' limit 1
[12.19. - 11:41:33] [UCS__ERROR] Error in GetAccountStatus
[12.19. - 11:41:38] [UCS__TRACE] GetAccountStatus Query: select `status`, `hideme`, `karma`, `revoked` from `account` where `id`='0' limit 1
[12.19. - 11:41:38] [UCS__ERROR] Error in GetAccountStatus
Reply With Quote
  #7  
Old 12-19-2012, 02:43 PM
bad_captain
Developer
 
Join Date: Feb 2009
Location: Cincinnati, OH
Posts: 512
Default

Quote:
Originally Posted by Derision View Post
There can't be more than one, since the query is bounded with 'LIMIT 1'.
Ahh missed that on my phone. -1 to me.
Reply With Quote
  #8  
Old 12-19-2012, 03:34 PM
lerxst2112
Demi-God
 
Join Date: Aug 2010
Posts: 1,743
Default

Heh, I initially thought it might be more than 1 as well til I noticed the limit.

Is there an id 0 in your account table? Are all of those columns there? If you run that query in your sql tool of choice does it also fail?
Reply With Quote
  #9  
Old 12-19-2012, 04:32 PM
sorvani
Dragon
 
Join Date: May 2010
Posts: 966
Default

Result from MySQL Workbench:
Code:
3	14:27:58	select `status`, `hideme`, `karma`, `revoked` from `account` where `id`='0' limit 1	0 row(s) returned

Modified Query & Result
Code:
select `id`, `status`, `hideme`, `karma`, `revoked` from `account`;
'47xxx', '255', '1', '2887', '0'
'38xxx', '0', '0', '6406', '0'
'38xxx', '0', '0', '6193', '0'
'39xxx', '0', '0', '6149', '0'
nothing at all strange in my opinion.
Reply With Quote
  #10  
Old 12-19-2012, 04:45 PM
lerxst2112
Demi-God
 
Join Date: Aug 2010
Posts: 1,743
Default

So, it would appear your table is fine, but somehow the id is wrong in the client object.

I'm not super familiar with the ucs code, but looking at Clientlist::Process() I can see how it could happen. A new Client object is constructed and added to the list with a default ID of 0, then the list is iterated and unless OP_MailLogin is processed for that client the ID won't ever change to what it should be.

Maybe you're missing an opcode or something is being processed out of order?
Reply With Quote
  #11  
Old 12-19-2012, 05:12 PM
sorvani
Dragon
 
Join Date: May 2010
Posts: 966
Default

The UCS project has not been changed minus getting renamed in the windows build.
So I am working on the assumption I missed something when I rebuilt clean. but I have no idea what.
Reply With Quote
  #12  
Old 12-19-2012, 05:25 PM
sorvani
Dragon
 
Join Date: May 2010
Posts: 966
Default

Found it, my router was the problem.

A month or so ago I changed from the router I was using to a pfSense firewall and i never added a redirect for the subdomain I had put in the eqemu_config.xml file for the mailserver and chatserver.

I put the local IP in the config, restarted the server and it all starts. That was a completely non-intuitive error.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 01:05 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3