Home Server
New Blog Posts: Merging Reports - Part 1 and Part 2

AV in webtier

edited April 2013 in Server
Hi,

I have an access violation in an isapi dll using webtier to connect to a
report server.
Rb is 12.05, Delphi 2010 and Oracle.
In the web client log i see this:

2013-04-09T08:50:52.666Access
violation at address 01A48C84 in module 'RBServerWebIsapi.dll'. Read of
address
03B90000weException1{A044B221-37B7-4C48-A4EB-43C06F911E2E}
2013-04-09T08:50:52.667Garbage
Collection in Separate
ThreadweGarbage0
<

the isapi code is very simple, just small additions to the sample structure.

Every av I can find in the log, appears just before the garbage collection.
Is this a clue of something ?
thanks in advance
bye
Nicola

Comments

  • edited April 2013
    PS
    I've tried to change garbage collection settings.
    If I put gc in the same thread I still have the av.
    If I disable gc using a very large sleep value I still have the av.
    Maybe the problem is the "unlock session" operation ?
    because the av always happens *before* a gc but *after* an unlock
    see this log:

    2013-04-09T10:12:39.395Session
    LockedweSessionLocked1{21667F73-0D3C-4A15-AA0E-2A3BC8743C4A}
    2013-04-09T10:12:46.034TrsWebReportGenerator.GetClientReport:
    vm-svi01weOther0
    2013-04-09T10:14:09.673Session
    UnLockedweSessionUnlocked1{21667F73-0D3C-4A15-AA0E-2A3BC8743C4A}
    2013-04-09T10:14:09.674Access
    violation at address 01F4F288 in module 'RBWebIsapiWebBroker.dll'. Read
    of address
    02E90000weException1{21667F73-0D3C-4A15-AA0E-2A3BC8743C4A}


    what does exactly "lock/unlock" mean ?

    the isapi runs under iis 7
    it has writing rights (it actually writes in the cache)
    and, after the first av, it runs and serves reports.
    This av appears sistematically every time the application pool is
    restarted (ie at the first run of the isapi)
  • edited April 2013
    1. Session Lock/Unlock

    Each user is assigned a unique session ID, which is the GUID you see in the
    log. The user Session is locked while a user request is being processed and
    then Unlocked when the response is sent back to the browser. For example,
    lets say the user presses the Next page button of the web preview very fast
    10 times. The SessionManager queues up the requests while the Session is
    locked. The result will be that the first request is processed and then the
    last request is processed (the 10th) and the request in between are
    cancelled/ignored because a later request was received before they could be
    processed.

    2. WebTier log

    The WebTier log shows an AV is occuring...

    Access violation at address 01F4F288 in module 'RBWebIsapiWebBroker.dll'.
    Read of address 02E90000

    If you have custom code in your WebTier I would look there.



    -
    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com

    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
This discussion has been closed.