Le 22/02/2017 à 12:18, Esteban Lorenzano a écrit :
> that’s not enough information… where it hangs? (when you get the debugger 
> after cmd+.)?

It looks like Voyage is trapped in a loop.
When I execute the following code in singleton it hangs as well:

| orga repo|
repo := VOMongoRepository host: 'localhost' database: 'MaBase'.
repo enableSingleton.
orga := String fromString: 'Pharo'.
orga save.

Then I can press atl+., I got the attached Pharo debug log.

At some point I used wrongly Voyage, from there I got problem.

Thanks

Hilaire


-- 
Dr. Geo
http://drgeo.eu
THERE_BE_DRAGONS_HERE
User Interrupt
22 Février 2017 2:14:11.47879 pm

VM: unix - i686 - linux-gnu - NBCoInterpreter NativeBoost-CogPlugin-EstebanLorenzano.20 uuid: cf2aeeee-897d-48fd-8251-6789dd21d958 Jun 14 2014
NBCogit NativeBoost-CogPlugin-EstebanLorenzano.20 uuid: cf2aeeee-897d-48fd-8251-6789dd21d958 Jun 14 2014
https://github.com/pharo-project/pharo-vm.git Commit: 0e8bbfbaeb03237fa6bb63ba834773fab18ca307 Date: 2014-06-14 12:20:21 -0300 By: Esteban Lorenzano <[email protected]> Jenkins build #14833

Image: Pharo4.0 [Latest update: #40627]

[ 
self schedule.	"It is critical that the following has no suspension point so that
	the test and the wait primitive are atomic. In addition, if the delay
	is no longer being waited on while entering the way we know that it 
	is expired because the delay has already fired."
beingWaitedOn
	ifTrue: [ delaySemaphore wait ]
	ifFalse: [ expired := true ] ] in DelayWaitTimeout>>wait
	Receiver: a DelayWaitTimeout(45000 msecs; 44974 msecs remaining)
	Arguments and temporary variables: 

	Receiver's instance variables: 
		delaySemaphore: 	a Semaphore()
		beingWaitedOn: 	true
		millisecondDelayDuration: 	45000
		scheduler: 	a DelayMicrosecondScheduler
		schedulerResumptionTime: 	3665222096453829
		process: 	a Process in [ 
self schedule.	"It is critical that the following has ...etc...
		expired: 	false


BlockClosure>>ensure:
	Receiver: [ 
self schedule.	"It is critical that the following has no suspension point so that
	the ...etc...
	Arguments and temporary variables: 
		aBlock: 	[ self unschedule ]
		complete: 	nil
		returnValue: 	nil
	Receiver's instance variables: 
		outerContext: 	DelayWaitTimeout>>wait
		startpc: 	41
		numArgs: 	0


DelayWaitTimeout>>wait
	Receiver: a DelayWaitTimeout(45000 msecs; 44970 msecs remaining)
	Arguments and temporary variables: 

	Receiver's instance variables: 
		delaySemaphore: 	a Semaphore()
		beingWaitedOn: 	true
		millisecondDelayDuration: 	45000
		scheduler: 	a DelayMicrosecondScheduler
		schedulerResumptionTime: 	3665222096453829
		process: 	a Process in [ 
self schedule.	"It is critical that the following has ...etc...
		expired: 	false


Semaphore>>waitTimeoutMSecs:
	Receiver: a Semaphore()
	Arguments and temporary variables: 
		anInteger: 	45000
		d: 	a DelayWaitTimeout(45000 msecs; 44967 msecs remaining)
	Receiver's instance variables: 
		firstLink: 	nil
		lastLink: 	nil
		excessSignals: 	0


Socket>>waitForConnectionFor:ifTimedOut:
	Receiver: a Socket[connected]
	Arguments and temporary variables: 
		timeout: 	45
		timeoutBlock: 	[ ConnectionTimedOut signal: 'Cannot connect to ' , (NetNameResol...etc...
		startTime: 	5930357
		msecsDelta: 	45000
		msecsEllapsed: 	0
		status: 	1
	Receiver's instance variables: 
		semaphore: 	a Semaphore()
		socketHandle: 	#[167 179 210 90 0 0 0 0 112 225 222 9]
		readSemaphore: 	a Semaphore()
		writeSemaphore: 	a Semaphore()


Socket>>connectTo:port:waitForConnectionFor:
	Receiver: a Socket[connected]
	Arguments and temporary variables: 
		hostAddress: 	#[127 0 0 1]
		port: 	27017
		timeout: 	45
	Receiver's instance variables: 
		semaphore: 	a Semaphore()
		socketHandle: 	#[167 179 210 90 0 0 0 0 112 225 222 9]
		readSemaphore: 	a Semaphore()
		writeSemaphore: 	a Semaphore()


SocketStream class>>openConnectionToHost:port:timeout:
	Receiver: SocketStream
	Arguments and temporary variables: 
		hostIP: 	#[127 0 0 1]
		portNumber: 	27017
		timeout: 	45
		socket: 	a Socket[connected]
	Receiver's instance variables: 
		superclass: 	Object
		methodDict: 	a MethodDictionary(#'<<'->SocketStream>>#'<<' #adjustInBuffer:->Soc...etc...
		format: 	154
		layout: 	a FixedLayout
		instanceVariables: 	#('recentlyRead' 'socket' 'inBuffer' 'outBuffer' 'inNextToWr...etc...
		organization: 	a ClassOrganization
		subclasses: 	nil
		name: 	#SocketStream
		classPool: 	a Dictionary()
		sharedPools: 	an OrderedCollection()
		environment: 	a SystemDictionary(lots of globals)
		category: 	#'Network-Kernel'
		traitComposition: 	{}
		localSelectors: 	nil


SocketStream class>>openConnectionToHost:port:
	Receiver: SocketStream
	Arguments and temporary variables: 
		hostIP: 	#[127 0 0 1]
		portNumber: 	27017
	Receiver's instance variables: 
		superclass: 	Object
		methodDict: 	a MethodDictionary(#'<<'->SocketStream>>#'<<' #adjustInBuffer:->Soc...etc...
		format: 	154
		layout: 	a FixedLayout
		instanceVariables: 	#('recentlyRead' 'socket' 'inBuffer' 'outBuffer' 'inNextToWr...etc...
		organization: 	a ClassOrganization
		subclasses: 	nil
		name: 	#SocketStream
		classPool: 	a Dictionary()
		sharedPools: 	an OrderedCollection()
		environment: 	a SystemDictionary(lots of globals)
		category: 	#'Network-Kernel'
		traitComposition: 	{}
		localSelectors: 	nil


SocketStream class>>openConnectionToHostNamed:port:
	Receiver: SocketStream
	Arguments and temporary variables: 
		hostName: 	'localhost'
		portNumber: 	27017
		hostIP: 	#[127 0 0 1]
	Receiver's instance variables: 
		superclass: 	Object
		methodDict: 	a MethodDictionary(#'<<'->SocketStream>>#'<<' #adjustInBuffer:->Soc...etc...
		format: 	154
		layout: 	a FixedLayout
		instanceVariables: 	#('recentlyRead' 'socket' 'inBuffer' 'outBuffer' 'inNextToWr...etc...
		organization: 	a ClassOrganization
		subclasses: 	nil
		name: 	#SocketStream
		classPool: 	a Dictionary()
		sharedPools: 	an OrderedCollection()
		environment: 	a SystemDictionary(lots of globals)
		category: 	#'Network-Kernel'
		traitComposition: 	{}
		localSelectors: 	nil


GratuitousIncompatibilities class>>socketStreamHost:port:
	Receiver: GratuitousIncompatibilities
	Arguments and temporary variables: 
		aString: 	'localhost'
		anInteger: 	27017
		result: 	nil
	Receiver's instance variables: 
		superclass: 	Object
		methodDict: 	a MethodDictionary()
		format: 	2
		layout: 	a FixedLayout
		instanceVariables: 	#()
		organization: 	a ClassOrganization
		subclasses: 	nil
		name: 	#GratuitousIncompatibilities
		classPool: 	a Dictionary(#UTF8Codec->a GRPharoUtf8Codec name: 'utf-8' #UTF8Conve...etc...
		sharedPools: 	an OrderedCollection()
		environment: 	a SystemDictionary(lots of globals)
		category: 	#'Mongo-Squeak'
		traitComposition: 	{}
		localSelectors: 	nil


Mongo>>open
	Receiver: Mongo (localhost:27017)
	Arguments and temporary variables: 

	Receiver's instance variables: 
		host: 	'localhost'
		port: 	27017
		stream: 	SocketStream[inbuf:4kb/outbuf:4kb]
		requestID: 	1
		authCache: 	nil


[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
	Receiver: a VOMongoSessionPool
	Arguments and temporary variables: 
		aBlock: 	[ :db | 
(self collectionAt: anObject class inDatabase: db)
	add:
		(js...etc...
		session: 	Mongo (localhost:27017)
		db: 	MaBase
		e: 	VOMongoConnectionError
	Receiver's instance variables: 
		sessions: 	SharedQueue with 10 items
		size: 	10
		mutex: 	a Semaphore()
		process: 	a Process in Process>>terminate
		host: 	'localhost'
		port: 	27017
		database: 	'MaBase'
		username: 	nil
		password: 	nil


BlockClosure>>cull:
	Receiver: [ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ]
	Arguments and temporary variables: 
		anArg: 	VOMongoConnectionError
	Receiver's instance variables: 
		outerContext: 	[ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			cl...etc...
		startpc: 	124
		numArgs: 	1


Context>>evaluateSignal:
	Receiver: BlockClosure>>on:do:
	Arguments and temporary variables: 
		exception: 	VOMongoConnectionError
		value: 	nil
	Receiver's instance variables: 
		sender: 	[ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
	...etc...
		pc: 	15
		stackp: 	2
		method: 	BlockClosure>>#on:do:
		closureOrNil: 	nil
		receiver: 	[ ^ aBlock value: db ]


Context>>handleSignal:
	Receiver: BlockClosure>>on:do:
	Arguments and temporary variables: 
		exception: 	VOMongoConnectionError
	Receiver's instance variables: 
		sender: 	[ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
	...etc...
		pc: 	15
		stackp: 	2
		method: 	BlockClosure>>#on:do:
		closureOrNil: 	nil
		receiver: 	[ ^ aBlock value: db ]


VOMongoConnectionError(Exception)>>signalIn:
	Receiver: VOMongoConnectionError
	Arguments and temporary variables: 
		context: 	Error(Exception)>>signal
	Receiver's instance variables: 
		messageText: 	nil
		tag: 	nil
		signaler: 	Error: Command failed
		signalContext: 	Error(Exception)>>signal
		handlerContext: 	BlockClosure>>on:do:
		outerContext: 	nil


VOMongoConnectionError(Exception)>>resignalAs:
	Receiver: VOMongoConnectionError
	Arguments and temporary variables: 
		replacementException: 	VOMongoConnectionError
	Receiver's instance variables: 
		messageText: 	nil
		tag: 	nil
		signaler: 	Error: Command failed
		signalContext: 	Error(Exception)>>signal
		handlerContext: 	BlockClosure>>on:do:
		outerContext: 	nil


[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
	Receiver: a VOMongoSessionPool
	Arguments and temporary variables: 
		aBlock: 	[ :db | 
(self collectionAt: anObject class inDatabase: db)
	add:
		(js...etc...
		session: 	Mongo (localhost:27017)
		db: 	MaBase
		e: 	VOMongoConnectionError
	Receiver's instance variables: 
		sessions: 	SharedQueue with 10 items
		size: 	10
		mutex: 	a Semaphore()
		process: 	a Process in Process>>terminate
		host: 	'localhost'
		port: 	27017
		database: 	'MaBase'
		username: 	nil
		password: 	nil


BlockClosure>>cull:
	Receiver: [ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ]
	Arguments and temporary variables: 
		anArg: 	VOMongoConnectionError
	Receiver's instance variables: 
		outerContext: 	[ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			cl...etc...
		startpc: 	124
		numArgs: 	1


Context>>evaluateSignal:
	Receiver: BlockClosure>>on:do:
	Arguments and temporary variables: 
		exception: 	VOMongoConnectionError
		value: 	nil
	Receiver's instance variables: 
		sender: 	[ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
	...etc...
		pc: 	15
		stackp: 	2
		method: 	BlockClosure>>#on:do:
		closureOrNil: 	nil
		receiver: 	[ ^ aBlock value: db ]


Context>>handleSignal:
	Receiver: BlockClosure>>on:do:
	Arguments and temporary variables: 
		exception: 	VOMongoConnectionError
	Receiver's instance variables: 
		sender: 	[ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
	...etc...
		pc: 	15
		stackp: 	2
		method: 	BlockClosure>>#on:do:
		closureOrNil: 	nil
		receiver: 	[ ^ aBlock value: db ]


VOMongoConnectionError(Exception)>>signalIn:
	Receiver: VOMongoConnectionError
	Arguments and temporary variables: 
		context: 	Error(Exception)>>signal
	Receiver's instance variables: 
		messageText: 	nil
		tag: 	nil
		signaler: 	Error: Command failed
		signalContext: 	Error(Exception)>>signal
		handlerContext: 	BlockClosure>>on:do:
		outerContext: 	nil


VOMongoConnectionError(Exception)>>resignalAs:
	Receiver: VOMongoConnectionError
	Arguments and temporary variables: 
		replacementException: 	VOMongoConnectionError
	Receiver's instance variables: 
		messageText: 	nil
		tag: 	nil
		signaler: 	Error: Command failed
		signalContext: 	Error(Exception)>>signal
		handlerContext: 	BlockClosure>>on:do:
		outerContext: 	nil


[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
	Receiver: a VOMongoSessionPool
	Arguments and temporary variables: 
		aBlock: 	[ :db | 
(self collectionAt: anObject class inDatabase: db)
	add:
		(js...etc...
		session: 	Mongo (localhost:27017)
		db: 	MaBase
		e: 	VOMongoConnectionError
	Receiver's instance variables: 
		sessions: 	SharedQueue with 10 items
		size: 	10
		mutex: 	a Semaphore()
		process: 	a Process in Process>>terminate
		host: 	'localhost'
		port: 	27017
		database: 	'MaBase'
		username: 	nil
		password: 	nil


BlockClosure>>cull:
	Receiver: [ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ]
	Arguments and temporary variables: 
		anArg: 	VOMongoConnectionError
	Receiver's instance variables: 
		outerContext: 	[ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			cl...etc...
		startpc: 	124
		numArgs: 	1


Context>>evaluateSignal:
	Receiver: BlockClosure>>on:do:
	Arguments and temporary variables: 
		exception: 	VOMongoConnectionError
		value: 	nil
	Receiver's instance variables: 
		sender: 	[ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
	...etc...
		pc: 	15
		stackp: 	2
		method: 	BlockClosure>>#on:do:
		closureOrNil: 	nil
		receiver: 	[ ^ aBlock value: db ]


Context>>handleSignal:
	Receiver: BlockClosure>>on:do:
	Arguments and temporary variables: 
		exception: 	VOMongoConnectionError
	Receiver's instance variables: 
		sender: 	[ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
	...etc...
		pc: 	15
		stackp: 	2
		method: 	BlockClosure>>#on:do:
		closureOrNil: 	nil
		receiver: 	[ ^ aBlock value: db ]


VOMongoConnectionError(Exception)>>signalIn:
	Receiver: VOMongoConnectionError
	Arguments and temporary variables: 
		context: 	Error(Exception)>>signal
	Receiver's instance variables: 
		messageText: 	nil
		tag: 	nil
		signaler: 	Error: Command failed
		signalContext: 	Error(Exception)>>signal
		handlerContext: 	BlockClosure>>on:do:
		outerContext: 	nil


VOMongoConnectionError(Exception)>>resignalAs:
	Receiver: VOMongoConnectionError
	Arguments and temporary variables: 
		replacementException: 	VOMongoConnectionError
	Receiver's instance variables: 
		messageText: 	nil
		tag: 	nil
		signaler: 	Error: Command failed
		signalContext: 	Error(Exception)>>signal
		handlerContext: 	BlockClosure>>on:do:
		outerContext: 	nil


[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
	Receiver: a VOMongoSessionPool
	Arguments and temporary variables: 
		aBlock: 	[ :db | 
(self collectionAt: anObject class inDatabase: db)
	add:
		(js...etc...
		session: 	Mongo (localhost:27017)
		db: 	MaBase
		e: 	VOMongoConnectionError
	Receiver's instance variables: 
		sessions: 	SharedQueue with 10 items
		size: 	10
		mutex: 	a Semaphore()
		process: 	a Process in Process>>terminate
		host: 	'localhost'
		port: 	27017
		database: 	'MaBase'
		username: 	nil
		password: 	nil


BlockClosure>>cull:
	Receiver: [ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ]
	Arguments and temporary variables: 
		anArg: 	VOMongoConnectionError
	Receiver's instance variables: 
		outerContext: 	[ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			cl...etc...
		startpc: 	124
		numArgs: 	1


Context>>evaluateSignal:
	Receiver: BlockClosure>>on:do:
	Arguments and temporary variables: 
		exception: 	VOMongoConnectionError
		value: 	nil
	Receiver's instance variables: 
		sender: 	[ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
	...etc...
		pc: 	15
		stackp: 	2
		method: 	BlockClosure>>#on:do:
		closureOrNil: 	nil
		receiver: 	[ ^ aBlock value: db ]


Context>>handleSignal:
	Receiver: BlockClosure>>on:do:
	Arguments and temporary variables: 
		exception: 	VOMongoConnectionError
	Receiver's instance variables: 
		sender: 	[ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
	...etc...
		pc: 	15
		stackp: 	2
		method: 	BlockClosure>>#on:do:
		closureOrNil: 	nil
		receiver: 	[ ^ aBlock value: db ]


VOMongoConnectionError(Exception)>>signalIn:
	Receiver: VOMongoConnectionError
	Arguments and temporary variables: 
		context: 	Error(Exception)>>signal
	Receiver's instance variables: 
		messageText: 	nil
		tag: 	nil
		signaler: 	Error: Command failed
		signalContext: 	Error(Exception)>>signal
		handlerContext: 	BlockClosure>>on:do:
		outerContext: 	nil


VOMongoConnectionError(Exception)>>resignalAs:
	Receiver: VOMongoConnectionError
	Arguments and temporary variables: 
		replacementException: 	VOMongoConnectionError
	Receiver's instance variables: 
		messageText: 	nil
		tag: 	nil
		signaler: 	Error: Command failed
		signalContext: 	Error(Exception)>>signal
		handlerContext: 	BlockClosure>>on:do:
		outerContext: 	nil


[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
	Receiver: a VOMongoSessionPool
	Arguments and temporary variables: 
		aBlock: 	[ :db | 
(self collectionAt: anObject class inDatabase: db)
	add:
		(js...etc...
		session: 	Mongo (localhost:27017)
		db: 	MaBase
		e: 	VOMongoConnectionError
	Receiver's instance variables: 
		sessions: 	SharedQueue with 10 items
		size: 	10
		mutex: 	a Semaphore()
		process: 	a Process in Process>>terminate
		host: 	'localhost'
		port: 	27017
		database: 	'MaBase'
		username: 	nil
		password: 	nil


BlockClosure>>cull:
	Receiver: [ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ]
	Arguments and temporary variables: 
		anArg: 	VOMongoConnectionError
	Receiver's instance variables: 
		outerContext: 	[ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			cl...etc...
		startpc: 	124
		numArgs: 	1


Context>>evaluateSignal:
	Receiver: BlockClosure>>on:do:
	Arguments and temporary variables: 
		exception: 	VOMongoConnectionError
		value: 	nil
	Receiver's instance variables: 
		sender: 	[ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
	...etc...
		pc: 	15
		stackp: 	2
		method: 	BlockClosure>>#on:do:
		closureOrNil: 	nil
		receiver: 	[ ^ aBlock value: db ]


Context>>handleSignal:
	Receiver: BlockClosure>>on:do:
	Arguments and temporary variables: 
		exception: 	VOMongoConnectionError
	Receiver's instance variables: 
		sender: 	[ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
	...etc...
		pc: 	15
		stackp: 	2
		method: 	BlockClosure>>#on:do:
		closureOrNil: 	nil
		receiver: 	[ ^ aBlock value: db ]



--- The full stack ---
[ 
self schedule.	"It is critical that the following has no suspension point so that
	the test and the wait primitive are atomic. In addition, if the delay
	is no longer being waited on while entering the way we know that it 
	is expired because the delay has already fired."
beingWaitedOn
	ifTrue: [ delaySemaphore wait ]
	ifFalse: [ expired := true ] ] in DelayWaitTimeout>>wait
BlockClosure>>ensure:
DelayWaitTimeout>>wait
Semaphore>>waitTimeoutMSecs:
Socket>>waitForConnectionFor:ifTimedOut:
Socket>>connectTo:port:waitForConnectionFor:
SocketStream class>>openConnectionToHost:port:timeout:
SocketStream class>>openConnectionToHost:port:
SocketStream class>>openConnectionToHostNamed:port:
GratuitousIncompatibilities class>>socketStreamHost:port:
Mongo>>open
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
 - - - - - - - - - - - - - - -  
			- - - - - - - - - - - - - - - - - -
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
VOMongoConnectionError(Exception)>>signalIn:
VOMongoConnectionError(Exception)>>resignalAs:
[ :e | 
session
	close;
	open.
e resignalAs: VOMongoConnectionError new ] in [ 
[ ^ aBlock value: db ]
	on: Error
	do: [ :e | 
		session
			close;
			open.
		e resignalAs: VOMongoConnectionError new ] ] in VOMongoSessionPool>>withDatabase:
BlockClosure>>cull:
Context>>evaluateSignal:
Context>>handleSignal:
-- and more not shown ---------------------------------------------------------------------------------

Reply via email to