← Back to team overview

mudlet-makers team mailing list archive

[Bug 1192144] [NEW] killTrigger(tempID) takes a while and variates with time

 

Public bug reported:

It's been
observed[http://forums.mudlet.org/posting.php?mode=reply&f=7&t=3481#pr17189]
that killTrigger is not very quick when used in conjunction with a
massive set of triggers.

Attached is a test case that demonstrates this with real-life data from
a name highlighter. tempTrigger() performs *amazingly*, getting the job
done in a hundredth of a second. killTrigger() on the other hand takes
40+s, variating each time, to do its job:


Run 1:
Creating 12275 triggers took 0.094 seconds.    
Deleting 12275 triggers took 46.673 seconds.   

Run 2: 
Creating 12275 triggers took 0.095 seconds.    
Deleting 12275 triggers took 100.652 seconds.  

Run 3:
Creating 12275 triggers took 0.104 seconds.    
Deleting 12275 triggers took 43.425 seconds.

<restarted Mudlet>

Run 4:
Creating 12275 triggers took 0.103 seconds.    
Deleting 12275 triggers took 3.54 seconds.    

Run 5:
Creating 12275 triggers took 0.11 seconds.    
Deleting 12275 triggers took 26.46 seconds.    

Run 6:
Creating 12275 triggers took 0.137 seconds.    
Deleting 12275 triggers took 55.442 seconds.    

Run 7:
Mudlet actually crashed with:
ASSERT: "uint(i) < uint(size())" in file /usr/include/qt4/QtCore/qstring.h, line 699
Aborted (core dumped)

<restart>
Run 1:
Creating 12275 triggers took 0.097 seconds.    
Deleting 12275 triggers took 4.357 seconds.    

Run 2:
Creating 12275 triggers took 0.107 seconds.    
Deleting 12275 triggers took 27.756 seconds.  

Run 3:
Creating 12275 triggers took 0.122 seconds.    
Deleting 12275 triggers took 53.483 seconds.    

Run 4:
Creating 12275 triggers took 0.137 seconds.    
Deleting 12275 triggers took 80.101 seconds. 

Run 5:
Creating 12275 triggers took 0.101 seconds.    
Deleting 12275 triggers took 106.571 seconds.  

Run 6:  
Creating 12275 triggers took 0.163 seconds.    
Deleting 12275 triggers took 135.803 seconds.  

Run 7:
Creating 12275 triggers took 0.094 seconds.    
Deleting 12275 triggers took 157.775 seconds.    

Run 8:
Creating 12275 triggers took 0.083 seconds.    
Deleting 12275 triggers took 177.296 seconds.    

Run 9:
Creating 12275 triggers took 0.133 seconds.    
Deleting 12275 triggers took 207.396 seconds.    

Run 10:
Creating 12275 triggers took 0.199 seconds.    
Deleting 12275 triggers took 232.67 seconds.    

I'll note that the statistics window reports the triggers just being... disabled, it seems. Here is what it says after these runs:
triggers current total: 122871
trigger patterns total: 122927
tempTriggers current total: 122750
active triggers: 116

This is using latest git.

** Affects: mudlet
     Importance: Undecided
         Status: New

** Attachment added: "killTrigger speed.xml"
   https://bugs.launchpad.net/bugs/1192144/+attachment/3706415/+files/killTrigger%20speed.xml

-- 
You received this bug notification because you are a member of Mudlet
Makers, which is subscribed to Mudlet.
https://bugs.launchpad.net/bugs/1192144

Title:
  killTrigger(tempID) takes a while and variates with time

Status in Mudlet the MUD client:
  New

Bug description:
  It's been
  observed[http://forums.mudlet.org/posting.php?mode=reply&f=7&t=3481#pr17189]
  that killTrigger is not very quick when used in conjunction with a
  massive set of triggers.

  Attached is a test case that demonstrates this with real-life data
  from a name highlighter. tempTrigger() performs *amazingly*, getting
  the job done in a hundredth of a second. killTrigger() on the other
  hand takes 40+s, variating each time, to do its job:

  
  Run 1:
  Creating 12275 triggers took 0.094 seconds.    
  Deleting 12275 triggers took 46.673 seconds.   

  Run 2: 
  Creating 12275 triggers took 0.095 seconds.    
  Deleting 12275 triggers took 100.652 seconds.  

  Run 3:
  Creating 12275 triggers took 0.104 seconds.    
  Deleting 12275 triggers took 43.425 seconds.

  <restarted Mudlet>

  Run 4:
  Creating 12275 triggers took 0.103 seconds.    
  Deleting 12275 triggers took 3.54 seconds.    

  Run 5:
  Creating 12275 triggers took 0.11 seconds.    
  Deleting 12275 triggers took 26.46 seconds.    

  Run 6:
  Creating 12275 triggers took 0.137 seconds.    
  Deleting 12275 triggers took 55.442 seconds.    

  Run 7:
  Mudlet actually crashed with:
  ASSERT: "uint(i) < uint(size())" in file /usr/include/qt4/QtCore/qstring.h, line 699
  Aborted (core dumped)

  <restart>
  Run 1:
  Creating 12275 triggers took 0.097 seconds.    
  Deleting 12275 triggers took 4.357 seconds.    

  Run 2:
  Creating 12275 triggers took 0.107 seconds.    
  Deleting 12275 triggers took 27.756 seconds.  

  Run 3:
  Creating 12275 triggers took 0.122 seconds.    
  Deleting 12275 triggers took 53.483 seconds.    

  Run 4:
  Creating 12275 triggers took 0.137 seconds.    
  Deleting 12275 triggers took 80.101 seconds. 

  Run 5:
  Creating 12275 triggers took 0.101 seconds.    
  Deleting 12275 triggers took 106.571 seconds.  

  Run 6:  
  Creating 12275 triggers took 0.163 seconds.    
  Deleting 12275 triggers took 135.803 seconds.  

  Run 7:
  Creating 12275 triggers took 0.094 seconds.    
  Deleting 12275 triggers took 157.775 seconds.    

  Run 8:
  Creating 12275 triggers took 0.083 seconds.    
  Deleting 12275 triggers took 177.296 seconds.    

  Run 9:
  Creating 12275 triggers took 0.133 seconds.    
  Deleting 12275 triggers took 207.396 seconds.    

  Run 10:
  Creating 12275 triggers took 0.199 seconds.    
  Deleting 12275 triggers took 232.67 seconds.    

  I'll note that the statistics window reports the triggers just being... disabled, it seems. Here is what it says after these runs:
  triggers current total: 122871
  trigger patterns total: 122927
  tempTriggers current total: 122750
  active triggers: 116

  This is using latest git.

To manage notifications about this bug go to:
https://bugs.launchpad.net/mudlet/+bug/1192144/+subscriptions


Follow ups

References