External Sessions issues

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

External Sessions issues

GLASS mailing list
Ciao,

i do som test about External Sessions support between two Gemstone 3.4.3. system.

Some points:

A) The remote system ( presolana )need to have the same logs directory path  ( 
/opt/GsDKb/GsDevKit_home/server/stones/base_343/logs )
  of the request.
Otherwise the remote netldi.log report the entry:
For client command: '!#encrypted:party#netldi:39357#dir:/opt/GsDKb/GsDevKit_home/server/stones/base_343/logs#log:%N%P.log!gemnetobject'
    chdir(/opt/GsDKb/GsDevKit_home/server/stones/base_343/logs) failed in child process
    ERROR: errno=2,ENOENT, The file or directory specified cannot be found

B)  When create  the GsExternalSession  with the Network Resource String:
gemNRS: '!@25.58.122.207#netldi:41953!gemnetobject'

 UserGlobals at: #Sample put:
    ( GsExternalSession
    gemNRS: '!@25.58.122.207#netldi:41953!gemnetobject'
    stoneNRS: '!@25.58.122.207!base_343'
    username: 'DataCurator'
    password: 'swordfish'
    yourself).

the system report the error:

a MessageNotUnderstood occurred (error 2010), a String does not understand  #'node' (3)

C)  I login aGsExternalSession on remote system and all works fine.

But when i do the aGsExternalSession logout 

the system is blocked for 20 seconds and after open a dialog: 

UserDefinedError: session with stone session ID of 6 gemProcessId = 3115 still present 20 seconds after logout (3)

D) The exception it is not accessible, or at least it is not clear how to do it.
| result | 

result := [myGsExternalSession executeString: '1/0']

on: GciError
do: [:ex | ex description].

open a dialog with :  ArgumentError: NullPointer error, CByteArray.CData == 0 (3)

Thanks for considerations,

Dario

_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: External Sessions issues

GLASS mailing list
Ciao, 
another points.


E) After a  aGsExternalSession forkString: 'DTRClient bigData'.

aGsExternalSession waitForResultForSeconds: 2  otherwise:[ ......  ]

If the remote system don't answer in the time and i  would like to finish the execution

what i can do in the otherwise block to terminate the call in progress ?

When i submit another request the system answer :   'call in progress' .

The   abort  -  softBreak  and  hardBreak   don't reset the     call in progress.

Thanks,

Dario


Ciao,

i do som test about External Sessions support between two Gemstone 3.4.3. system.

Some points:

A) The remote system ( presolana )need to have the same logs directory path  ( 
/opt/GsDKb/GsDevKit_home/server/stones/base_343/logs )
  of the request.
Otherwise the remote netldi.log report the entry:
For client command: '!#encrypted:party#netldi:39357#dir:/opt/GsDKb/GsDevKit_home/server/stones/base_343/logs#log:%N%P.log!gemnetobject'
    chdir(/opt/GsDKb/GsDevKit_home/server/stones/base_343/logs) failed in child process
    ERROR: errno=2,ENOENT, The file or directory specified cannot be found

B)  When create  the GsExternalSession  with the Network Resource String:
gemNRS: '!@25.58.122.207#netldi:41953!gemnetobject'

 UserGlobals at: #Sample put:
    ( GsExternalSession
    gemNRS: '!@25.58.122.207#netldi:41953!gemnetobject'
    stoneNRS: '!@25.58.122.207!base_343'
    username: 'DataCurator'
    password: 'swordfish'
    yourself).

the system report the error:

a MessageNotUnderstood occurred (error 2010), a String does not understand  #'node' (3)

C)  I login aGsExternalSession on remote system and all works fine.

But when i do the aGsExternalSession logout 

the system is blocked for 20 seconds and after open a dialog: 

UserDefinedError: session with stone session ID of 6 gemProcessId = 3115 still present 20 seconds after logout (3)

D) The exception it is not accessible, or at least it is not clear how to do it.
| result | 

result := [myGsExternalSession executeString: '1/0']

on: GciError
do: [:ex | ex description].

open a dialog with :  ArgumentError: NullPointer error, CByteArray.CData == 0 (3)

Thanks for considerations,

Dario
_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass


_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: External Sessions issues

GLASS mailing list
In reply to this post by GLASS mailing list
Hi Dario,

On Jan 11, 2019, at 8:21 AM, Trussardi Dario Romano via Glass <[hidden email]> wrote:

Ciao,

i do som test about External Sessions support between two Gemstone 3.4.3. system.

Some points:

A) The remote system ( presolana )need to have the same logs directory path  ( 
/opt/GsDKb/GsDevKit_home/server/stones/base_343/logs )
  of the request.
Otherwise the remote netldi.log report the entry:
For client command: '!#encrypted:party#netldi:39357#dir:/opt/GsDKb/GsDevKit_home/server/stones/base_343/logs#log:%N%P.log!gemnetobject'
    chdir(/opt/GsDKb/GsDevKit_home/server/stones/base_343/logs) failed in child process
    ERROR: errno=2,ENOENT, The file or directory specified cannot be found

I’m not immediately able to reproduce this but it looks below like you have worked around the problem.

B)  When create  the GsExternalSession  with the Network Resource String: gemNRS: '!@25.58.122.207#netldi:41953!gemnetobject'

 UserGlobals at: #Sample put:
    ( GsExternalSession
    gemNRS: '!@25.58.122.207#netldi:41953!gemnetobject'
    stoneNRS: '!@25.58.122.207!base_343'
    username: 'DataCurator'
    password: 'swordfish'
    yourself).

the system report the error:

a MessageNotUnderstood occurred (error 2010), a String does not understand  #'node' (3)


You are right, this is an error and I’ve reported it as internal bug #47868. It appears by the fact that you got further than you found the workaround, using an instance of GsNetworkResourceString.

C)  I login aGsExternalSession on remote system and all works fine.

But when i do the aGsExternalSession logout 

the system is blocked for 20 seconds and after open a dialog: 

UserDefinedError: session with stone session ID of 6 gemProcessId = 3115 still present 20 seconds after logout (3)

This is a known bug (internal #47663). The work-around is to use different stone names.


D) The exception it is not accessible, or at least it is not clear how to do it.
| result | 

result := [myGsExternalSession executeString: '1/0']

on: GciError
do: [:ex | ex description].

open a dialog with :  ArgumentError: NullPointer error, CByteArray.CData == 0 (3)

When I try your example with two Jade sessions on the same GS 3.4.3 stone it returns a string describing the stack. What IDE are you using? What sort of dialog does it open? Can you provide a screen shot?


Thanks for considerations,

Dario
_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass


_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: External Sessions issues

GLASS mailing list
In reply to this post by GLASS mailing list
Dario,

GsExternalSession>>softBreak (and hardBreak) should have interrupted the non-blocking call. I’ve reported this as internal bug #47869.

James

On Jan 12, 2019, at 8:36 AM, Trussardi Dario Romano via Glass <[hidden email]> wrote:

Ciao, 
another points.


E) After a  aGsExternalSession forkString: 'DTRClient bigData'.

aGsExternalSession waitForResultForSeconds: 2  otherwise:[ ......  ]

If the remote system don't answer in the time and i  would like to finish the execution

what i can do in the otherwise block to terminate the call in progress ?

When i submit another request the system answer :   'call in progress' .

The   abort  -  softBreak  and  hardBreak   don't reset the     call in progress.

Thanks,

Dario


Ciao,

i do som test about External Sessions support between two Gemstone 3.4.3. system.

Some points:

A) The remote system ( presolana )need to have the same logs directory path  ( 
/opt/GsDKb/GsDevKit_home/server/stones/base_343/logs )
  of the request.
Otherwise the remote netldi.log report the entry:
For client command: '!#encrypted:party#netldi:39357#dir:/opt/GsDKb/GsDevKit_home/server/stones/base_343/logs#log:%N%P.log!gemnetobject'
    chdir(/opt/GsDKb/GsDevKit_home/server/stones/base_343/logs) failed in child process
    ERROR: errno=2,ENOENT, The file or directory specified cannot be found

B)  When create  the GsExternalSession  with the Network Resource String:
gemNRS: '!@25.58.122.207#netldi:41953!gemnetobject'

 UserGlobals at: #Sample put:
    ( GsExternalSession
    gemNRS: '!@25.58.122.207#netldi:41953!gemnetobject'
    stoneNRS: '!@25.58.122.207!base_343'
    username: 'DataCurator'
    password: 'swordfish'
    yourself).

the system report the error:

a MessageNotUnderstood occurred (error 2010), a String does not understand  #'node' (3)

C)  I login aGsExternalSession on remote system and all works fine.

But when i do the aGsExternalSession logout 

the system is blocked for 20 seconds and after open a dialog: 

UserDefinedError: session with stone session ID of 6 gemProcessId = 3115 still present 20 seconds after logout (3)

D) The exception it is not accessible, or at least it is not clear how to do it.
| result | 

result := [myGsExternalSession executeString: '1/0']

on: GciError
do: [:ex | ex description].

open a dialog with :  ArgumentError: NullPointer error, CByteArray.CData == 0 (3)

Thanks for considerations,

Dario
_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass

_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass


_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: External Sessions issues

GLASS mailing list
In reply to this post by GLASS mailing list
Ciao,

C)  I login aGsExternalSession on remote system and all works fine.

But when i do the aGsExternalSession logout 

the system is blocked for 20 seconds and after open a dialog: 

UserDefinedError: session with stone session ID of 6 gemProcessId = 3115 still present 20 seconds after logout (3)

This is a known bug (internal #47663). The work-around is to use different stone names.

I can rename an existing  stone or i need to create a new stone with different name ?



D) The exception it is not accessible, or at least it is not clear how to do it.
| result | 

result := [myGsExternalSession executeString: '1/0']

on: GciError
do: [:ex | ex description].

open a dialog with :  ArgumentError: NullPointer error, CByteArray.CData == 0 (3)

When I try your example with two Jade sessions on the same GS 3.4.3 stone it returns a string describing the stack. What IDE are you using? What sort of dialog does it open? Can you provide a screen shot?

I using Tode.

The system answer a dialog wit title:   a ArgumentError occurred ( error 2718 ) NullPointer error, CByteArray.CData == 0

The relative stack is:

ArgumentError: NullPointer error, CByteArray.CData == 0
--------------------
1. ArgumentError(AbstractException)>>_signalFromPrimitive: @6 line 15
2. GciErrSType(CByteArray)>>_signed:at:with: @1 line 1
3. GciErrSType(CByteArray)>>int32At: @2 line 3
4. GciErrSType>>number @2 line 3
5. GsExternalSession>>_signalIfError @7 line 4
6. GsExternalSession>>isResultAvailable @15 line 14
7. GsExternalSession>>waitForResultForSeconds:otherwise: @5 line 8
8. GsExternalSession>>waitForResultForSeconds: @3 line 6
9. GsExternalSession>>waitForResult @2 line 5
10. GsExternalSession>>executeString: @3 line 9
11. [] in Executed Code
12. UndefinedObject(ExecBlock)>>on:do: @3 line 44
13. Executed Code
14. GsNMethod>>_executeInContext: @1 line 1
15. TDStandardEnvironment(TDAbstractEnvironment)>>evaluate:in:literalVars:tempSymbolList: @3 line 6
16. TDTopezServer>>evaluateString:inContext:literalVars:withTempSymbolList: @5 line 5
17. TDTopezServer>>evaluateString:inContext:literalVars: @3 line 3
18. TDWorkspaceClientElementBuilder(TDClientSourceElementBuilder)>>evaluateString:topez: @4 line 3
19. TDWorkspaceClientElementBuilder(TDClientSourceElementBuilder)>>printItMenuAction:selectedText: @4 line 3
20. TDWorkspaceClientElementBuilder(Object)>>perform:with:with: @1 line 1
21. TDWorkspaceClientElementBuilder(TDWindowBuilder)>>handleMenuActions:listElement:actionArg: @13 line 10
22. [] in TDWorkspaceClientElementBuilder(TDClientSourceElementBuilder)>>menuActionBlock @10 line 8
23. TDWorkspaceClientElementBuilder(ExecBlock)>>valueWithArguments: @1 line 1
24. TDWorkspaceClientElementBuilder(ExecBlock)>>value:value:value:value:value: @2 line 11
25. GsNMethod class>>_gsReturnToC @1 line 1


Thanks,

Dario

_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: External Sessions issues

GLASS mailing list


On Jan 14, 2019, at 2:43 AM, Trussardi Dario Romano via Glass <[hidden email]> wrote:

Ciao,

C)  I login aGsExternalSession on remote system and all works fine.

But when i do the aGsExternalSession logout 

the system is blocked for 20 seconds and after open a dialog: 

UserDefinedError: session with stone session ID of 6 gemProcessId = 3115 still present 20 seconds after logout (3)

This is a known bug (internal #47663). The work-around is to use different stone names.

I can rename an existing  stone or i need to create a new stone with different name ?

Restarting the stone with a new name should be fine.


D) The exception it is not accessible, or at least it is not clear how to do it.
| result | 

result := [myGsExternalSession executeString: '1/0']

on: GciError
do: [:ex | ex description].

open a dialog with :  ArgumentError: NullPointer error, CByteArray.CData == 0 (3)

When I try your example with two Jade sessions on the same GS 3.4.3 stone it returns a string describing the stack. What IDE are you using? What sort of dialog does it open? Can you provide a screen shot?

I using Tode.

The system answer a dialog wit title:   a ArgumentError occurred ( error 2718 ) NullPointer error, CByteArray.CData == 0

The relative stack is:

ArgumentError: NullPointer error, CByteArray.CData == 0
--------------------
1. ArgumentError(AbstractException)>>_signalFromPrimitive: @6 line 15
2. GciErrSType(CByteArray)>>_signed:at:with: @1 line 1
3. GciErrSType(CByteArray)>>int32At: @2 line 3
4. GciErrSType>>number @2 line 3
5. GsExternalSession>>_signalIfError @7 line 4
6. GsExternalSession>>isResultAvailable @15 line 14
7. GsExternalSession>>waitForResultForSeconds:otherwise: @5 line 8
8. GsExternalSession>>waitForResultForSeconds: @3 line 6
9. GsExternalSession>>waitForResult @2 line 5
10. GsExternalSession>>executeString: @3 line 9
11. [] in Executed Code
12. UndefinedObject(ExecBlock)>>on:do: @3 line 44
13. Executed Code
14. GsNMethod>>_executeInContext: @1 line 1
15. TDStandardEnvironment(TDAbstractEnvironment)>>evaluate:in:literalVars:tempSymbolList: @3 line 6
16. TDTopezServer>>evaluateString:inContext:literalVars:withTempSymbolList: @5 line 5
17. TDTopezServer>>evaluateString:inContext:literalVars: @3 line 3
18. TDWorkspaceClientElementBuilder(TDClientSourceElementBuilder)>>evaluateString:topez: @4 line 3
19. TDWorkspaceClientElementBuilder(TDClientSourceElementBuilder)>>printItMenuAction:selectedText: @4 line 3
20. TDWorkspaceClientElementBuilder(Object)>>perform:with:with: @1 line 1
21. TDWorkspaceClientElementBuilder(TDWindowBuilder)>>handleMenuActions:listElement:actionArg: @13 line 10
22. [] in TDWorkspaceClientElementBuilder(TDClientSourceElementBuilder)>>menuActionBlock @10 line 8
23. TDWorkspaceClientElementBuilder(ExecBlock)>>valueWithArguments: @1 line 1
24. TDWorkspaceClientElementBuilder(ExecBlock)>>value:value:value:value:value: @2 line 11
25. GsNMethod class>>_gsReturnToC @1 line 1


Thanks,

Dario
_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass


_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: External Sessions issues

GLASS mailing list
In reply to this post by GLASS mailing list
Dario,

My mistake. GsExternalSession>>softBreak (and hardBreak) work correctly. They do, in fact, post an interrupt to the running process and the running process does, in fact, stop. In order to “catch” the break you need to follow the break with another waitForResult call. It should return immediately after you wait and the thing returned should be the break exception.

James

On Jan 13, 2019, at 6:52 AM, James Foster <[hidden email]> wrote:

Dario,

GsExternalSession>>softBreak (and hardBreak) should have interrupted the non-blocking call. I’ve reported this as internal bug #47869.

James

On Jan 12, 2019, at 8:36 AM, Trussardi Dario Romano via Glass <[hidden email]> wrote:

Ciao, 
another points.


E) After a  aGsExternalSession forkString: 'DTRClient bigData'.

aGsExternalSession waitForResultForSeconds: 2  otherwise:[ ......  ]

If the remote system don't answer in the time and i  would like to finish the execution

what i can do in the otherwise block to terminate the call in progress ?

When i submit another request the system answer :   'call in progress' .

The   abort  -  softBreak  and  hardBreak   don't reset the     call in progress.

Thanks,

Dario


Ciao,

i do som test about External Sessions support between two Gemstone 3.4.3. system.

Some points:

A) The remote system ( presolana )need to have the same logs directory path  ( 
/opt/GsDKb/GsDevKit_home/server/stones/base_343/logs )
  of the request.
Otherwise the remote netldi.log report the entry:
For client command: '!#encrypted:party#netldi:39357#dir:/opt/GsDKb/GsDevKit_home/server/stones/base_343/logs#log:%N%P.log!gemnetobject'
    chdir(/opt/GsDKb/GsDevKit_home/server/stones/base_343/logs) failed in child process
    ERROR: errno=2,ENOENT, The file or directory specified cannot be found

B)  When create  the GsExternalSession  with the Network Resource String:
gemNRS: '!@25.58.122.207#netldi:41953!gemnetobject'

 UserGlobals at: #Sample put:
    ( GsExternalSession
    gemNRS: '!@25.58.122.207#netldi:41953!gemnetobject'
    stoneNRS: '!@25.58.122.207!base_343'
    username: 'DataCurator'
    password: 'swordfish'
    yourself).

the system report the error:

a MessageNotUnderstood occurred (error 2010), a String does not understand  #'node' (3)

C)  I login aGsExternalSession on remote system and all works fine.

But when i do the aGsExternalSession logout 

the system is blocked for 20 seconds and after open a dialog: 

UserDefinedError: session with stone session ID of 6 gemProcessId = 3115 still present 20 seconds after logout (3)

D) The exception it is not accessible, or at least it is not clear how to do it.
| result | 

result := [myGsExternalSession executeString: '1/0']

on: GciError
do: [:ex | ex description].

open a dialog with :  ArgumentError: NullPointer error, CByteArray.CData == 0 (3)

Thanks for considerations,

Dario
_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass

_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass



_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass