Forum Discussion

ATM's avatar
ATM
Occasional Contributor
17 years ago

Multiple regex Contains assertions causing inexplicable slowdown

Previously I used plenty of Contains assertions with "Use token as regular expression" marked with only slight delays for soapUI to process the assertion, but for some reason now the application is slowing/stalling on test steps with multiple regex Contains assertions.  This is only happening in the application; the testrunner is resolving test steps with normal speed.  And if I don't use the regex option then there's no slowdown.  I'm using soapUI Pro 3.0.1, and I already downloaded the files for the latest nightly build with no visible effect to this problem.

Does anyone know what might be happening here so I can fix it? This is becoming a major blocker for me.

15 Replies

  • ATM's avatar
    ATM
    Occasional Contributor
    I think I'm using the bundled jre; i haven't fiddled with anything that would point me to the contrary.  It seems like the problem doesn't always occur for individual requests, but rather in long test cases; as the test goes further on soapUI seems to just seize up on regular expression assertions and take looong periods of time (but the Contains not using regex still go by quickly).

    Here's my system properties (below).  Thank you.

    GRE_HOME=C:\Program Files\eviware\soapUI-Pro-3.0.1/xulrunner-windows

    apple.laf.useScreenMenuBar=true

    awt.toolkit=sun.awt.windows.WToolkit

    com.apple.mrj.application.apple.menu.about.name=SoapUI

    exe4j.consoleCodepage=cp0
    exe4j.isInstall4j=true
    exe4j.launchName=C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\soapUI-Pro-3.0.1.exe
    exe4j.moduleName=C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\soapUI-Pro-3.0.1.exe
    exe4j.semaphoreName=c:_program files_eviware_soapui-pro-3.0.1_bin_soapui-pro-3.0.1.exe0
    exe4j.tempDir=
    exe4j.unextractedPosition=0

    file.encoding=Cp1252
    file.encoding.pkg=sun.io
    file.separator=\

    install4j.appDir=C:\Program Files\eviware\soapUI-Pro-3.0.1\
    install4j.exeDir=C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\

    java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment
    java.awt.printerjob=sun.awt.windows.WPrinterJob
    java.class.path=C:\Program Files\eviware\soapUI-Pro-3.0.1\.install4j\i4jruntime.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\bin\soapui-pro-3.0.1.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\activation-1.1.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\bcprov-jdk15-143.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\binding-2.0.1.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\commons-beanutils-1.7.0.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\commons-cli-1.0.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\commons-codec-1.3.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\commons-collections-3.2.1.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\commons-digester-1.7.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\commons-httpclient-3.1.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\commons-io-1.3.2.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\commons-lang-2.4.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\commons-logging-1.1.1.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\ext-xmlbeans-1.1.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\ezmorph-1.0.5.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\forms-1.0.7.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\groovy-all-1.6.4.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\idw-1.5.0.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\itext-2.1.0.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\j2ee-xmlbeans-1.4.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\jasperreports-3.5.2.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\javamail-1.4.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\jcalendar-1.3.2.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\jcommon-1.0.16.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\jetty-6.1.15.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\jetty-util-6.1.15.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\jfreechart-1.0.13.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\jniwrap-3.7.3.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\js-1.7R2.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\json-lib-2.2.2-jdk15.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\jsr173_1.0_api-xmlbeans-2.4.0.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\jtidy-r820.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\junit-4.4.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\jxbrowser-1.3.21478.301.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\jxl-2.6.10.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\l2fprod-common-directorychooser-7.3.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\l2fprod-common-fontchooser-7.3.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\license4j-1.3.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\log4j-1.2.14.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\looks-2.2.0.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\MozillaGlue-jxbrowser-1.3.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\MozillaInterfaces-jxbrowser-1.3.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\netcomponents-1.3.8a.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\not-yet-commons-ssl-0.3.10.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\opencsv-1.8.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\opensaml-1.1.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\policy-xmlbeans-1.5.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\reports-1.0.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\rsyntaxtextarea-1.3.4.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\saxon-9.1.0.6j.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\saxon-dom-9.1.0.6j.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\serializer-2.7.1.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\servlet-api-2.5-20081211.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\soap-xmlbeans-1.2.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\soapui-3.0.1.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\soapui-coverage-xmlbeans-3.0.1.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\soapui-xmlbeans-3.0.1.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\swingx-soapui.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\tuxpack-0.2.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\wadl-xmlbeans-1.1.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\winpack-3.7.1.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\wsdl4j-1.6.2-fixed.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\wss4j-1.5.8.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\xalan-2.7.1.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\xbean-fixed-2.4.0.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\xbean_xpath-2.4.0.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\xercesImpl-2.9.1.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\xml-apis-2.9.1.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\xmlpublic-2.4.0.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\xmlsec-1.4.3.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\xmlunit-1.2.jar;C:\Program Files\eviware\soapUI-Pro-3.0.1\bin\..\lib\xom-1.1.jar;
    java.class.version=50.0
    java.endorsed.dirs=c:\program files\eviware\soapui-pro-3.0.1\jre\lib\endorsed
    java.ext.dirs=c:\program files\eviware\soapui-pro-3.0.1\jre\lib\ext;C:\WINNT\Sun\Java\lib\ext
    java.home=c:\program files\eviware\soapui-pro-3.0.1\jre
    java.io.tmpdir=C:\DOCUME~1\admathe\LOCALS~1\Temp\
    java.library.path=C:\Program Files\eviware\soapUI-Pro-3.0.1/bin
    java.runtime.name=Java(TM) SE Runtime Environment
    java.runtime.version=1.6.0_14-b08
    java.specification.name=Java Platform API Specification
    java.specification.vendor=Sun Microsystems Inc.
    java.specification.version=1.6
    java.vendor=Sun Microsystems Inc.
    java.vendor.url=http://java.sun.com/
    java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport.cgi
    java.version=1.6.0_14
    java.vm.info=mixed mode
    java.vm.name=Java HotSpot(TM) Client VM
    java.vm.specification.name=Java Virtual Machine Specification
    java.vm.specification.vendor=Sun Microsystems Inc.
    java.vm.specification.version=1.0
    java.vm.vendor=Sun Microsystems Inc.
    java.vm.version=14.0-b16

    line.separator=


    os.arch=x86
    os.name=Windows XP
    os.version=5.1

    path.separator=;

    soapui.ext.actions=C:\Program Files\eviware\soapUI-Pro-3.0.1/bin/actions
    soapui.ext.libraries=C:\Program Files\eviware\soapUI-Pro-3.0.1/bin/ext
    soapui.ext.listeners=C:\Program Files\eviware\soapUI-Pro-3.0.1/bin/listeners
    soapui.home=C:\Program Files\eviware\soapUI-Pro-3.0.1/bin
    soapui.properties=soapui.properties

    sun.arch.data.model=32
    sun.boot.class.path=c:\program files\eviware\soapui-pro-3.0.1\jre\lib\resources.jar;c:\program files\eviware\soapui-pro-3.0.1\jre\lib\rt.jar;c:\program files\eviware\soapui-pro-3.0.1\jre\lib\sunrsasign.jar;c:\program files\eviware\soapui-pro-3.0.1\jre\lib\jsse.jar;c:\program files\eviware\soapui-pro-3.0.1\jre\lib\jce.jar;c:\program files\eviware\soapui-pro-3.0.1\jre\lib\charsets.jar;c:\program files\eviware\soapui-pro-3.0.1\jre\classes
    sun.boot.library.path=c:\program files\eviware\soapui-pro-3.0.1\jre\bin
    sun.cpu.endian=little
    sun.cpu.isalist=pentium_pro+mmx pentium_pro pentium+mmx pentium i486 i386 i86
    sun.desktop=windows
    sun.io.unicode.encoding=UnicodeLittle
    sun.jnu.encoding=Cp1252
    sun.management.compiler=HotSpot Client Compiler
    sun.os.patch.level=Service Pack 3

    user.country=US
    user.dir=C:\Program Files\eviware\soapUI-Pro-3.0.1\bin
    user.home=C:\Documents and Settings\admathe
    user.language=en
    user.name=admathe
    user.timezone=America/Los_Angeles
    user.variant=

    wsi.dir=C:\Program Files\eviware\soapUI-Pro-3.0.1/wsi-test-tools
  • Hi,

    hmm.. can you correlate this to any special "events" in the memory log available at the bottom of the main window?

    regards,

    /Ole
    eviware.com
  • ATM's avatar
    ATM
    Occasional Contributor
    The memory log is very odd.  I've attached a screen shot showing the memory log and pinpointing at what point the test stalls on a regex Contains assertion and the subsequent 5 minutes where it just idles, the memory usage not indicating any extra activity but the test not moving forward.  The test goes through several test steps with similar Contains regex assertions, but after a certain number of them it seems to build up to some "limit" and just stop being able to do them, as if it's filled some kind of buffer that won't accept any more.
  • Hi,

    hm.. can you attach this project file so I can try to reproduce this behaviour? You could first run the testcase (disable these assertions) and after its execution select the "Generate MockService" button in the TestRun log toolbar to create a mockservice that will return me the sames responses as you are getting.. !?

    (you can also mail it to support@eviware.com)

    regards!

    /Ole
    eviware.com