◐ Shell
clean mode source ↗

Wrong rollback warnings in utPLSQL Development Environment

Describe the bug

When I refresh my utpPLSQL development environment I get the following test result:

Warnings:
 
  1) utplsql.ut3_tester.core
      Unable to perform automatic rollback after test suite. An implicit or explicit commit/rollback occurred in procedures:
      
      Use the "--%rollback(manual)" annotation or remove commit/rollback/ddl statements that are causing the issue.
 
  2) utplsql
      Unable to perform automatic rollback after test suite. An implicit or explicit commit/rollback occurred in procedures:
      
      Use the "--%rollback(manual)" annotation or remove commit/rollback/ddl statements that are causing the issue.
 
Finished in 84.704215 seconds
888 tests, 0 failed, 0 errored, 5 disabled, 2 warning(s)

But when I rerun the tests I do not get this warnings again.

What am I doing wrong?

Provide version info

Information about utPLSQL and Database version,

19.0.0.0.0
19.0.0


PL/SQL procedure successfully completed.


UT_VERSION                                                  
------------------------------------------------------------
v3.1.8.3169-develop


BANNER                                                                           BANNER_FULL                                                                                                                                                      BANNER_LEGACY                                                                        CON_ID
-------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------- ----------
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production           Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production                                                                                           Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production                    0
                                                                                 Version 19.2.0.0.0                                                                                                                                                                                                                                          



PARAMETER                      VALUE                                                           
------------------------------ ----------------------------------------------------------------
NLS_LANGUAGE                   ENGLISH                                                         
NLS_TERRITORY                  SWITZERLAND                                                     
NLS_CURRENCY                   SFr.                                                            
NLS_ISO_CURRENCY               SWITZERLAND                                                     
NLS_NUMERIC_CHARACTERS         .'                                                              
NLS_CALENDAR                   GREGORIAN                                                       
NLS_DATE_FORMAT                DD.MM.YYYY HH24:MI:SS                                           
NLS_DATE_LANGUAGE              ENGLISH                                                         
NLS_SORT                       BINARY                                                          
NLS_TIME_FORMAT                HH24:MI:SSXFF                                                   
NLS_TIMESTAMP_FORMAT           DD.MM.RR HH24:MI:SSXFF                                          

PARAMETER                      VALUE                                                           
------------------------------ ----------------------------------------------------------------
NLS_TIME_TZ_FORMAT             HH24:MI:SSXFF TZR                                               
NLS_TIMESTAMP_TZ_FORMAT        DD.MM.RR HH24:MI:SSXFF TZR                                      
NLS_DUAL_CURRENCY              SF                                                              
NLS_COMP                       BINARY                                                          
NLS_LENGTH_SEMANTICS           BYTE                                                            
NLS_NCHAR_CONV_EXCP            FALSE                                                           

17 rows selected. 


PORT_STRING                                                 
------------------------------------------------------------
x86_64/Linux 2.4.xx

Information about client software

UTPLSQL_CLI_VERSION="3.1.6" (as configured in the current develop branch)

To Reproduce

  1. Refresh develop branch via git
  2. Run the following (excerpt of a shell script)
# local cloned utPLSQL repository, is different in your environment
cd /Users/phs/github/utPLSQL

git fetch --all
chmod +x development/*.sh
chmod +x test/*.sh
chmod +x .travis/*.sh

# configuring connection for my database for utPLSQL development
echo "export CONNECTION_STR=127.0.0.1:1521/odb.docker" >> development/env.sh

. development/env.sh
development/cleanup.sh
development/refresh_ut3.sh
development/refresh_sources.sh

# copying JARs which must not be distributed from my local SQLcl installation
cp /usr/local/bin/sqlcl/lib/ojdbc8.jar utPLSQL-cli/lib
cp /usr/local/bin/sqlcl/lib/orai*.jar utPLSQL-cli/lib

development/install.sh
test/install_and_run_tests.sh

then the results contains unexpected warnings:

Warnings:
 
  1) utplsql.ut3_tester.core
      Unable to perform automatic rollback after test suite. An implicit or explicit commit/rollback occurred in procedures:
      
      Use the "--%rollback(manual)" annotation or remove commit/rollback/ddl statements that are causing the issue.
 
  2) utplsql
      Unable to perform automatic rollback after test suite. An implicit or explicit commit/rollback occurred in procedures:
      
      Use the "--%rollback(manual)" annotation or remove commit/rollback/ddl statements that are causing the issue.
 
Finished in 84.704215 seconds
888 tests, 0 failed, 0 errored, 5 disabled, 2 warning(s)
  1. Rerun the tests
cd test
time . ./${DIR}/run_tests.sh

then the result is as expected:

Finished in 62.915066 seconds
888 tests, 0 failed, 0 errored, 5 disabled, 0 warning(s)

Expected behavior

I expect the results of the subsequent runs also in the first run.