Written by

IRIS Developer Advocate, Software developer at CaretDev, Tabcorp
MOD
Question Dmitry Maslennikov · Oct 10, 2023

Clean license usage on Community Edition

Is there any solution to how to purge the usage of the connection in Community Edition?

I have a working portal, where can't do even any simple SQL Query

 

Why? Because somehow I've exceeded a license limit (pardon, connection limit, when it comes to Community Editon)

So, this page shows, 8 users ate all connections

This page is useless, 0 connections in use

And this page is useless too, even when I have matches from the usage list, I can do nothing with

 

Recently, I posted an idea, to make Community Edition limited by resources, not by connections, it would help a lot, but it's marked as Future Consideration (I read it as, never going to happen). So, please vote for it, if you agree wish it too.

Product version: IRIS 2023.2
$ZV: IRIS for UNIX (Ubuntu Server LTS for ARM64 Containers) 2023.2 (Build 227U) Mon Jul 31 2023 17:43:25 EDT [Health:5.1.3]

Comments

Robert Cemper · Oct 10, 2023

since the invention of Grace Period by BdK  I'm fighting hanging CSP connections.
my approach:

  •  
     

in most cases, it is sufficient to get free locked licenses

0
Dmitry Maslennikov  Oct 10, 2023 to Robert Cemper

Yeah, but unfortunately, in my case, (see the screenshot above) I have no checkboxes at all, so, no control

0
Robert Cemper  Oct 10, 2023 to Dmitry Maslennikov

I see. just Sub-sessions:
  

0
Robert Cemper  Oct 10, 2023 to Robert Cemper

If this is your own CSP page you may set  %session.EndSession =1

OR
you have a dummy page that does just this and you call it manually
I did it mostly during testing 

0
Lorenzo Scalese · Oct 10, 2023

Hi @Dmitry Maslennikov ,

Yesterday I experienced this kind of problem with web socket.
To limit the license usage, I did this : 

Class dc.journalindexer.WebSocket Extends %CSP.WebSocket
{

Method OnPreServer() As %Status
{
    Do %session.Login("wsuser",,1)
    Set ..SharedConnection = 1
    ; ... some lines of code
    Quit sc
}

Method OnClientMessage(
	data As %String = "",
	close As %Integer) As %Status
{
    ; force logout and EndSession on disconnect from client
    If $Get(close) = 1 {
        Do %session.Logout()        
        Set %session.EndSession = 1
        Do ..EndServer()
    }

	Quit 0
}
}
0