GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Timeout after 4 hours on reporter waiting for data · Issue #1242 · utPLSQL/utPLSQL

Timeout after 4 hours on reporter waiting for data #1242

New issue
Copy link
New issue
Copy link
Closed
#1243
Closed
Timeout after 4 hours on reporter waiting for data#1242
#1243
Copy link
Assignees
jgebal
Labels
bug
Milestone
v3.1.14

Description

@varianjv
varianjv
opened on Aug 26, 2022
Issue body actions

Describe the bug
java.sql.SQLRecoverableException: Closed Connection
This seems to happen after 4 hours.

Provide version info
Database version 12.2.0.1.0
UT Version v3.1.10.3349

Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
PL/SQL Release 12.2.0.1.0 - Production
"CORE 12.2.0.1.0 Production"
TNS for Linux: Version 12.2.0.1.0 - Production
NLSRTL Version 12.2.0.1.0 - Production

NLS_LANGUAGE AMERICAN
NLS_TERRITORY IRELAND
NLS_CURRENCY €
NLS_ISO_CURRENCY IRELAND
NLS_NUMERIC_CHARACTERS .,
NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT DD-MON-RR
NLS_DATE_LANGUAGE AMERICAN
NLS_SORT BINARY
NLS_TIME_FORMAT HH12:MI:SSXFF AM
NLS_TIMESTAMP_FORMAT DD-MON-RR HH24:MI:SSXFF
NLS_TIME_TZ_FORMAT HH12:MI:SSXFF AM TZR
NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH24:MI:SSXFF TZR
NLS_DUAL_CURRENCY €
NLS_COMP BINARY
NLS_LENGTH_SEMANTICS CHAR
NLS_NCHAR_CONV_EXCP FALSE

x86_64/Linux 2.4.xx

Information about client software
utplsql cli
utPLSQL-cli 3.1.8-SNAPSHOT.local
utPLSQL-java-api 3.1.8.546

To Reproduce
Run the following.
./utplsql run username/password@database:1521/utplsqltestdb -s -t 780 -f=ut_coverage_html_reporter -o=coverage.html

Expected behavior
Expect the reports to be produced.

Additional context
Our database is fairly large, 4.9 million relevant lines.
If I pass a -p parameter to keep it to one subset of tests it runs (approx 3 hours) and generates the coverage report.
However I need a complete report so removed the -P
Seems to always time out after 4 hours.
Running locally on the db server (to avoid any network/firewall timeout) shows the same result.
Nothing in the Oracle alert log/tracefiles, in fact the sql is still running in the database after the disconnect indicating a timeout on the client.

Activity

  1. jgebal commented on Aug 26, 2022

    @jgebal
    jgebal
    on Aug 26, 2022
    Member
    More actions

    Let me see if there is sone timeout setting that could cause this behavior.

    Few questions that coukd help give answer.
    If you run the same command but with ut_documentation_reporter, how long does it take to complete?
    When running with -p commznd, what do you provide as an argument?

  2. varianjv commented on Aug 26, 2022

    @varianjv
    varianjv
    on Aug 26, 2022
    Author
    More actions

    -p=schemaname.PACKAGENAME
    Works ok as I said, runs in 3 hrs and generates a 770Mb output file.

    I will run your suggested command there now and report back ut_documentation_reporter

  3. varianjv commented on Aug 27, 2022

    @varianjv
    varianjv
    on Aug 27, 2022
    Author
    More actions

    ut_documentation_reporter runs in about 30 minutes (I should have known this as we use this in a jenkins pipeline)

  4. varianjv commented on Aug 30, 2022

    @varianjv
    varianjv
    on Aug 30, 2022
    Author
    More actions

    @jgebal Any ideas?

  5. jgebal
    added
    bug
    on Jan 16, 2023
  6. jgebal commented on Jan 16, 2023

    @jgebal
    jgebal
    on Jan 16, 2023
    Member
    More actions

    This is actually a bug in utPLSQL.

    utPLSQL reporters use output-buffer mechanism (table)
    For each invoked reporter, the buffer gets populated with data as the main utPLSQL test execution session executed the tests.

    When starting a utPLSQl-cli run, the cli starts several sessions for reporters (I think it is one for each reporter + 1 for the main utPLSQL run session).
    Each of the reporter sessions is waiting for data to arrive in the buffer table and when it arrives it is instantly consumed (read and deleted) by the reported and data is provided from reporter to an output file.

    To prevent situations where a DB may have uncountable amounts of ghost sessions in situations where main session dies or something goes terribly wrong and no data is sent to the reporters, the report consumer session has a timeout of 4 hours.

    That timeout is reset each time the reporter session receives some data from the main session.

    The problem is, that for coverage, no data is produced until after the test run is finished and coverage data is collected and processed.

    I think we need to rewrite the mechanism of synchronization between sessions to be time-independent.

  7. jgebal commented on Jan 16, 2023

    @jgebal
    jgebal
    on Jan 16, 2023
    Member
    More actions

    @varianjv - sorry for coming back to this so late.

  8. jgebal
    transferred this issue fromutPLSQL/utPLSQL-clion Jan 16, 2023
  9. jgebal
    self-assigned this
    on Jan 16, 2023
  10. jgebal
    changed the title [-]java.sql.SQLRecoverableException: Closed Connection [/-] [+]Timeout after 4 hours on reporter waiting for data[/+] on Jan 16, 2023
  11. jgebal
    closed this as completedin #1243on Feb 11, 2023
  12. jgebal
    added this to the v3.1.14 milestone on May 21, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

  • @jgebal
    jgebal

Labels

bug

Type

No type

Projects

No projects

    Milestone

    • v3.1.14

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

    You are visitor 01402503 — GeezerVison does not store the pages you look up.
    Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.