Hi Brian,

The proper solution is not to skip the error message, but to skip the full connection output operations in error situations. Since this involves many commands (from ns_return*, ns_write, ns_cookie* ...) this is a larger change. I will look into this in the next days. Should be doable with moderate effort.


all the best

-g

PS: bitbucket recovery still takes time, i am now at >15 email messages with support from support of atlassian and/or bitbucket.


On 06.11.23 15:11, Brian Fenton wrote:
Hi Gustaf

my apologies, I hadn't realised that silencing the log would lead to different behaviour. If this is a bigger job than expected, please feel free to revert back to previous version. It's a nice-to-have feature for us.

The attached script reproduces the issue when the parameter is set to false.

thanks
Brian

------------------------------------------------------------------------
*From:* Gustaf Neumann <neum...@wu.ac.at>
*Sent:* Monday 6 November 2023 1:59 pm
*To:* naviserver-devel@lists.sourceforge.net <naviserver-devel@lists.sourceforge.net>
*Subject:* Re: [naviserver-devel] NaviServer 4.99.29 available

Hi Brian,


as stated several times, the right action is to fix your script (as you did) rather than "silencing" NaviServer. I am not surprised, that attempts to write on detached connections can lead to error conditions on several occasions (generating errors avoids this).


But since we offer this silencing parameter, i do agree, the crashing is harsh. If you could send a short script triggering the problem it would help to work on such cases.


all the best

-g


On 06.11.23 14:25, Brian Fenton wrote:
Hi Gustaf

I just built and ran some tests on the "rejectalreadyclosedconn" parameter to see how it handles code that triggers the "connection socket is detached" error.

 If I set "rejectalreadyclosedconn"to false, and browse to a page that triggers the "connection socket is detached" error, Naviserver crashes with the following error message:

[06/Nov/2023:13:13:21][39.7f3489fb9640][-conn:openacs:default:1:30-] Warning: NsWriterQueue: called without sockPtr size 414 bufs 1 flags 1030431 stream 000000 chan (nil) fd -1 [06/Nov/2023:13:13:21][39.7f3489fb9640][-conn:openacs:default:1:30-] Fatal: received fatal signal 11

If I then fix the code that was triggering the "connection socket is detached" error, by adding the missing "return" after the offending "ad_returnredirect", everything works fine.

Let me know if you need more info to help reproduce this.
thanks,
Brian

------------------------------------------------------------------------
*From:* Gustaf Neumann <neum...@wu.ac.at> <mailto:neum...@wu.ac.at>
*Sent:* Thursday 2 November 2023 2:30 pm
*To:* Navidevel <naviserver-devel@lists.sourceforge.net> <mailto:naviserver-devel@lists.sourceforge.net>
*Subject:* [naviserver-devel] NaviServer 4.99.29 available
Dear all,

I am glad to announce that the release of NaviServer 4.99.29 is available at SourceForge [1].  This release is a pure bug-fix and maintenance release, which fixes a potentiall serious memory leak when working with PostgreSQL and large text contents. Furthermore, the release contains a small enhancement as requested by Brian not very long ago on this list.

See below for a summary of the changes.

So far, these changes are only available on sourceforge, since i have lost write access to the repository at bitbucket. The people on Atlassian seem to have changed some account types, and - on to of this - they annouced via the Blog post on September 27, 2023, that the billing model changed (where they also refer to the "unified-user-management"). It took me a while to figure out, what happened. The blog post states:

    /From October 31st, 2023, Bitbucket Cloud will begin counting all
    workspace members as a billable user. ....

    Free plans: If you're on a free plan and your billable user count
    is higher than 5 as per the new definition of billable user, all
    repositories in your workspace will become read-only until you
    remove some users or upgrade your workspace to a paid plan./

It seems that the users of the "naviserver" group are now counted as "billable users", and it contains 19 users. According to support, we have to reduce this number to 5, otherwise nobody will be able to commit anything.

Due to the ability with PRs, i think the reduction will be possible without too much loss in functionality. If nobody objects, i will go back in history and reduce the number of commit-member based on the most recent direct commits. I hope, that non of the "old members" will be offended by this. One other option would be to upgrade to a paid plain - but i am not sure, who is gonna pay for this.

All the best!

-gustaf neumann

[1] https://sourceforge.net/projects/naviserver/files/naviserver/4.99.29/ <https://sourceforge.net/projects/naviserver/files/naviserver/4.99.29/> [2] https://bitbucket.org/blog/billing-model-change <https://bitbucket.org/blog/billing-model-change>

=======================================
NaviServer 4.99.29, released 2023-11-01
=======================================

  37 files changed, 261 insertions(+), 132 deletions(-)

New Features:
-------------
  - Eased configuration of simple setups
    * don't require to specify a "defaultserver" when a single
      server is in use.

    * reduce warnings for per-server network drivers. This is a not
      recommended but possible configuration, global network drivers
      should be used.

  - The configuration option "rejectalreadyclosedconn", which warns
    about attempts to send data to the web client at times, when the
    connection is not available anymore, is now applied on closed and
    detached connections. Before it was only applied on closed
    connections, causing potentially many warnings for legacy
    applications.

Bug Fixes:
----------

   - Fixed a potential memory leak introduced two releases ago (in
     4.99.27).

   - Fixed a potential compilation problem with glibc 2.38 or newer
     (released 31 Jul 2023)

   - Fixed reloading of certificates for mass virtual hosting

Code Maintenance:
-----------------

   - fixed typos
   - fixed enum/int conversion flagged by gcc13


Modules:
--------
The following list contains the most important changes:

  - module nsdbpg:
    fixed memory leak (see above).
_______________________________________________
naviserver-devel mailing list
naviserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/naviserver-devel

Reply via email to