1:
könnte mal jemand eine DB hochladen wo so 5-10 Items gedupet sind ?
2:
Man kann ja Dupes an doppelter serial erkennen, wird beim Trade zuerst das Item gelöscht und dan wd. eingefügt oder exestiert das Item dann Kurzzeitig 2 mal?(Wegen autobann versteht sich )
3:
Deadlock's ? Kann man die irgend wie verhindern könnte man die nicht aber in einen vector packen und abarbeiten?
Bei zu vielen Packets könnte es denn ja aber den ram sprengen auf dauer.
1. Server online stellen.
2. Zwei Charaktere einloggen.
3. Items tauschen von User A nach User B.
4. User B loggt sich aus und User A bleibt online.
5. WorldServer einfach schließen (für Rollback).
6. User B ist gespeichert wegen Logout, User A hat Rollback und Items wieder.
Erstelle eine BASE_VALUE_TBL mit Items, die bereits eine SerialNum enthalten.
Wenn du dann ganz ganz ganz viele Chars erstellst, hast du ganz ganz ganz viele Dupes in der Datenbank. ;p
Deadlocks kannste auch im source verhindern (critical section/lock ist da das Stichwort).
Die Abfragen sind btw gequeued also in nem "Vektor" (um flames zu verhindern, es ist kein vektor sondern wirklich eine queue, deshalb die "").
Mit ram wirst du keine Probleme bekommen, wir reden hier von maximal nem kb pro abfrage (wirklich MAXIMAL) was bei 1024*1024 immerhin 1 gb ist aber ich denke nicht dass das so viel wird
Dupen geht so: Du tradest das item und logst dich mit dem character aus, der das item bekommen hat (wird direkt gespeichert) der character der noch eingeloggt ist hat das item nicht mehr (wurde mitsamt serial zum andern übertragen) aber wurde auch noch nicht gespeichert. Dann wird der Server von den beiden gecrasht ( wie auch immer), server hat keine Möglichkeit mehr, alle character zu speichern (crash, abrupte Terminierung des Prozesses) und beide character existieren in der db mit dem identischen item. Im Klartext heißt das, dass das item nie zur gleichen Zeit während des Handels mehrmals existiert, du also nur wirklich durch abfragen der Datenbank gedupte items auslesen kannst
2:
Man kann ja Dupes an doppelter serial erkennen, wird beim Trade zuerst das Item gelöscht und dan wd. eingefügt oder exestiert das Item dann Kurzzeitig 2 mal?(Wegen autobann versteht sich )
Es wird getradet -> Char 1 loggt sich aus (damit wird dieser gespeichert), Worldserver crasht (muss innerhalb von 900 Sekunden passieren) -> Rollback -> beide haben die getradeten Items
Quote:
3:
Deadlock's ? Kann man die irgend wie verhindern könnte man die nicht aber in einen vector packen und abarbeiten?
Bei zu vielen Packets könnte es denn ja aber den ram sprengen auf dauer.
Naja, was Wurstbrot da sagt, ist nicht wirklich notwendig.
Da Deadlocks ein SQL Server Problem sind und nichts mit der Anwendung zu tun haben (außer sie fragt im Sekundentakt Gigabytes von Daten ab), muss man in den Datenbanken daran arbeiten.
Der Server braucht länger für eine Abfrage, lockt für diesen Zeitraum den Zugriff, währenddessen will ein anderer Prozess darauf zugreifen -> Deadlock.
Hat also NICHTS mit dem Sourcecode zu tun.
Da Deadlocks ein SQL Server Problem sind und nichts mit der Anwendung zu tun haben (außer sie fragt im Sekundentakt Gigabytes von Daten ab), muss man in den Datenbanken daran arbeiten.
Der Server braucht länger für eine Abfrage, lockt für diesen Zeitraum den Zugriff, währenddessen will ein anderer Prozess darauf zugreifen -> Deadlock.
Hat also NICHTS mit dem Sourcecode zu tun.
Indizes auf Tables setzen und fertig.
Explain please
2:
Das heißt ich sollte kein auto bann geben ? Den so wie ich verstehe könnten accs bei crashes gebannt werden oder allgemein.
?
2:
Das heißt ich sollte kein auto bann geben ? Den so wie ich verstehe könnten accs bei crashes gebannt werden oder allgemein.
?
Du kannst niemals zu einer 100% Wahrscheinlichkeit sagen, dass ein Item vosaetzlich geduped ist. (Es sei denn, es kommt zig mal mit den gleichen Accounts/Characteren vor)
[SQL Abfrage-Help] Gedupte Items anhand doppelter ID finden? 05/06/2011 - Flyff Private Server - 14 Replies Heyho liebe Com,
ich wollte mal kurz nach schnellem Rat fragen.
Gibt es eine SQL Abfrage, die mir doppelte IDs aus einer Tabelle ausgibt?
Sprich.
Es wurde vorhin geduped, jedes Item was nicht Stapelbar ist, hat eine eigene, einmalige ID.
Kommt diese mehrmals vor, wurde dieses Item geduped.
Wäre echt nett, wenn mir wer helfen könnte,
Gedupte Runen cuben 04/07/2010 - Diablo 2 - 12 Replies Bevor sich einer aufregt: ich dupe weder, noch besitze ich gedupte Runen (na das will ich doch mal hoffen ^^).
Aber nun möchte man dann irgendwann doch ne schöne Ber-Rune haben (oder zwei ^^). Finden, selbst mit Bot, kann lange dauern, und ertaden, egal wo, kann nie 100% sicher sein. Also denkt man darüber nach, sich eine Rune "kleiner" zwei mal zu holen, und diese dann zu cuben.
Jetzt kann es natürlich sein, dass diese Runen dann auch gedupt sind. Also bringt dieser Gedanke irgendwas, oder...