"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

asp timeout

Maxx666 30.09.2002 - 15:29 1554 28
Posts

Maxx666

Kitemaniac
Avatar
Registered: Sep 2001
Location: Longshore / West..
Posts: 712
Zitat von Ringding
:D

und das braucht eine minute ???

tja...leider sind auch 1674603 Datensätze :D

Maxx666

Kitemaniac
Avatar
Registered: Sep 2001
Location: Longshore / West..
Posts: 712
Zitat von Yeahman
rein interessenshalber, was sagt der Profiler und wie lange dauerts im query analyzer?

im query analyzer dauerts 37 sekunden....LOL....nur noch 7 sekunden müsste das asp script länger durchhalten. :rolleyes:

Guest

Deleted User
Registered: n/a
Location:
Posts: n/a
37 sekunden für a count(*)?
-> schmeiss deine datenbank weg, die taugt nix.

Guest

Deleted User
Registered: n/a
Location:
Posts: n/a
Zitat von .deRElict.
37 sekunden für a count(*)?
-> schmeiss deine datenbank weg, die taugt nix.

stimmt.

überleg dir halt, ob du wirklich alle records gleichzeitig fetchen musst, oder obs zB reicht, nur bestimmte daten zu holen oder immer ein "paket" von 30.000 records oder so.

Guest

Deleted User
Registered: n/a
Location:
Posts: n/a
Er fetcht eh ned alle gleichzeitig sondern will nur mal die Anzahl wissen :D

btw: welche Datenbank hast im Einsatz? ... damit ich in Zukunft einen großen Bogen darum machen kann :d

Guest

Deleted User
Registered: n/a
Location:
Posts: n/a
Zitat von .deRElict.
Er fetcht eh ned alle gleichzeitig sondern will nur mal die Anzahl wissen :D

stimmt. überlesen.

sick. für einen count 37 secs. oarg. :bash:

noledge

CWNE #540
Avatar
Registered: Apr 2001
Location: ::1
Posts: 6837
ich würd was anderes als einen 486 verwenden, weil für sowas simples schafft sogar irgendein grindiger filemaker-pseudo-db schneller... :rolleyes:

Maxx666

Kitemaniac
Avatar
Registered: Sep 2001
Location: Longshore / West..
Posts: 712
jungs....ich hab die datenbank nicht verbrochen.
das waren andere. :bash:

ich weiss, das ist der absolute ******* und glaubt mir, ich schimpfe oft genug darüber.

fakt ist nur ich soll ein asp script basteln, welches gewisse daten aus der verhunzten db holt und diese aufbereitet.

-> hab aber jetzt die sache, nach langer suche im i-net, gelösst (google sei dank..)

der clou ist, vor den aufbau der connection folgendes einfügen:

Conn.CommandTimeout = 0 '0 = unendlich...*LOL*
Conn.Open "PROVIDER=SQLOLEDB;DATA SOURCE=..."


alles anderen timeouts ziehen nur im eigentlichen script code,
für die OLE-DB Connection wirken sie leider nicht.

:)

Maxx666

Kitemaniac
Avatar
Registered: Sep 2001
Location: Longshore / West..
Posts: 712
Zitat von noledge
ich würd was anderes als einen 486 verwenden, weil für sowas simples schafft sogar irgendein grindiger filemaker-pseudo-db schneller... :rolleyes:

ach ja, genau....vielleicht sollte ich doch nicht den 386er verwenden...
gute idee :rolleyes:

Guest

Deleted User
Registered: n/a
Location:
Posts: n/a
Ich frag mich, wie man eine db verhunzt, dass ein pure "count (*) from table;" länger als a paar taktzyklen dauert :D

Sicher dass du nicht noch einen where-teil in dem count hast?

noledge

CWNE #540
Avatar
Registered: Apr 2001
Location: ::1
Posts: 6837
Zitat von Maxx666
ach ja, genau....vielleicht sollte ich doch nicht den 386er verwenden...
gute idee :rolleyes:

naja - mir ist klar, dass die das ad hoc nicht weiterhilft, vorallem wenn du die db nicht "verbrochen" hast, aber normalerweise bekämpft man die ursache und nicht die auswirkungen...

Ringding

Pilot
Avatar
Registered: Jan 2002
Location: Perchtoldsdorf/W..
Posts: 4300
Zitat von .deRElict.
Ich frag mich, wie man eine db verhunzt, dass ein pure "count (*) from table;" länger als a paar taktzyklen dauert :D

Das frag ich mich auch. Allerdings hat unsere MySQL Datenbank, die wir letzte Woche gemacht und zum Spass mal mit 300.000 Records befüllt haben, für genau das gleiche simple "select count(*) from <table>" auch etliche Sekunden gebraucht.

Dass das so lang dauert, kommt wahrscheinlich von der Transaction Isolation. Die kann man ja individuell einstellen. Probier mal damit herum.

Maxx666

Kitemaniac
Avatar
Registered: Sep 2001
Location: Longshore / West..
Posts: 712
Zitat von Ringding
Das frag ich mich auch. Allerdings hat unsere MySQL Datenbank, die wir letzte Woche gemacht und zum Spass mal mit 300.000 Records befüllt haben, für genau das gleiche simple "select count(*) from <table>" auch etliche Sekunden gebraucht.

Dass das so lang dauert, kommt wahrscheinlich von der Transaction Isolation. Die kann man ja individuell einstellen. Probier mal damit herum.

wenn ich wüsste, was du damit meinst, könnte ich damit rumspielen....
:)

Ringding

Pilot
Avatar
Registered: Jan 2002
Location: Perchtoldsdorf/W..
Posts: 4300
Ich muss mal nachschauen, wo man das einstellen kann. Hast du beim Recordset LockType auf adLockReadonly gestellt?

EDIT: Connection hat eine Property "IsolationLevel". Lies dir da mal durch, was das genau kann. Default ist allerdings eh das schnellste. Vielleicht bist du auch in einer impliziten Transaction, die erst beendet wird, wenn du Commit aufrufst. Falls du vorher schon was an der Datenbank gemacht hast, versuch mal direkt vor dem select count(*) ein Commit.
Bearbeitet von Ringding am 01.10.2002, 14:37
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz