Super smart advice to run a query every second that will definitely take >1s to execute, plus "abnormal" counts, do you want to ban donators for a purchase of multiple stacks of scrolls?Quote:
If you can't fix it, you can still track it.
1) Make a SQL Job, that will run every second, tracking for the items, once you've found abnormal counts, you can automatically ban this player account and character and probably kick it out of the game :).
I am sorry, but you still have much to learn, I suppose you aren't a certified DBA..., anyways, do it your own way :).Quote:
Super smart advice to run a query every second that will definitely take >1s to execute, plus "abnormal" counts, do you want to ban donators for a purchase of multiple stacks of scrolls?
And did you think of the people that might abuse such bugs slightly to be safe from the admins?
(Implies that you aren't running a server for only 10 Characters)
I can understand that people that never dealt with large databases lack of knowledge about the performance of queries and the rows that they are affecting, you should probably get a database, populate it with data and try your version out.Quote:
I am sorry, but you still have much to learn, I suppose you aren't a certified DBA..., anyways, do it your own way :).
You don't know about indexing, you don't know about views, you don't know about pre-caching and transactioning of data, you also don't know about pre-compiled queries and also don't know about incremental / differential queries, so once you learn this, let me know :).Quote:
I can understand that people that never dealt with large databases lack of knowledge about the performance of queries and the rows that they are affecting, you should probably get a database, populate it with data and try your version out.
I'm sure that even you will recognize that your way is impracticable for a table that contains several millions of records.
I don't need a certification to know that you're insanely wrong [Only registered and activated users can see links. Click Here To Register...]
You want to track data that is constantly changed, plus you have to run through all the records to check whether a stack is suspicious or not.Quote:
You don't know about indexing, you don't know about views, you don't know about pre-caching and transactioning of data, you also don't know about pre-compiled queries and also don't know about incremental / differential queries, so once you learn this, let me know :).
There are techniques which you don't know, as for example 'In memory/temporary tables', which you can use for extremely modifiable tables, if this is the case, also you can use differential queries to check for the 'in-modifying' data during the transactions, you can also make the usage of indexes to reduce the I/O overhead during your transactions, there are 'ways' of doing the same thing, if you are a performance freak, still I do it, and I don't have any issue with this, however if you think it doesn't works, or it wouldn't work the way you expect, don't do it :).Quote:
You want to track data that is constantly changed, plus you have to run through all the records to check whether a stack is suspicious or not.
Using assemblies to process the data doesn't change the fact that you have to get the data from the table first.
Your way would work if the table was static, _Items is exactly the opposite which contains data that is changed every second multiple times.
One question, did you google for random fancy-looking words to state here?
I never said that it won't work, I said that it's impracticable and simply a freaking bad idea.Quote:
There are techniques which you don't know, as for example 'In memory/temporary tables', which you can use for extremely modifiable tables, if this is the case, also you can use differential queries to check for the 'in-modifying' data during the transactions, you can also make the usage of indexes to reduce the I/O overhead during your transactions, there are 'ways' of doing the same thing, if you are a performance freak, still I do it, and I don't have any issue with this, however if you think it doesn't works, or it wouldn't work the way you expect, don't do it :).
How to fix it? what to do? i dont get it.Quote:
-------------------------------------------
Agent server Exploit (Packets of crash)
PacketCode:Paket : 8 {8 ; 0} Veri Boyutu : 129 Byte {129 ; 0} Toplam Büyüklük : 532 Byte {449 ; 83} Veri Hz : 0.9 KB/Sn Yakalama Zaman : 25.06.2013 22:43:46:552 ================================================== [25.06.2013 22:43:46:552] 00000000 25 00 00 50 00 00 0E 41 41 75 26 98 AE 82 E8 BB %..P...A Au&ک®‚è» 00000010 00 00 00 19 00 00 00 99 25 03 DD BA 18 E0 1A C3 .......™ %.ف؛.à.أ 00000020 D9 F4 5D 1B B4 69 6A AB 48 1C 21 09 00 00 50 00 ظô].´ij« H.!...P. 00000030 00 10 47 48 EC 19 A3 DA 2F E9 0E 00 01 20 00 00 ..GHى.£ع /é... .. 00000040 0B 00 41 67 65 6E 74 53 65 72 76 65 72 00 05 00 ..AgentS erver... 00000050 0D 60 00 00 01 01 00 05 20 0B 00 0D 60 00 00 00 .`...... ...`... 00000060 01 00 01 C3 02 05 00 00 00 02 05 00 0D 60 00 00 ...أ.... .....`.. 00000070 01 01 00 05 60 06 00 0D 60 00 00 00 03 00 02 00 ....`... `....... 00000080 02
----------------------------------------------------Code:0x2005